commit 002e8bc31af1c101c7e748f075a9467018c63b61 Author: Achim Gsell Date: Mon Sep 11 20:18:56 2006 +0000 repo migration diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..7c83d80 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,180 @@ +* text=auto !eol +/AUTHORS -text +/COPYRIGHT -text +/ChangeLog -text +/GNUmakefile.orig -text +H5Fed/applications/gmsh2h5fed.cc -text +H5Fed/applications/gmsh2h5fed.hh -text +H5Fed/applications/makefile.am -text +H5Fed/autogen.sh -text +H5Fed/configure.ac -text +H5Fed/grids/cube0.geo -text +H5Fed/grids/cube0.msh -text +H5Fed/grids/cubeincube.geo -text +H5Fed/grids/cubeincube.msh -text +H5Fed/grids/sphere.geo -text +H5Fed/grids/sphere.msh -text +H5Fed/libsrc/gmsh/gmsh.cc -text +H5Fed/libsrc/gmsh/gmsh.hh -text +H5Fed/libsrc/gmsh/gmshconst.hh -text +H5Fed/libsrc/gmsh/gmshgrammar.hh -text +H5Fed/libsrc/gmsh/gmshsemanticaction.hh -text +H5Fed/libsrc/gmsh/makefile.am -text +H5Fed/libsrc/h5fed/h5fed.cc -text +H5Fed/libsrc/h5fed/h5fed.hh -text +H5Fed/libsrc/h5fed/h5fedconst.hh -text +H5Fed/libsrc/h5fed/makefile.am -text +H5Fed/libsrc/makefile.am -text +H5Fed/libsrc/stdincl/nonsciconst.h -text +H5Fed/libsrc/stdincl/physicomath.h -text +H5Fed/makefile.am -text +/Makefile.am -text +/Makefile.orig -text +/NEWS -text +/README -text +/autogen.sh -text +/config.guess -text +/config.h.in -text +/config.sub -text +/configure.ac -text +/depcomp -text +doc/2006-Berkeley-Visit/BethelSAP_1page-4.doc -text +doc/2006-Berkeley-Visit/H5Part.ppt -text +doc/2006-Berkeley-Visit/H5xxx.ppt -text +doc/2006-Berkeley-Visit/H5xxxVisIt.fig -text +doc/2006-Berkeley-Visit/SAP-Combined-v6.doc -text +doc/2006-Berkeley-Visit/aqpsi2006mar22.pdf -text +doc/2006-Berkeley-Visit/hdf.ps -text +doc/Building.html -text +doc/BuildingHDF5.html -text +doc/Downloading.html -text +doc/Doxyfile -text +doc/H5PartExpress.html -text +doc/H5PartIDL.html -text +doc/H5PartParaview.html -text +doc/H5PartTools.html -text +doc/H5PartVisIt.html -text +doc/H5PartVisIt/cloud_visit.png -text +doc/H5PartVisIt/cloud_visit.s.png -text +doc/H5PartVisIt/cloud_visit_2D.png -text +doc/H5PartVisIt/cloud_visit_2D.s.png -text +doc/H5PartVisIt/visit_query1.png -text +doc/H5PartVisIt/visit_query1.s.png -text +doc/H5tools/H5tools.htm -text +doc/H5tools/H5tools_files/snapshot1.jpg -text +doc/H5xxx/H5xxx.tex -text +doc/H5xxx/JAC2003.cls -text +doc/H5xxx/makefile -text +doc/InternalLayout.html -text +doc/ReferencePages/H5PartF_8c.html -text +doc/ReferencePages/H5Part_8c.html -text +doc/ReferencePages/H5Part_8h-source.html -text +doc/ReferencePages/H5Part_8h.html -text +doc/ReferencePages/annotated.html -text +doc/ReferencePages/doxygen.css -text +doc/ReferencePages/doxygen.png -text +doc/ReferencePages/files.html -text +doc/ReferencePages/functions.html -text +doc/ReferencePages/functions_vars.html -text +doc/ReferencePages/globals.html -text +doc/ReferencePages/globals_defs.html -text +doc/ReferencePages/globals_func.html -text +doc/ReferencePages/globals_type.html -text +doc/ReferencePages/index.html -text +doc/ReferencePages/structH5IO__getname__t-members.html -text +doc/ReferencePages/structH5IO__getname__t.html -text +doc/ReferencePages/structH5PartFile-members.html -text +doc/ReferencePages/structH5PartFile.html -text +doc/UsingC.html -text +doc/UsingF.html -text +doc/collision_6.png -text +doc/collision_6.s.png -text +doc/h5part.html -text +doc/hdf5.pdf -text +doc/layout.png -text +/install-sh -text +/license.txt -text +/missing -text +/rules.make -text +src/H5Part++.cc -text +src/H5Part++.hh -text +src/H5Part.c -text +src/H5Part.cc -text +src/H5Part.h -text +src/H5Part.hh -text +src/H5Part.inc -text +src/H5PartF.c -text +src/H5PartPrivate.h -text +src/H5PartTypes.h -text +src/Makefile.am -text +src/TestUnderscore.f -text +src/TestUnderscoreC.c -text +src/addToDoxygenMainPage.h -text +test/Bench.c -text +test/H5ParallelTest.cc -text +test/H5PartAndreasTest.cc -text +test/H5PartTest.cc -text +test/H5PartTestParallel.cc -text +test/H5ecloudExample.cc -text +test/H5test.cc -text +test/H5testF.f -text +test/H5testFpar.f -text +test/Makefile.am -text +tools/Makefile.am -text +tools/README -text +tools/h5pAttrib.cc -text +tools/h5pToGNUplot.cc -text +tools/h5pToGNUplot.py -text +visit_plugins/databases/H5Part/.depend -text +visit_plugins/databases/H5Part/Makefile -text +visit_plugins/databases/H5Part/README.txt -text +visit_plugins/databases/H5Part/avth5partFileFormat.C -text +visit_plugins/databases/H5Part/avth5partFileFormat.h -text +visit_plugins/databases/H5Part/h5part.xml -text +visit_plugins/databases/H5Part/h5partCommonPluginInfo.C -text +visit_plugins/databases/H5Part/h5partEnginePluginInfo.C -text +visit_plugins/databases/H5Part/h5partMDServerPluginInfo.C -text +visit_plugins/databases/H5Part/h5partPluginInfo.C -text +visit_plugins/databases/H5Part/h5partPluginInfo.h -text +visit_plugins/operators/BinnerFilter/.depend -text +visit_plugins/operators/BinnerFilter/Binner.xml -text +visit_plugins/operators/BinnerFilter/BinnerCommonPluginInfo.C -text +visit_plugins/operators/BinnerFilter/BinnerEnginePluginInfo.C -text +visit_plugins/operators/BinnerFilter/BinnerFilter.C -text +visit_plugins/operators/BinnerFilter/BinnerFilter.h -text +visit_plugins/operators/BinnerFilter/BinnerFilter.java -text +visit_plugins/operators/BinnerFilter/BinnerGUIPluginInfo.C -text +visit_plugins/operators/BinnerFilter/BinnerMakefile -text +visit_plugins/operators/BinnerFilter/BinnerPluginInfo.C -text +visit_plugins/operators/BinnerFilter/BinnerPluginInfo.h -text +visit_plugins/operators/BinnerFilter/BinnerScriptingPluginInfo.C -text +visit_plugins/operators/BinnerFilter/BinnerViewerPluginInfo.C -text +visit_plugins/operators/BinnerFilter/Binnerreplace.txt -text +visit_plugins/operators/BinnerFilter/Makefile -text +visit_plugins/operators/BinnerFilter/PyBinner.C -text +visit_plugins/operators/BinnerFilter/PyBinner.h -text +visit_plugins/operators/BinnerFilter/QvisBinnerWindow.C -text +visit_plugins/operators/BinnerFilter/QvisBinnerWindow.h -text +visit_plugins/operators/BinnerFilter/avtBinnerFilter.C -text +visit_plugins/operators/BinnerFilter/avtBinnerFilter.h -text +visit_plugins/operators/BinnerFilter/icon.xpm -text +visit_plugins/operators/RandomSample/.depend -text +visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.C -text +visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.h -text +visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.java -text +visit_plugins/operators/RandomSample/H5PartRandomSampleCommonPluginInfo.C -text +visit_plugins/operators/RandomSample/H5PartRandomSampleEnginePluginInfo.C -text +visit_plugins/operators/RandomSample/H5PartRandomSampleGUIPluginInfo.C -text +visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.C -text +visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.h -text +visit_plugins/operators/RandomSample/H5PartRandomSampleScriptingPluginInfo.C -text +visit_plugins/operators/RandomSample/H5PartRandomSampleViewerPluginInfo.C -text +visit_plugins/operators/RandomSample/Makefile -text +visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.C -text +visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.h -text +visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.C -text +visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.h -text +visit_plugins/operators/RandomSample/RandomSample.xml -text +visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.C -text +visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.h -text +visit_plugins/operators/RandomSample/icon.xpm -text diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..7257f49 --- /dev/null +++ b/AUTHORS @@ -0,0 +1,10 @@ + +Andreas Adelmann (PSI) +Achim Gsell (PSI) +Benedikt Oswald (PSI) + +Wes Bethel (NERSC/LBNL) +John Shalf (NERSC/LBNL) +Cristina Siegerist (NERSC/LBNL) + +Please use h5part@lists.psi.ch for communicaion. diff --git a/COPYRIGHT b/COPYRIGHT new file mode 100644 index 0000000..e147f6b --- /dev/null +++ b/COPYRIGHT @@ -0,0 +1,7 @@ +*** Copyright Notice *** + +H5Part Copyright (c) 2006, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy) and the Paul Scherrer Institut (Switzerland). All rights reserved. + +If you have questions about your rights to use or distribute this software, please contact Berkeley Lab's Technology Transfer Department at TTD@lbl.gov referring to "H5Part (LBNL Ref CR-2255)" + +NOTICE. This software was developed under partial funding from the U.S. Department of Energy. As such, the U.S. Government has been granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, prepare derivative works, and perform publicly and display publicly. Beginning five (5) years after the date permission to assert copyright is obtained from the U.S. Department of Energy, and subject to any subsequent five (5) year renewals, the U.S. Government is granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, prepare derivative works, distribute copies to the public, perform publicly and display publicly, and to permit others to do so. diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..e69de29 diff --git a/GNUmakefile.orig b/GNUmakefile.orig new file mode 100755 index 0000000..cc93c77 --- /dev/null +++ b/GNUmakefile.orig @@ -0,0 +1,133 @@ +UNAME := $(shell uname | perl -pe 's/(sn\d\d\d\d|jsimpson)/UNICOS\/mk/') +# for host specific options +HOST := $(shell hostname) + +# for processor-specific options +ifeq ($(UNAME), Linux) +PROC := $(shell uname -p) +endif + +CXX = c++ +CC = cc +H5HOME = /usr/local/hdf5 +CFLAGS = -g -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm + +# MacOS-X Serial +ifeq ($(UNAME), Darwin) +ifeq ($(PARALLEL), yes) +CXX = g++ +CC = mpicc +H5HOME = /usr/local +CFLAGS = -O -g -I$(H5HOME)/include -DPARALLEL_IO +LDFLAGS = -L$(H5HOME)/lib -lmpich -lpmpich -lhdf5 -lz -lm +else +CXX = c++ +CC = cc +F90 = xlf +H5HOME = /usr/local +CFLAGS = -O -g -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm +endif +endif + +# SGI MIPS/Irix +ifeq ($(UNAME), IRIX64) +CXX = CC +CC = cc +F90 = f90 +ifeq ($(PARALLEL), yes) +H5HOME = $(HDF5_DIR) +CFLAGS = -64 -O3 -I$(H5HOME)/include -DPARALLEL_IO +LDFLAGS = -64 -O3 -L$(H5HOME)/lib -lhdf5 -lz -lmpi -lm +else +H5HOME = /usr/local +CFLAGS = -O3 -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm +endif +endif + +# AIX/SP-2 Parallel/serial : Seaborg +ifeq ($(UNAME), AIX) +ifeq ($(PARALLEL), yes) # parallel +CXX = mpCC_r +CC = mpxlc_r +# H5HOME = /usr/common/usg/hdf5_64/1.4.5-post2/parallel +H5HOME = /usr/common/usg/hdf5_64/1.6.1/parallel +# /usr/common/usg/hdf5/1.4.4/parallel +H4HOME = /usr/common/usg/hdf/default +OPT = -qarch=auto -qtune=auto-qcache=auto -O3 -qhot +CFLAGS = -q64 -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -L$(H4HOME)/lib -lz -lsz -lm +else # serial +CXX = xlC +CC = xlc +H5HOME = /usr/common/usg/hdf5/1.4.4/serial +H4HOME = /usr/common/usg/hdf/default +OPT = -qarch=auto -qtune=auto-qcache=auto -O3 -qhot +CFLAGS = -g -bmaxdata:800000000 -bmaxstack:256000000 -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -L$(H4HOME)/lib -lz -lm +endif +endif + +# Linux +ifeq ($(UNAME), Linux) +# if this machine is NERSC/Davinci Altix system +ifeq ($(PROC), ia64) +CC = icc +CXX = icc + +ifeq ($(PARALLEL), yes) +# IA64 Linux Parallel +ifeq ($(HOST), davinci) +H5HOME = $(HDF5_PAR) +MPILIB = -lmpi +else +H5HOME = /usr/local +HDF5_PAR_LIB = -L$(H5HOME)/lib -lhdf5 -lz -lm +HDF5_PAR_INCLUDE = -I$(H5HOME)/include +MPIHOME = /usr/local +MPILIB = -lmpich +endif # HOST +CFLAGS = -O3 -DPARALLEL_IO -DH5_HAVE_PARALLEL $(HDF5_PAR_INCLUDE) +LDFLAGS = $(HDF5_PAR_LIB) $(MPILIB) +else # IA64 Linux Serial +CFLAGS = -O3 $(HDF5_INCLUDE) +LDFLAGS = $(HDF5_LIB) -lm +endif # PARALLEL + +# else this is standard IA32 linux +else +ifeq ($(PARALLEL), yes) +# Linux Parallel +CC = gcc +CXX = g++ +H5HOME = /usr/local +MPIHOME = /usr/local +CFLAGS = -O -g -DPARALLEL_IO -DH5_HAVE_PARALLEL -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lmpich -lrt -lz -lm +else # Linux Serial +CXX = g++ +CC = gcc +CFLAGS = -O -g -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm +endif # !PARALLEL +endif # PROC!ia64 + +endif # !Linux + +ifeq ($(PARALLEL), yes) #parallel +ifdef F90 +all: H5PartTest H5PartTest.o H5Part.o H5PartTestParallel H5PartAndreasTest H5PartF.o +else +all: H5PartTest H5PartTest.o H5Part.o H5PartTestParallel H5PartAndreasTest +endif +else +ifdef F90 +all: H5PartTest H5PartTest.o H5Part.o H5PartF.o +else +all: H5PartTest H5PartTest.o H5Part.o +endif +endif + +include rules.make diff --git a/H5Fed/applications/gmsh2h5fed.cc b/H5Fed/applications/gmsh2h5fed.cc new file mode 100644 index 0000000..03e90ee --- /dev/null +++ b/H5Fed/applications/gmsh2h5fed.cc @@ -0,0 +1,427 @@ +// rights - 2006-, copyright patrick leidenberger and benedikt oswald, +// all rights reserved +// project - gmsh2h5fed +// file name - gmsh2h5fed.cc +// file type - c++ implementaton file +// objective - main file for the gmsh to hdf5fed converter +// modified - 2006 jun 26, creation, patrick leidenberger +// modified - 2006 aug 25, extend, patrick leidenberger +// modified - 2006 aug 26, pl, integrate automatic index mapping. +// +// feature - Implements the a mesh preprocessor. +// feature - It will read gmsh's mesh files of version 2.0 and write the mesh +// feature - into an HDF5/FiniteElementData file. +// required software - rlog library, boost library + +#include + +using namespace rlog; + +int main(int argc, char **argv) +{ + //=================// + // Initialize RLog // + //=================// + // Make a instance of the class for RLog. + StdioNode stdLog; + + /** Subscchar* inFile_;ribe output channels. + * Compile with -DRLOG_DEBUG to get the debug output. + **/ + #ifdef USE_RLOG_DEBUG_CHANNEL + stdLog.subscribeTo(GetGlobalChannel("debug")); + #endif //USE_RLOG_DEBUG_CHANNEL + #ifdef USE_RLOG_ERROR_CHANNEL + stdLog.subscribeTo(GetGlobalChannel("error")); + #endif //USE_RLOG_ERROR_CHANNEL + #ifdef USE_RLOG_INFO_CHANNEL + stdLog.subscribeTo(GetGlobalChannel("info")); + #endif //USE_RLOG_INFO_CHANNEL + #ifdef USE_RLOG_WARNING_CHANNEL + stdLog.subscribeTo(GetGlobalChannel("warning")); + #endif //USE_RLOG_WARNING_CHANNEL + + // Define variables that hold the command line parameters. + string gmshInputFile; + string hdf5fedOutputFile; + bool writeFileForce = false; + + //==================================================// + // Parse the comand line options // + // with the program_options from the boost library. // + //==================================================// + try + { + // Define and instance of the program_options class and name it. + boost::program_options::options_description + desc("Allowed program options"); + // Define the command line options parsing rules. + desc.add_options() + ("help", "produce this help") + ("input-file", boost::program_options::value(), + "gmsh v2.0 input file") + ("output-file", boost::program_options::value(), + "hdf5fed output file") + ("force", "if output file already exists, overwrite"); + // Parse the command line. + boost::program_options::variables_map varMap; + boost::program_options::store + (boost::program_options::parse_command_line(argc, argv, desc), + varMap); + boost::program_options::notify(varMap); + // Action in relation to the command line options. + if (varMap.count("help")) + { + cout << desc << "\n"; + return ERRORCODE; + } + else if ((varMap.count("input-file")) + && (varMap.count("output-file"))) + { + gmshInputFile = varMap["input-file"].as(); + hdf5fedOutputFile = varMap["output-file"].as(); + rInfo("Input filename: %s", + gmshInputFile.c_str()); + rInfo("Output filename: %s", + hdf5fedOutputFile.c_str()); + // Check it --force is set. + // --force writes the output file, if the file already exists. + if (varMap.count("force")) + writeFileForce = true; + else + writeFileForce = false; + } + else + { + rError("You have insert wrong options."); + rError("For details use: --help."); + return ERRORCODE; + } + } + catch(exception& error) + { + rError("Error: %d",error.what()); + return ERRORCODE; + } + + //==========================// + // Start with the main work // + //==========================// + //---------------------------------------// + // Variables for the data form gmsh file // + //---------------------------------------// + // Variable for the gmsh nodes. + std::vector > gmshNodes; + gmshNodes.clear(); + // Vector for the gmshs nodes index. + std::vector gmshNodesIndex; + gmshNodesIndex.clear(); + // Vector for the gmshs tetrahedrons. + std::vector > gmshTetrahedron; + gmshTetrahedron.clear(); + // Vector for the gmshs tetrahedrons. + std::vector > gmshTetrahedronTag; + gmshTetrahedronTag.clear(); + + // Make an instance of the vtk class. + gmsh gmshInFile; + + // Set the file name of the input file + gmshInFile.gmshFileName(gmshInputFile); + + // Open the gmsh mesh file, write the content to a string and close the + // file. + gmshInFile.gmshOpen(); + + // Parse the gmsh mesh file. + gmshInFile.gmshParseFile(&gmshInFile); + + // Get a vector with all node coordinates from the gmsh file. + gmshNodes = gmshInFile.gmshNode(); + + // Put all H5Fed funktions in here. + #ifdef HAVE_HDF5 + // Create H5Fed class instance. + H5Fed::H5Fed h5fedFile; + + // Open H5Fed file for writing. Filename and file write access comes + // from command line parameters. + if (writeFileForce == false) + h5fedFile.open(hdf5fedOutputFile,FILE_CREATE); + else + h5fedFile.open(hdf5fedOutputFile,FILE_CREATE_FORCE); + + // Create the group hierarchie in the hdf5fed file. + h5fedFile.createGroupHierarchie(); + + // Get the gmsh node index vector + gmshNodesIndex = gmshInFile.gmshNodeNumber(); + + // The gmsh node index has gaps and is not consecutive. + // So we activate the automatic index mapping from the h5fed api. + h5fedFile.beginIndexMapping(&gmshNodesIndex); + + // Get a vector with all node coordinates from the gmsh file. + gmshNodes = gmshInFile.gmshNode(); + // Write the nodes to the h5fed file. + h5fedFile.coord3d(&gmshNodes); + // Every node in h5fed file, so we can save memory. + gmshNodes.clear(); + + //Get a vector with all tetrahedrons from gmsh file. + gmshTetrahedron = gmshInFile.gmshTetrahedron(); + for(int varI = 0; varIvtkVersion(); + +//gmshInFile.vtkVersion(); + + // This vector is used in loops to transport datas from vtk to ristream. + vector dataVector1; +/* + // Scaling factor for the vtk input data. + double scale = 15.0; + ristream rib; + // Set the filname of the .rib file. + rib.RibsFile(ribOutputFile); + rib.openRibs(); + rib.RibsFormat(1024,768); + rib.RibsLightSource("distantlight"); + rib.RibsProjection("perspective"); + //rib.RibsProjection("orthographic"); + + // Give the center or the rotation. + double rotCenterX = 0.0; + double rotCenterY = 0.0; + double rotRadius = 1.6; + double cameraPosX = sqrt(3.92); // Only the camera postion if nLoop = 1; + double cameraPosY = 0; + cameraPosX = 1; // Only the camera postion if nLoop = 1; + cameraPosY = -1; + + char filename[20]; + + const int nLoop = 1; + for(int i = 0; i 1) + { + cameraPosX = -rotRadius*cos(2*PI*i/(double)nLoop) + rotCenterX; + cameraPosY = -rotRadius*sin(2*PI*i/(double)nLoop) + rotCenterY; + } + + rib.RibsFrameBegin(); + // Set the file name for the renderer output image. + string tempstring = ""; + tempstring = "tests/movie_data/Hallo"; + //tempstring.append("%d.tiff",i); + //tempstring.append((string)i); + tempstring.append(".tiff"); + //sprintf ( tempchar ,"tests/movie_data/Hallo%d.tiff",i ); +// rib.RibsFrameFilename(""); + rib.RibsDisplay(frameName); + + rDebug(tempstring.c_str()); + + // Camera Position and orientation: + // The default camera postion is the world coordinate origin and it + // looks in the -z-direction. + + // The function RibsPlaceCamera set the position of the camera in world + // coordinates and the point, where to look at in world coordinates. + // To get a skew view, you can roll the camera. + // This function must be called befor RibsWorldBegin! + rib.RibsPlaceCamera(1.5*cameraPosX, 1.5*cameraPosY, 2.0, // position + 0.0, 0.0, 1.2, // look-at point + 0.0) ; // roll angle (in degree) + + rib.RibsWorldBegin(); + rib.RibsSurface("plastic"); + rib.RibsCoordinateSystem(); + + //Write all vktCells_ with cell types and cell points on the screen. + //rDebug("getVtkCellTypesN(): %d", gmshInFile.getVtkCellTypesN()); + for (int i = 0; i<(gmshInFile.getVtkCellTypesN()); i++) + { + // Look if there is a thetrahedron. + if (gmshInFile.getVtkCellType(i) == 10) + { + // Clear the data structur to save the point cooridnates temporal. + dataVector1.clear(); + + // Read the points of a tetrahedron. + //rDebug("getVtkCellPointN(%d): %d", i, gmshInFile.getVtkCellPointN(i)); + for (int j = 0; j<(gmshInFile.getVtkCellPointN(i)); j++) + { + int tempInt = gmshInFile.getVtkCellPoint(i,j); + dataVector1.push_back(gmshInFile.getVtkVec(tempInt, 0)); + dataVector1.push_back(gmshInFile.getVtkVec(tempInt, 1)); + dataVector1.push_back(gmshInFile.getVtkVec(tempInt, 2)); + //rDebug("vtkPoint: %d, %f %f %f", tempInt, + // gmshInFile.getVtkVec(tempInt, 0), + // gmshInFile.getVtkVec(tempInt, 1), + // gmshInFile.getVtkVec(tempInt, 2)); + + } + rib.RibsColor(0.0,0,1.0,1.0); + rib.RibsTetrahedron(scale*dataVector1[0], scale*dataVector1[1], scale*dataVector1[2], + scale*dataVector1[3], scale*dataVector1[4], scale*dataVector1[5], + scale*dataVector1[6], scale*dataVector1[7], scale*dataVector1[8], + scale*dataVector1[9], scale*dataVector1[10],scale*dataVector1[11], + 0.8); + } + } +*/ +/* + rib.RibsColor(1.0,0,0,0.6); + rib.RibsTetrahedron(0.3, 0.3, 0.0, + 2.0, 0.3, 0.0, + 0.3, 2.0, 0.0, + 0.3, 0.3, 0.5, + 1.0); + rib.RibsColor(0,1.0,0,0.7); + rib.RibsTetrahedron(0.3, 0.3, 0.0, + 2.0, 0.3, 0.0, + 0.3, 2.0, 0.0, + 0.3, 0.3, 0.5, + 0.6); + + rib.RibsColor(0.0,0,1.0,1.0); + rib.RibsTetrahedron(0.3, 0.3, 0.0, + 2.0, 0.3, 0.0, + 0.3, 2.0, 0.0, + 0.3, 0.3, 0.5, + 0.3); +*/ +// rib,RibsAxes(); +// rib.RibsVector(0,0,0,0.5); +/* + rib.RibsWorldEnd(); + rib.RibsFrameEnd(); + } + rib.closeRibs(); +*/ +// return(0); +} + diff --git a/H5Fed/applications/gmsh2h5fed.hh b/H5Fed/applications/gmsh2h5fed.hh new file mode 100644 index 0000000..0c5c725 --- /dev/null +++ b/H5Fed/applications/gmsh2h5fed.hh @@ -0,0 +1,69 @@ +// rights - 2006-, copyright benedikt oswald and patrick leidenberger, all rights reserved +// project - phidias3d +// file name - phidias3d.h +// file type - c++ header file +// objective - header file for the phidias3d visualization postprocessor +// modified - 2006 jun 26, creation, benedikt oswald +// modified - 2006 jun 28, +// modified - 2006 jul 30, Add include for command line argument parser +// with boost::program_options, pl. +// inheritance - +// feature - implements the phidias3d visualization postprocessor; the features +// feature - will be (1) read VTK legacy formatted files (2) read HDF5/ELECTROMAGNETIC +// feature - structures files (3) export VTK legacy formatted files (4) export +// feature - data, both meshes and fields, throught the Renderman Interface +// feature - routines. +// required software - + + +/* include standard header files */ +#include +#include +#include +#include +#include +#include +#include + +/* Include the files for rlog. */ +#include +#include +#include +#include +#include +// Include this if you want to log the time. +#include + +// Include the boost program program_options to parse the comand line +// options. +#include + + +/* include standard proprietary header files */ +#include +#include +//#include +#include + +// Include the Hdf5FiniteElementData API. +#ifdef HAVE_HDF5 + // Include the Hdf5FiniteElementData API. + #include + // Include h5fed specific constants. + #include +#else + #warning No hdf5 lib found!! +#endif + + + +#ifndef PHIDIAS3D_H_ +#define PHIDIAS3D_H_ + +using namespace physicomath; +using namespace nonsciconst; +using namespace gmshtohdf5fed; + + + +#endif /*PHIDIAS3D_H_*/ diff --git a/H5Fed/applications/makefile.am b/H5Fed/applications/makefile.am new file mode 100644 index 0000000..48842ef --- /dev/null +++ b/H5Fed/applications/makefile.am @@ -0,0 +1,26 @@ +## Makefile.am -- process this file with automake to produce Makefile.in +## +## authors - benedikt oswald and patrick leidenberger +## modified - 2006 aug 21, patrick leidenberger, creation +## modified - 2006 aug 23, pl, adaped to changed directory structure. +## modified - 2006 aug 25, pl, adaped to changed directory structure. +# +## objective - automake input file for the gmsh directory +## project - gmsh2h5fed + +noinst_PROGRAMS = gmsh2h5fed + +gmsh2h5fed_SOURCES = gmsh2h5fed.cc +gmsh2h5fed_DEPENDENCIES = ../libsrc/stdincl/nonsciconst.h \ + ../libsrc/stdincl/physicomath.h \ + ../libsrc/gmsh/gmsh.hh \ + ../libsrc/gmsh/gmsh.cc \ + ../libsrc/gmsh/gmshconst.hh \ + ../libsrc/gmsh/gmshgrammar.hh \ + ../libsrc/gmsh/gmshsemanticaction.hh \ + ../libsrc/h5fed/h5fed.hh \ + ../libsrc/h5fed/h5fed.cc + +gmsh2h5fed_LDADD = @GMSH2H5FED_LIBS@ + +#AM_CPPFLAGS = @AM_CPPFLAGS@ diff --git a/H5Fed/autogen.sh b/H5Fed/autogen.sh new file mode 100755 index 0000000..5baebfd --- /dev/null +++ b/H5Fed/autogen.sh @@ -0,0 +1,10 @@ +libtoolize -f && \ +aclocal && \ +autoconf && \ +autoheader && \ +automake --add-missing && \ +CC='mpicc' F9X='mpif90' CXX='mpiCC' ./configure --with-rlog=$HOME/extlib/rlog-1.3.7 --with-boost='' --with-hdf5=$HOME/extlib/hdf5-1.6.5 &&\ +make clean && \ +make all + + diff --git a/H5Fed/configure.ac b/H5Fed/configure.ac new file mode 100644 index 0000000..faa1d36 --- /dev/null +++ b/H5Fed/configure.ac @@ -0,0 +1,106 @@ +## Process this file with autoconf to produce a configure script +## +## author - benedikt oswald and patrick leidenberger +## modified - 2006 aug 21, pl, creation. +## modified - 2006 aug 24, pl, add h5fed path. +## +## to do : The rlog lib needs a -DRLOG_COMPONENT="some name", I don't know +## how tho do this so that the quotation marks are in the output +## stream as well, pl, 2006 jul 04. +## +## objective - develop input file for GNU autotools/configure +## project - H5Fed +## + +AC_PREREQ(2.59) +AC_COPYRIGHT([This configure script is copyright by Benedikt Oswald and Patrick Leidenberger, 2006]) + +AC_INIT([gmshtohdf5fed], [1.0], [in case of problems mail to: benedikt.oswald@psi.ch or patrick.leidenberger@psi.ch]) + +# library creation +AC_PROG_LIBTOOL + +# standard macros +AC_CONFIG_AUX_DIR(./) +AM_INIT_AUTOMAKE +AC_CONFIG_HEADER([./config.h:./config.in]) + +# set cppflags to zero +CPPFLAGS="" +CFFLAGS="" +CXXFLAGS="" + +# provide include directories +AC_SUBST([AM_CPPFLAGS], '-I$(top_srcdir)/libsrc/stdincl -I$(top_srcdir)/libsrc/gmsh -I$(top_srcdir)/libsrc/h5fed') +AC_SUBST([GMSH2H5FED_LIBS],'$(top_srcdir)/libsrc/gmsh/libgmsh.la $(top_srcdir)/libsrc/h5fed/libh5fed.la') + +# Make available external libraries +AC_ARG_WITH(boost, + AC_HELP_STRING([--with-boost=PREFIX], + [prefix where the Boost libraries and include files are to be found]), + [BOOST_PREFIX=$withval + LDFLAGS="-lz -lboost_program_options "]) + +AC_ARG_WITH(rlog, + AC_HELP_STRING([--with-rlog=PREFIX], + [prefix where the rlog libraries and include files are to be found]), + [RLOG_PREFIX=$withval + CPPFLAGS="-I"$RLOG_PREFIX"/include "${CPPFLAGS} + LDFLAGS=$RLOG_PREFIX"/lib/librlog.la "${LDFLAGS}]) + +AC_ARG_ENABLE(rlog-debug, + AC_HELP_STRING([--disable-rlog-debug], + [disable the debug output channel of rlog]), + [], + [CFFLAGS="-DUSE_RLOG_DEBUG_CHANNEL "${CFFLAGS} + CXXFLAGS="-DUSE_RLOG_DEBUG_CHANNEL "${CXXFLAGS}]) + +AC_ARG_ENABLE(rlog-error, + AC_HELP_STRING([--disable-rlog-error], + [disable the error output channel of rlog]), + [], + [CFFLAGS="-DUSE_RLOG_ERROR_CHANNEL "${CFFLAGS} + CXXFLAGS="-DUSE_RLOG_ERROR_CHANNEL "${CXXFLAGS}]) + +AC_ARG_ENABLE(rlog-info, + AC_HELP_STRING([--disable-rlog-info], + [disable the info output channel of rlog]), + [], + [CFFLAGS="-DUSE_RLOG_INFO_CHANNEL "${CFFLAGS} + CXXFLAGS="-DUSE_RLOG_INFO_CHANNEL "${CXXFLAGS}]) + +AC_ARG_ENABLE(rlog-warning, + AC_HELP_STRING([--disable-rlog-warning], + [disable the warning output channel of rlog]), + [], + [CFFLAGS="-DUSE_RLOG_WARNING_CHANNEL "${CFFLAGS} + CXXFLAGS="-DUSE_RLOG_WARNING_CHANNEL "${CXXFLAGS}]) + +AC_ARG_WITH(hdf5, + AC_HELP_STRING([--with-hdf5=PREFIX], + [prefix to hdf5 libraries and include files]), + [HDF5_PREFIX=$withval + CPPFLAGS="-DHAVE_HDF5 -I"$HDF5_PREFIX"/include "${CPPFLAGS} + LDFLAGS="-L"$HDF5_PREFIX"/lib -lhdf5 "${LDFLAGS}]) +# LDFLAGS=$HDF5_PREFIX"/lib/libhdf5.la "${LDFLAGS}]) + + +# Set C/C++ compiler flags. +CPPFLAGS=${CPPFLAGS} +CFFLAGS="-g3 "${CFFLAGS} +CXXFLAGS="-g3 "${CXXFLAGS} + +AM_INIT_AUTOMAKE([1.9 foreign]) + +AC_PROG_CC +AC_PROG_MAKE_SET +AC_PROG_INSTALL([install]) + +AC_CONFIG_FILES([makefile + applications/makefile + libsrc/makefile + libsrc/gmsh/makefile + libsrc/h5fed/makefile]) + + +AC_OUTPUT diff --git a/H5Fed/grids/cube0.geo b/H5Fed/grids/cube0.geo new file mode 100644 index 0000000..2c54ffa --- /dev/null +++ b/H5Fed/grids/cube0.geo @@ -0,0 +1,114 @@ +// rights - 2002-2005, benedikt oswald, +// project - aq +// file name - cube0.geo +// file type - GMSH script file +// objective - model cube fundamental cube +// modified - 2005 jan 25, benedikt oswald, creation +// modified - 2005 jan 25, benedikt oswald, added background hexahedron, subsurface hexahedron +// modified - 2005 feb 01, benedikt oswald, adapted to the simple.geo problem +// modified - 2005 mar 08, benedikt oswald, adapted to the cube in cube geometry +// modified - 2005 mar 22, benedikt oswald, adapted to model fundamental cube +// inheritance - +// feature - models fundamental cube, used for benchmark calculations of a Hertzian dipole +// feature - radiating into free space; the model uses standard physical domain tags; + + +// 1 modeling constants + +lcl1=0.50; // characteristic length in fractions of lambda@1 GHz for air domain +lcl2=0.50; // characteristic length in fractions of lambda@1 GHz for air domain + +lambda=0.30; // wavelength of electromagntic wave at a frequency of 1 GHz + +lx=2.0; // x dim of computational domain +ly=2.0; // y dim of computational domain +lz=2.0; // z dim of computational domain + +cx=0.5*lx; // calculate center of computational domain +cy=0.5*ly; // calculate center of computational domain +cz=0.5*lz; // calculate center of computational domain + + +// 1.2 Define physical material domains + +vacuum=609; // physical entity vacuum +air=709; // physical entity air +subsurface=809; // physical entity subsurface +pml=1301; // physical entity pml material +icelens=4001; // physical entity icelens +vacuum_background_bnd=12701; // boundary to background, i.e. vacuum +interelement_bnd=12702; // interior boundary, separating different material domains + + + +// 2 Define cubes +// 2.1.1 Define points of cube + +p0=newp; Point(p0) = {0.0, 0.0, 0.0, lambda * lcl1}; +p1=newp; Point(p1) = { lx, 0.0, 0.0, lambda * lcl1}; +p2=newp; Point(p2) = { lx, ly, 0.0, lambda * lcl1}; +p3=newp; Point(p3) = {0.0, ly, 0.0, lambda * lcl1}; +p4=newp; Point(p4) = {0.0, 0.0, lz, lambda * lcl1}; +p5=newp; Point(p5) = { lx, 0.0, lz, lambda * lcl1}; +p6=newp; Point(p6) = { lx, ly, lz, lambda * lcl1}; +p7=newp; Point(p7) = {0.0, ly, lz, lambda * lcl1}; + +// 2.1.3 Define lines of cube + +// lower xy plane +li0=newl; Line(li0) = {p0,p1}; +li1=newl; Line(li1) = {p1,p2}; +li2=newl; Line(li2) = {p2,p3}; +li3=newl; Line(li3) = {p3,p0}; + +// upper xy plane +li4=newl; Line(li4) = {p4,p5}; +li5=newl; Line(li5) = {p5,p6}; +li6=newl; Line(li6) = {p6,p7}; +li7=newl; Line(li7) = {p7,p4}; + +// vertical lines +li8=newl; Line(li8) = {p0,p4}; +li9=newl; Line(li9) = {p1,p5}; +li10=newl; Line(li10) = {p2,p6}; +li11=newl; Line(li11) = {p3,p7}; + + +// 2.1.5 Define line 6 line loops for the 6 faces of the cube + +lloop0= newreg; Line Loop(lloop0) = { li0, li1, li2, li3}; +lloop1= newreg; Line Loop(lloop1) = { li4, li5, li6, li7}; + +lloop2= newreg; Line Loop(lloop2) = { li0, li9, -li4, -li8 }; +lloop3= newreg; Line Loop(lloop3) = { li1, li10, -li5, -li9}; + +lloop4= newreg; Line Loop(lloop4) = { li2, li11, -li6, -li10}; +lloop5= newreg; Line Loop(lloop5) = { li3, li8, -li7, -li11}; + + +// 2.1.7 define plane surfaces for the cube + +s0=news; Plane Surface(s0) = {lloop0}; +s1=news; Plane Surface(s1) = {lloop1}; +s2=news; Plane Surface(s2) = {lloop2}; +s3=news; Plane Surface(s3) = {lloop3}; +s4=news; Plane Surface(s4) = {lloop4}; +s5=news; Plane Surface(s5) = {lloop5}; + + +// 2.1.9 Define surface loops required for volume definition of the cube + +sloop0=newreg; Surface Loop(sloop0) ={s0,s1,s2,s3,s4,s5}; + +// 2.1.10 Define volume of the cube + +v0=newv; Volume(v0) = {sloop0}; + +// 3.0 define physical entitites + +Physical Point(vacuum_background_bnd) = {p0:p7}; +Physical Line(vacuum_background_bnd) = {li0:li11}; +Physical Surface(vacuum_background_bnd) = {s0:s5}; +Physical Volume(air) = {v0}; + + diff --git a/H5Fed/grids/cube0.msh b/H5Fed/grids/cube0.msh new file mode 100644 index 0000000..4e54c24 --- /dev/null +++ b/H5Fed/grids/cube0.msh @@ -0,0 +1,21463 @@ +$MeshFormat +2 0 8 +$EndMeshFormat +$Nodes +3250 +1 0 0 0 +2 2 0 0 +3 2 2 0 +4 0 2 0 +5 0 0 2 +6 2 0 2 +7 2 2 2 +8 0 2 2 +9 0.1538461538461518 0 0 +10 0.3076923076923035 0 0 +11 0.4615384615384553 0 0 +12 0.615384615384607 0 0 +13 0.7692307692307587 0 0 +14 0.9230769230769104 0 0 +15 1.076923076923062 0 0 +16 1.230769230769214 0 0 +17 1.384615384615365 0 0 +18 1.538461538461519 0 0 +19 1.69230769230768 0 0 +20 1.84615384615384 0 0 +21 2 0.1538461538461518 0 +22 2 0.3076923076923035 0 +23 2 0.4615384615384553 0 +24 2 0.615384615384607 0 +25 2 0.7692307692307587 0 +26 2 0.9230769230769104 0 +27 2 1.076923076923062 0 +28 2 1.230769230769214 0 +29 2 1.384615384615365 0 +30 2 1.538461538461519 0 +31 2 1.69230769230768 0 +32 2 1.84615384615384 0 +33 1.846153846153848 2 0 +34 1.692307692307697 2 0 +35 1.538461538461545 2 0 +36 1.384615384615393 2 0 +37 1.230769230769241 2 0 +38 1.07692307692309 2 0 +39 0.923076923076938 2 0 +40 0.7692307692307863 2 0 +41 0.6153846153846347 2 0 +42 0.4615384615384808 2 0 +43 0.3076923076923206 2 0 +44 0.1538461538461602 2 0 +45 0 1.846153846153848 0 +46 0 1.692307692307697 0 +47 0 1.538461538461545 0 +48 0 1.384615384615393 0 +49 0 1.230769230769241 0 +50 0 1.07692307692309 0 +51 0 0.923076923076938 0 +52 0 0.7692307692307863 0 +53 0 0.6153846153846347 0 +54 0 0.4615384615384808 0 +55 0 0.3076923076923206 0 +56 0 0.1538461538461602 0 +57 0.1538461538461518 0 2 +58 0.3076923076923035 0 2 +59 0.4615384615384553 0 2 +60 0.615384615384607 0 2 +61 0.7692307692307587 0 2 +62 0.9230769230769104 0 2 +63 1.076923076923062 0 2 +64 1.230769230769214 0 2 +65 1.384615384615365 0 2 +66 1.538461538461519 0 2 +67 1.69230769230768 0 2 +68 1.84615384615384 0 2 +69 2 0.1538461538461518 2 +70 2 0.3076923076923035 2 +71 2 0.4615384615384553 2 +72 2 0.615384615384607 2 +73 2 0.7692307692307587 2 +74 2 0.9230769230769104 2 +75 2 1.076923076923062 2 +76 2 1.230769230769214 2 +77 2 1.384615384615365 2 +78 2 1.538461538461519 2 +79 2 1.69230769230768 2 +80 2 1.84615384615384 2 +81 1.846153846153848 2 2 +82 1.692307692307697 2 2 +83 1.538461538461545 2 2 +84 1.384615384615393 2 2 +85 1.230769230769241 2 2 +86 1.07692307692309 2 2 +87 0.923076923076938 2 2 +88 0.7692307692307863 2 2 +89 0.6153846153846347 2 2 +90 0.4615384615384808 2 2 +91 0.3076923076923206 2 2 +92 0.1538461538461602 2 2 +93 0 1.846153846153848 2 +94 0 1.692307692307697 2 +95 0 1.538461538461545 2 +96 0 1.384615384615393 2 +97 0 1.230769230769241 2 +98 0 1.07692307692309 2 +99 0 0.923076923076938 2 +100 0 0.7692307692307863 2 +101 0 0.6153846153846347 2 +102 0 0.4615384615384808 2 +103 0 0.3076923076923206 2 +104 0 0.1538461538461602 2 +105 0 0 0.1538461538461518 +106 0 0 0.3076923076923035 +107 0 0 0.4615384615384553 +108 0 0 0.615384615384607 +109 0 0 0.7692307692307587 +110 0 0 0.9230769230769104 +111 0 0 1.076923076923062 +112 0 0 1.230769230769214 +113 0 0 1.384615384615365 +114 0 0 1.538461538461519 +115 0 0 1.69230769230768 +116 0 0 1.84615384615384 +117 2 0 0.1538461538461518 +118 2 0 0.3076923076923035 +119 2 0 0.4615384615384553 +120 2 0 0.615384615384607 +121 2 0 0.7692307692307587 +122 2 0 0.9230769230769104 +123 2 0 1.076923076923062 +124 2 0 1.230769230769214 +125 2 0 1.384615384615365 +126 2 0 1.538461538461519 +127 2 0 1.69230769230768 +128 2 0 1.84615384615384 +129 2 2 0.1538461538461518 +130 2 2 0.3076923076923035 +131 2 2 0.4615384615384553 +132 2 2 0.615384615384607 +133 2 2 0.7692307692307587 +134 2 2 0.9230769230769104 +135 2 2 1.076923076923062 +136 2 2 1.230769230769214 +137 2 2 1.384615384615365 +138 2 2 1.538461538461519 +139 2 2 1.69230769230768 +140 2 2 1.84615384615384 +141 0 2 0.1538461538461518 +142 0 2 0.3076923076923035 +143 0 2 0.4615384615384553 +144 0 2 0.615384615384607 +145 0 2 0.7692307692307587 +146 0 2 0.9230769230769104 +147 0 2 1.076923076923062 +148 0 2 1.230769230769214 +149 0 2 1.384615384615365 +150 0 2 1.538461538461519 +151 0 2 1.69230769230768 +152 0 2 1.84615384615384 +153 0.9950107559754482 0.9940021389300936 0 +154 0.5871222353342975 1.400421281501603 0 +155 1.425230696935113 1.410152732451007 0 +156 0.5755953163874022 0.584588893863504 0 +157 1.431083824009012 0.5929244115089007 0 +158 0.9859563537005724 1.581210673930044 0 +159 1.563090692358006 0.9922485765690769 0 +160 0.4249340265451623 1.01110401788383 0 +161 0.9870351179962491 0.4340317015541749 0 +162 1.655948035997017 1.679547353873226 0 +163 0.3443813074320047 1.679496457165287 0 +164 1.655762439330489 0.320587344402485 0 +165 0.3207785154452428 0.3444753042473153 0 +166 0.7322236324083031 1.141415404900777 0 +167 0.8650487925185396 0.715315296691122 0 +168 1.271982439402848 1.128092730570442 0 +169 0.7307325803927102 1.694852487786215 0 +170 0.3088100904790448 0.7254518572583788 0 +171 1.696643828845455 0.7111641614675789 0 +172 0.7106201903070936 0.310086056873019 0 +173 1.690225148542836 1.289668137483886 0 +174 1.267401321252699 1.696070667842696 0 +175 0.3101882420649418 1.28988257750585 0 +176 1.261918291704139 0.3102398372865977 0 +177 1.25281616172675 0.8336571003075004 0 +178 0.9586302547799985 1.282991949532094 0 +179 0.6589114689975424 0.872040644177693 0 +180 1.17543041128053 0.5996363213205971 0 +181 1.176823773273783 1.383789798084534 0 +182 0.8159011816907558 1.434051906458482 0 +183 0.9989528326553424 1.796691547600543 0 +184 1.793853561785527 0.9994825866042545 0 +185 0.2056257518404589 1.000893943378916 0 +186 0.9992336794596339 0.2061940689422493 0 +187 1.453658172824082 0.7977000875047757 0 +188 0.5125076247241249 1.774586092001961 0 +189 1.77548053726667 0.5335044015075034 0 +190 1.487702674988148 0.2255253732076013 0 +191 1.774968119063005 1.466662891765028 0 +192 0.2253472257963683 1.466618681275847 0 +193 0.5336236592043186 0.2253553838867304 0 +194 0.2257132487425924 0.5125110037291949 0 +195 1.487791286759147 1.774527384183576 0 +196 0.8011178932871125 0.4798451750730219 0 +197 1.504174950634317 1.211698565182426 0 +198 0.4924062395832455 1.202996049141237 0 +199 0.1892345366310041 1.812490058006574 0 +200 0.1877149546162059 0.1893305909944532 0 +201 1.810891167792532 0.187643493388101 0 +202 1.811085644185281 1.812413079078707 0 +203 1.050926313585485 0.8124182937153841 0 +204 0.5008909014368954 0.7632533960460284 0 +205 1.491369769457864 0.411078289197762 0 +206 0.507529471465591 1.589765421858216 0 +207 0.4062352500636668 0.5056780048765621 0 +208 1.494053337136887 1.590607897744695 0 +209 1.602884355433181 0.5562800892048652 0 +210 0.3985442028384376 1.443801003832343 0 +211 0.5541039653229023 0.3982401305307536 0 +212 1.602831708625673 1.444616674257076 0 +213 1.367261289451851 0.9722476372216113 0 +214 1.090549257843108 1.154288773141108 0 +215 0.80622135473784 0.9779018000604072 0 +216 0.828667567571872 1.834722230413081 0 +217 1.83419016103673 1.173164570668928 0 +218 0.166005977040212 0.8282513134078577 0 +219 0.8269353210363988 0.1660400618348761 0 +220 1.170910251239758 0.1661219076902489 0 +221 1.834666411897096 0.8269016284580204 0 +222 0.1660831631726423 1.173320460222065 0 +223 1.171031264115181 1.836729099106401 0 +224 1.173392848117617 0.9880258589328734 0 +225 1.019030003458309 0.6147494620640608 0 +226 0.7184605312473921 1.296134833546843 0 +227 1.299743038790988 0.4790243751383731 0 +228 1.16988224688059 1.551010767005678 0 +229 0.6903990253446091 0.7181150395364525 0 +230 0.8942775991269979 1.132692362630721 0 +231 0.1628567490732128 1.618980272400812 0 +232 1.62359194023348 1.851898249042949 0 +233 0.3812166601367253 0.1629537149694918 0 +234 1.837472119400074 1.618966681111563 0 +235 1.623494072489942 0.1481743335360692 0 +236 1.837325399411693 0.3810945239268125 0 +237 0.3766702375124231 1.851915144706142 0 +238 0.1483149297301869 0.3767214071845751 0 +239 1.314067414447657 1.282306966459174 0 +240 0.8753029840661882 1.687310434179825 0 +241 0.3391637312197401 0.8761895164552976 0 +242 1.677469885046643 1.126215738873404 0 +243 1.686608865097139 0.8734135060928887 0 +244 0.8730481748206389 0.3208779751583973 0 +245 1.115624478212464 0.3193756043941586 0 +246 0.3212542295344405 1.127406944641879 0 +247 0.6029810848106361 1.035402879116758 0 +248 0.6622808000820739 1.845958880860486 0 +249 1.858099118789664 1.333087105009453 0 +250 0.6671385382312764 0.1421571125563247 0 +251 1.85863892523534 0.6670859265230111 0 +252 0.154577671140773 0.6618110006288032 0 +253 0.1421248101042573 1.333104456807266 0 +254 1.337404819327058 0.1545572961844858 0 +255 1.337874233694147 1.846199985957933 0 +256 0.6767189293470981 1.553130258821242 0 +257 1.333759389608622 1.552435095461947 0 +258 1.298567685371451 0.6814618318039007 0 +259 1.029173005337443 1.419266147981708 0 +260 0.9057482823396925 0.8624366222208832 0 +261 1.116531181980063 1.696313629716675 0 +262 1.554370977637277 0.6878047690389688 0 +263 1.141929514171453 0.4620587954090152 0 +264 0.5167831572675947 0.9055190580199458 0 +265 0.6743781995039342 0.455001877807395 0 +266 1.559414933155084 1.329972568724604 0 +267 0.4416380508727407 1.327881905043897 0 +268 0.7847529789023759 0.8248336102909286 0 +269 0.4214636117750916 0.6454713501618359 0 +270 1.091641222484729 1.292579461108372 0 +271 1.407566110099149 1.10812008148393 0 +272 1.160841334442649 0.7221559129101454 0 +273 0.8292342917689504 1.25406616613805 0 +274 0.8099178996141232 1.583358227038765 0 +275 1.193797701926139 1.238844647707266 0 +276 1.288288386578985 1.43072339416983 0 +277 0.6073311064141556 1.692793526884836 0 +278 1.393900082506056 1.692888701414792 0 +279 0.3048443031587095 0.6034139514561186 0 +280 1.389600569538005 0.311122597450441 0 +281 0.8778539856943602 0.5820016025881286 0 +282 0.5321173086635256 1.900855768216307 0 +283 0.5352384408878917 0.09959770664850569 0 +284 1.900641423661032 1.464950829538907 0 +285 1.467974904408645 1.900803801989021 0 +286 1.900745976885386 0.5351247542574269 0 +287 0.09960209978864361 1.464990003821702 0 +288 0.09943734215462277 0.5320773476937206 0 +289 1.468072907020469 0.09931238050815624 0 +290 0.6294911303916801 1.216244825662093 0 +291 1.589964267060813 0.8059444866355813 0 +292 1.678194114747196 1.550163021708123 0 +293 0.09961147974904982 1.900788637665698 0 +294 1.677979650895844 0.4501934863826528 0 +295 0.3223283118654754 1.549937524899228 0 +296 0.4496383741118937 0.3221231598289421 0 +297 0.09941092522633038 0.09968122505344706 0 +298 1.900634808069765 1.900699770633118 0 +299 1.900493766091412 0.09938343670599517 0 +300 0.7265920067597402 0.5903962744850146 0 +301 1.005644581102932 0.9995765741595963 2 +302 1.410003443669487 0.5751816746552423 2 +303 0.5847027801938898 0.5755502176385657 2 +304 1.425183738481673 1.409718870881169 2 +305 0.5816372369893809 1.421412577056506 2 +306 1.007331941771056 1.580853615089798 2 +307 1.581337140812071 1.002642631171421 2 +308 1.011141850986582 0.424857976020756 2 +309 0.4247966467940096 0.9893878286877742 2 +310 0.3206666873825865 1.655781718951635 2 +311 1.655939745880694 1.679544376425741 2 +312 0.3445451766996259 0.3207367504298613 2 +313 1.679558213760007 0.3444582923391842 2 +314 1.135139096431599 0.7166730546376523 2 +315 0.7129662952593221 0.856598733951957 2 +316 1.2844807294381 1.12997721345661 2 +317 0.8727362084385238 1.296674027642531 2 +318 1.269325573305592 1.692922718288778 2 +319 0.7102997391645227 1.690161145628951 2 +320 1.692949865376632 0.7309466570405504 2 +321 1.289977603227379 0.3100834950997495 2 +322 0.7254985786326253 0.3087298760604066 2 +323 0.310213010174457 0.7105674389805521 2 +324 0.3087757873351364 1.274760605546474 2 +325 1.69018182329003 1.289601886508288 2 +326 0.8736046084282868 0.6600436872755993 2 +327 0.6587681547935265 1.128357239976658 2 +328 1.162976517663524 1.353349721459011 2 +329 1.353337414634854 0.8373589864343937 2 +330 0.9999836666569099 1.789805755863878 2 +331 1.789778249233438 0.9998521723713065 2 +332 0.9999552934944977 0.2105207376231963 2 +333 0.2105602107194338 1.000156687448478 2 +334 1.775053284282288 1.466637125944086 2 +335 0.5334893226973599 1.774920340221327 2 +336 1.46675229446078 0.2253045229442645 2 +337 0.225429564771765 0.5335836339225017 2 +338 1.77470778930733 0.5124875569293572 2 +339 1.48787466623707 1.774632202355383 2 +340 0.5125668306994846 0.2256334397103775 2 +341 0.2256454235745757 1.487684751675088 2 +342 1.204396788720384 0.5105945054989145 2 +343 0.4980167534065645 0.8115994970303579 2 +344 0.7770751444181476 1.488593050486843 2 +345 1.490041072517427 1.200798591981793 2 +346 0.1986594237599326 0.1985494630211549 2 +347 0.1986048855415526 1.801778622351838 2 +348 1.801666905866492 0.1986120312533732 2 +349 1.801685910756263 1.801671306883878 2 +350 1.205384702649909 0.957221794647338 2 +351 1.043767632700613 1.204469755013132 2 +352 0.7634323676614965 0.5009068682339017 2 +353 0.5012624499057974 1.237425584356931 2 +354 0.5057855125671724 0.4061724989307032 2 +355 1.590711368332958 0.5058159017358318 2 +356 1.494594923158104 1.59063354047278 2 +357 0.4065964298712096 1.494972705155206 2 +358 1.44484479343163 0.3973730536814672 2 +359 0.5545162258555323 1.60261803559527 2 +360 0.398341155351554 0.5540570800879083 2 +361 1.602900651537906 1.44466293386054 2 +362 0.9798697127205311 0.80509165607546 2 +363 0.8059452374345235 1.025329664004699 2 +364 1.173775346092293 1.533713335039758 2 +365 1.533738907539773 0.8272076592538702 2 +366 1.171728141019552 1.833271572514716 2 +367 1.171672329055799 0.1669643446304946 2 +368 1.833191546076886 1.171540652005875 2 +369 0.8283811602202202 1.833367054244329 2 +370 0.1671215474301826 1.171789176513125 2 +371 0.1671598549771535 0.8285209511616454 2 +372 0.8283624524675739 0.1670056463746832 2 +373 1.833324307584272 0.8282818575399832 2 +374 1.011691255140872 1.402541375509412 2 +375 1.402167084752601 0.9991370190354452 2 +376 0.7196463687516845 0.6909816986052655 2 +377 0.6974058511549834 1.290414098270601 2 +378 0.1586869784035944 1.639252704749348 2 +379 1.841629678831277 1.639215991287027 2 +380 0.1588901445680674 0.3610023286330263 2 +381 0.3610820483503848 0.1587087836330746 2 +382 1.639274444068797 0.1587662371041911 2 +383 1.841533158345765 0.3609935734537127 2 +384 0.36100564419849 1.841539330026474 2 +385 1.63933635462523 1.841627264029045 2 +386 1.127318086871278 0.3235191132022784 2 +387 1.677389936185486 1.125981032081311 2 +388 0.3223611977181052 0.8745527033749134 2 +389 0.3396706556123487 1.12415012433622 2 +390 0.876789523056864 1.661037112929117 2 +391 0.8761563845804585 0.3396691386490222 2 +392 1.021056510976971 0.6013624239891894 2 +393 1.292098697211078 0.6946084706976263 2 +394 0.5999693412969367 0.9804365343978403 2 +395 1.305822622486215 1.291351410507775 2 +396 1.848463133007499 1.331620303317629 2 +397 1.331767339875313 0.1518877653038108 2 +398 1.331808790236748 1.848176851997473 2 +399 0.152031690110289 0.6684959623646967 2 +400 0.6683896971512598 1.848224731412975 2 +401 0.1519577089370412 1.331732107887756 2 +402 1.84853370909738 0.6683450136107689 2 +403 0.6684386218901032 0.1518765690645876 2 +404 1.121038036453145 1.686018411712555 2 +405 1.686117337473276 0.8799947343061573 2 +406 1.337196478024419 1.550295861661095 2 +407 1.550332852509372 0.6632186506309377 2 +408 0.906077717905033 1.140558432678131 2 +409 1.144868660183697 1.095504970500084 2 +410 0.8374217756393831 0.7922233236157641 2 +411 0.9042956735192379 0.5167396907908177 2 +412 0.5165012605915553 1.096387082967273 2 +413 1.18538590350236 1.220192070707045 2 +414 1.221498388681648 0.8155601542601937 2 +415 1.557582767342019 1.328604493498735 2 +416 0.4569340373136054 0.6753814411142008 2 +417 1.329467170903067 0.4422385191629103 2 +418 0.6672867074000994 1.557438072952027 2 +419 0.4221014019485573 1.355429268695939 2 +420 0.6455764292471826 0.4213920112069195 2 +421 1.279787450640815 1.424962630175338 2 +422 1.425062422073422 0.7206361112295023 2 +423 0.785789938495544 1.178531050021918 2 +424 1.10557356560543 0.859404960430818 2 +425 0.8808743422056964 0.9062256979389334 2 +426 1.393945851193783 1.692683674209813 2 +427 0.3046553500981303 1.396230887053734 2 +428 1.692784466218424 0.6064073304239774 2 +429 0.6041479110353536 0.3044982323773837 2 +430 1.461596883727403 0.09303319930044758 2 +431 0.5385170070391775 1.9071881214712 2 +432 0.09319550136872981 0.538708638215326 2 +433 1.461756556348963 1.907218543897958 2 +434 1.907291427145188 0.5385113111678235 2 +435 1.907304368913888 1.461784259471656 2 +436 0.5385163552170845 0.09307381059588027 2 +437 0.09309380263417238 1.461696648664529 2 +438 0.1135000645743311 0.1134112849347452 2 +439 0.4475990413175781 1.678647098806837 2 +440 0.1134739924684012 1.88691475887661 2 +441 1.678774621636779 1.552187593372004 2 +442 0.3217909752097707 0.447573741141842 2 +443 1.552258839117932 0.3215944251241721 2 +444 1.886731542644243 0.1135099345569135 2 +445 1.88676599207673 1.886744164735788 2 +446 0.9106267799771204 1.484882864223986 2 +447 0.5930824883993431 0.71388401446199 2 +448 0.9920350972105028 0 0.9989038688549468 +449 1.427943316976682 0 1.412243149174969 +450 0.5784221083148697 0 1.411197114641084 +451 1.421986156926509 0 0.5887968380952991 +452 0.5816221808146208 0 0.5788256170881528 +453 0.4248349355537819 0 1.010959687752424 +454 1.007286950952723 0 0.4193680298013869 +455 1.575342715509015 0 0.9890376933520539 +456 1.002783977828299 0 1.581257592371161 +457 1.655831993313274 0 1.679551818141335 +458 0.3208541634699886 0 1.655971117609271 +459 0.3206708653463519 0 0.3444611711738532 +460 1.679567510545639 0 0.3444045614484209 +461 1.142027524870032 0 1.297827015469257 +462 0.7165798597830642 0 1.13494122040109 +463 1.291296030672551 0 0.8672888701015076 +464 0.8726940036255935 0 0.7035801237678851 +465 1.271560669461718 0 1.68899945503365 +466 1.692218161267216 0 1.292436800001179 +467 0.7102875503312647 0 0.3100965917661093 +468 0.7121188546397598 0 1.692197604443486 +469 0.3114059345978244 0 1.271549796438428 +470 1.688976009222455 0 0.7284546211841445 +471 1.288218354334984 0 0.3081038398798641 +472 0.3087988471903477 0 0.7255743089984718 +473 0.658813380288608 0 0.8720053153021549 +474 1.343419355357603 0 1.119930737135577 +475 1.162600858846249 0 0.6474923612072576 +476 0.8377492428354791 0 1.352646770489825 +477 0.2055857832961089 0 1.001042235869186 +478 1.000513061555135 0 0.2045257640642767 +479 1.000291681927114 0 1.795666967855703 +480 1.794615744932191 0 0.9993120757318374 +481 0.225785063049856 0 1.487836353987823 +482 0.533501155634664 0 0.2253510009503324 +483 0.2256570174406331 0 0.5125919263231655 +484 1.775080597069961 0 1.466886294419492 +485 0.5338250477383508 0 1.775192930045976 +486 1.466568649004929 0 0.2251893880377391 +487 1.774583078599747 0 0.5125121966903037 +488 1.487793657586116 0 1.774623427781148 +489 1.186437953170879 0 1.502336921080381 +490 1.489542796296246 0 0.7960914608674853 +491 0.5108126309234153 0 1.202718360331837 +492 0.7770440299602617 0 0.511654516518158 +493 1.81091696567457 0 1.812527599443595 +494 0.1878439687916276 0 1.811070945492591 +495 0.1877226271454385 0 0.1892727271881681 +496 1.812437259330683 0 0.1892496873456217 +497 0.9622820852580243 0 1.202516083029698 +498 1.042804773802229 0 0.7979448025840064 +499 1.500103198704373 0 1.236298140121306 +500 0.5012992661025946 0 0.7628904524997571 +501 1.494786031715249 0 1.591828452622056 +502 0.4078799477183346 0 1.493715567335273 +503 0.4066052616762412 0 0.5052484105494117 +504 1.592612277461411 0 0.5065394158522281 +505 0.5543271000414822 0 1.599037519958725 +506 1.604667274946101 0 1.445981589090553 +507 0.554518385222513 0 0.3976315594761938 +508 1.446114806852808 0 0.4012501857604758 +509 1.159595299453541 0 1.111311068249978 +510 0.802826379688683 0 0.9755844089832146 +511 0.8267981028700828 0 1.53207089088465 +512 1.174197606817124 0 0.4681543163592482 +513 1.171720305914638 0 1.834163284279389 +514 0.1659754372654414 0 0.8283845962899057 +515 1.173054833586197 0 0.1650667804566312 +516 0.8269531748130448 0 0.1659131087979561 +517 1.834061463997759 0 0.8283797880363595 +518 1.834391136846218 0 1.173397475271441 +519 0.1661993082008 0 1.171940706764609 +520 0.8271649029566552 0 1.835209173068247 +521 1.306302137447946 0 1.276390676384394 +522 0.697363143179939 0 0.7098823521640265 +523 1.011568933736854 0 0.5980552891367528 +524 0.9994269313860291 0 1.403822712447362 +525 1.837342640087854 0 1.619043894453372 +526 0.3813366329776196 0 1.837509571187815 +527 0.14824846168391 0 0.3767267418918752 +528 0.1483855028653632 0 1.623620840861991 +529 1.851943829601812 0 0.3766913173736132 +530 1.618989820372376 0 0.1628456306999306 +531 0.3811704488077069 0 0.1628831937985644 +532 1.623535767942888 0 1.851985955796811 +533 1.122919438701642 0 1.67914229496918 +534 0.3391315336817159 0 0.8762666112220394 +535 0.8766982089060102 0 0.3385754081057616 +536 1.677097039483991 0 0.8746217019628681 +537 1.6611941964098 0 1.125514481024038 +538 0.3232377997396347 0 1.125473013150347 +539 0.6011089592516341 0 1.020397304700686 +540 0.6952830503601091 0 1.29134794053989 +541 1.405917031453902 0 0.9774117448948554 +542 1.305697723950531 0 0.7088762734188939 +543 1.338155355324185 0 1.845503714865009 +544 1.33297528061959 0 0.1418917174808075 +545 1.858283405927023 0 1.333360318304757 +546 1.845507386815052 0 0.662048505425118 +547 0.6670421469427864 0 0.1421892039089546 +548 0.1545615063257035 0 0.6619230979331903 +549 0.1547824408221545 0 1.338250789733038 +550 0.6672712201132736 0 1.858435156012952 +551 1.123196238710013 0 0.3136654568881864 +552 0.8780337479048461 0 1.686642368195771 +553 1.151163450173027 0 0.9349403665948663 +554 0.9042773779284871 0 0.8598360644612443 +555 0.4327346980404994 0 1.34574330528909 +556 1.340667693813894 0 1.553831301450858 +557 1.568282876310807 0 0.6540265418826015 +558 1.323487373967829 0 0.4704332787881639 +559 0.676945505670468 0 1.529775853093039 +560 0.5166056825189607 0 0.9040025139270083 +561 1.484640297321621 0 1.095148681507674 +562 1.186521583237435 0 0.7829970715842873 +563 0.8161496826101589 0 1.221053246881023 +564 1.269556624057233 0 1.003099539686923 +565 0.6672718587702305 0 0.4428168414801354 +566 0.4221384151248335 0 0.6448339756516195 +567 0.7852900187352796 0 0.8218160900460012 +568 0.8589144998692226 0 1.104140407972725 +569 0.7243015736589868 0 1.418883209112267 +570 1.276210183552816 0 0.5812989221893774 +571 1.568291106557957 0 1.338581371533204 +572 0.3064868143353849 0 1.395531011821421 +573 0.3049432675955261 0 0.6033913603464613 +574 1.693950604547282 0 0.604687184070271 +575 1.395131723842484 0 1.692484379346382 +576 0.09949944592231875 0 1.468090997213027 +577 1.464939338169825 0 0.0995715076515046 +578 1.900633329583063 0 1.465039425461176 +579 1.900769514770559 0 0.5321762523811686 +580 0.5351269838476114 0 0.09960420849616555 +581 0.5352382724359982 0 1.900735181202668 +582 0.09938660934762336 0 0.53212139568301 +583 1.468116911620288 0 1.900786110790771 +584 0.4499180217322056 0 1.677843705577357 +585 0.4496281658712454 0 0.3220242125867748 +586 1.67843620105146 0 1.550434358258785 +587 1.550522815106218 0 0.3224945244389652 +588 1.900514229093795 0 1.900779019743046 +589 0.09949954124179315 0 1.900594832203836 +590 0.09941121562369459 0 0.09967561477731733 +591 1.900683966058249 0 0.09965859522384551 +592 0.9105693069222718 0 0.5153249895297076 +593 1.287652050243381 0 1.408481428508363 +594 2 1.001670536938807 0.9928654707475768 +595 2 1.418497762492186 1.410365554481945 +596 2 1.410162079887056 0.5751116142162123 +597 2 0.5788677953268297 1.418605057312054 +598 2 0.5719531004586014 0.5894891541016209 +599 2 1.581179934857225 1.014407892579185 +600 2 0.4285969718425114 0.9743112624551455 +601 2 1.01329762675357 0.4340505047729964 +602 2 1.010873583862323 1.575514838569063 +603 2 0.3443622376541506 1.679494439038361 +604 2 0.3207639696831812 0.3443638524942987 +605 2 1.679493085914986 1.655921197914649 +606 2 1.679507451627205 0.3444393764755913 +607 2 1.150695386450099 1.287634957507501 +608 2 1.121296599741718 0.7193907200686875 +609 2 0.7129653194433452 1.125571321794771 +610 2 1.694873107567694 1.269668699752257 +611 2 0.7254422638985777 1.691602660790276 +612 2 0.3034315976525856 0.7286977819983784 +613 2 1.289709541851755 0.3100595351303825 +614 2 0.3101210517707947 1.289907853785655 +615 2 1.696053440013084 0.7329524301909551 +616 2 1.289637615368587 1.690190363226827 +617 2 0.7178161720599847 0.309607834333587 +618 2 0.7475780356525874 0.8336209857879873 +619 2 1.282978775652621 1.041754567420106 +620 2 0.8735586223947082 1.340255866847872 +621 2 0.8249175486066531 0.5996153358810553 +622 2 1.383754664226329 0.8235316222328493 +623 2 1.435172120766984 1.184304257195411 +624 2 1.789690869524838 0.9998841473629743 +625 2 1.000314877133329 1.789764711313286 +626 2 0.9999246034580843 0.2105106926142525 +627 2 0.2105763644304679 1.000075547284535 +628 2 0.546404920636048 0.7944833979729929 +629 2 1.774628092738047 0.5125348667914216 +630 2 1.466617379370686 1.775069085383778 +631 2 0.5124055944307946 1.774632690623561 +632 2 1.774604584285937 1.487842465092746 +633 2 0.2256440453569802 0.5124337833429997 +634 2 0.2252378337830825 1.466646268600925 +635 2 0.534221508416485 0.2252617090896287 +636 2 1.466695254596911 0.2253412601171417 +637 2 1.214773310814466 0.496453145131462 +638 2 1.18906367945818 1.502089260860876 +639 2 0.5142344695861065 1.22230920358998 +640 2 0.1986906155378084 1.801832360164559 +641 2 1.801632634827076 0.1985654259290899 +642 2 0.1986034927636751 0.1985400413528802 +643 2 1.801729750291861 1.801644409873973 +644 2 0.9468016233945629 0.8097401366887607 +645 2 0.7629727469570132 1.4989930128905 +646 2 0.5052115425050884 1.593644337086385 +647 2 1.591074880925743 1.492580804495627 +648 2 0.4079348078276531 0.5069913694975701 +649 2 1.590680954924557 0.5063710902091084 +650 2 0.3975959598875082 1.445652835191614 +651 2 1.445395918942383 1.601502180011281 +652 2 0.5576433692236551 0.4019321191939541 +653 2 1.444738343098526 0.397499397084344 +654 2 0.6271651825927874 0.9685272546112006 +655 2 1.163130375644658 0.9241738454543251 +656 2 0.9839753470354923 1.192979236241916 +657 2 1.833232967466149 1.171651904264245 +658 2 0.8285853782629565 1.833259687871449 +659 2 1.17162713171317 0.1669741988617725 +660 2 0.1670159091054212 1.171726828672429 +661 2 0.1670368823899095 0.8284432158979773 +662 2 1.833181612729513 0.8283379040693561 +663 2 0.828380015707353 0.16708656779079 +664 2 1.171833592630617 1.833269668237379 +665 2 0.824638760256113 0.9811072520331399 +666 2 0.9801331164917724 0.6148659114857249 +667 2 1.30656336760078 1.287252211859514 +668 2 0.7105355956907287 0.4925681061613101 +669 2 1.550965716142661 0.8304705899669337 +670 2 0.7126365560760004 1.30124423453254 +671 2 1.135320439735954 1.107765782585951 +672 2 0.158714569247364 1.639310210647241 +673 2 1.63924299658086 1.841581436202601 +674 2 0.3610707952739723 0.1586615004916117 +675 2 1.841468920088208 0.3610175894859327 +676 2 1.639218618179855 0.1587349708754993 +677 2 0.1587262248411506 0.3609393948741922 +678 2 1.841565367330045 1.639286531749165 +679 2 0.3610017859379009 1.841627004151994 +680 2 1.283551232469111 0.6861906988398268 +681 2 1.686455389805417 1.124923302182508 +682 2 0.8761365961106161 1.66071287880749 +683 2 1.128526444164507 0.3230104217339212 +684 2 0.3130285785912875 0.8726273246823393 +685 2 0.3423709519190954 1.120993666165022 +686 2 0.8824192826226001 0.3199130942970269 +687 2 1.125768124399291 1.67788942905159 +688 2 1.021348375950163 1.400125296856777 +689 2 1.331735011885412 0.151875361459935 +690 2 1.848219020030863 1.331760168267593 +691 2 0.6684798933806178 1.848188361066341 +692 2 0.1519957360094911 0.6684286450355595 +693 2 0.1518959550628392 1.331697795310055 +694 2 1.331770606168523 1.848542115071425 +695 2 0.6684490493486349 0.1518570391684464 +696 2 1.848415634942156 0.6684233171052154 +697 2 1.554849341414366 1.323412408245038 +698 2 1.552424794215007 0.6665979187260821 +699 2 0.7028199752927455 0.6820189500269318 +700 2 0.437671931501679 0.668859888823671 +701 2 1.419331972243308 0.9711732601719629 +702 2 1.695228540830086 0.8835658144323442 +703 2 0.8572831295365768 0.4632228551366652 +704 2 0.8387155428741506 1.205024224923824 +705 2 0.9042128686802978 1.483643856653243 +706 2 1.32407023386267 1.54249074961244 +707 2 1.330441309487443 0.4409331153011302 +708 2 0.4431807956045519 1.332813320567449 +709 2 0.5337516981913604 1.080399239005517 +710 2 0.6448095524944896 1.578214865074634 +711 2 1.29348158937877 0.9101873174131783 +712 2 0.8392693830451092 0.7219278038834822 +713 2 1.256378438287463 1.173773513892748 +714 2 1.583559554733535 1.190425575501119 +715 2 0.4067607278621546 0.7988640262901231 +716 2 1.224358068473762 0.8078940770275292 +717 2 1.430810636832843 0.7120476537012741 +718 2 0.8908979836816668 1.090555575384308 +719 2 1.693216930736693 0.6070593893180882 +720 2 1.693360387868137 1.392363426407486 +721 2 0.6039226967838679 1.695658345877104 +722 2 0.3057911202139637 0.6068484833589787 +723 2 1.285515511989554 1.405541266112089 +724 2 1.121425995312367 0.5935324788718568 +725 2 1.461620447753639 1.907332366074483 +726 2 1.907210516678681 1.461812215391591 +727 2 1.461658409219252 0.09314334592434145 +728 2 0.5385720807587807 0.09307691720941397 +729 2 1.907236462485892 0.5384669379968767 +730 2 0.5384649363487508 1.907208248648238 +731 2 0.09306622379269426 0.5384491246794276 +732 2 0.09301267837719947 1.461734806261061 +733 2 0.3215079831250129 1.552529757856353 +734 2 1.080573963192769 0.8356191852394173 +735 2 1.552264413058391 1.678430208675398 +736 2 0.448205674403698 0.3221541351433655 +737 2 0.113491385138304 1.886855303160772 +738 2 1.886751657741564 0.113475953670206 +739 2 1.552203286356387 0.321685237071044 +740 2 0.1134755724760853 0.1134791046274708 +741 2 1.88678824218024 1.886767588790113 +742 1.000094710066727 2 1.000161271835142 +743 1.425312526023957 2 0.5804058820168523 +744 0.5749454214551866 2 1.419958404257553 +745 1.424751128441014 2 1.415651565814471 +746 0.5783690501927317 2 0.5822453749837138 +747 1.002489446003358 2 0.4241279869437588 +748 1.007502611818268 2 1.576688817405861 +749 1.575426474803264 2 0.9894438239945325 +750 0.4247792797812975 2 1.010966574397224 +751 0.3444229289701481 2 0.3207087906356569 +752 1.679602408440936 2 1.655788687835569 +753 0.3444360516180003 2 1.679629097201726 +754 1.655838321412757 2 0.3207772033694344 +755 1.283696390981477 2 0.8653575582439085 +756 0.7165143013672779 2 1.134992028703948 +757 1.142059117611654 2 1.291282885037262 +758 0.872641572520865 2 0.7037731425570188 +759 0.7284729428895749 2 0.3113155364949075 +760 1.284125946736411 2 0.2984139150554328 +761 1.691568469576281 2 1.274844521329165 +762 0.7161403669195081 2 1.701912766180641 +763 1.690191428344355 2 0.7106531416631727 +764 0.3079985297138279 2 0.7078186797330166 +765 1.289657597043067 2 1.690116495368669 +766 0.3101195801703905 2 1.289742679025314 +767 1.341445367935396 2 1.128243060305762 +768 0.6587323549584543 2 0.8721232656224654 +769 1.15657643496089 2 0.6432446601779853 +770 0.8436477930275166 2 1.357092359437504 +771 1.000259530746982 2 0.2106570564645708 +772 1.789669933899117 2 1.000416892951041 +773 1.000213551201238 2 1.789671604985948 +774 0.2105701047331285 2 1.000105774810266 +775 1.466690309419357 2 1.774901367759835 +776 0.2253499557807005 2 1.46674831697675 +777 1.469137600787464 2 0.2370072701444882 +778 1.774936658490595 2 0.5336478610321364 +779 0.2251951284268466 2 0.533361507659678 +780 0.5311564277525042 2 1.76336471449225 +781 0.5125184126447293 2 0.225703864598975 +782 1.774677392387046 2 1.487759424208307 +783 1.490145403321033 2 0.7967821203009234 +784 0.7770955192488804 2 0.5124562714876146 +785 0.5101075514989897 2 1.203580080156839 +786 1.186932677314571 2 1.502018024615265 +787 1.801793275103068 2 1.801617357697102 +788 0.1985249792804173 2 1.801704025022411 +789 1.80162812564727 2 0.1986063008076866 +790 0.1986141893399306 2 0.1985768760982519 +791 1.042525293412035 2 0.7945884641691572 +792 0.9586981121514829 2 1.205358869644166 +793 1.499443317435157 2 1.236978129022347 +794 0.5006710202543387 2 0.762958686817985 +795 1.594142284290437 2 1.494562172171816 +796 0.4965582977155671 2 1.58579613663246 +797 0.5058286328707137 2 0.407972847063752 +798 1.503724126366788 2 0.4145889582450961 +799 1.446267326322914 2 1.601999541091199 +800 1.603606756254184 2 0.5551795185655257 +801 0.3966769298641298 2 1.445229458589019 +802 0.3961103348160974 2 0.5537652200065679 +803 0.803382763507249 2 0.9757475876746995 +804 1.196806895409379 2 1.024593805687565 +805 1.25690381278489 2 0.4908556981886575 +806 0.7433464978882827 2 1.509491657208977 +807 1.833325567375116 2 0.8287221433350667 +808 0.828574065815305 2 0.1670763039089458 +809 0.8285581673002805 2 1.833207204107696 +810 1.171864089855794 2 0.1669675249633473 +811 0.1668642536479094 2 0.8285060620312333 +812 0.167089172686686 2 1.171721985976842 +813 1.833318920138758 2 1.171978616746687 +814 1.171778972380506 2 1.833250674492507 +815 1.006287575954455 2 0.6009952130979965 +816 1.004263467380435 2 1.400456434616156 +817 1.310580146864288 2 1.282723218139347 +818 0.6969927838945854 2 0.7103501833252828 +819 1.639299309742006 2 1.841423202273454 +820 0.1586763848905865 2 0.3610344173241921 +821 0.3609774205588071 2 1.841612862200178 +822 1.841485139646008 2 0.361064507711064 +823 0.3610502913898792 2 0.1586299088271065 +824 0.1587621029378209 2 1.63927521667896 +825 1.841638973675774 2 1.639221364229041 +826 1.639233558766388 2 0.1587557991993389 +827 0.877934983893337 2 0.3398333019046165 +828 1.676755319332899 2 0.8731923317678443 +829 0.8716711735586752 2 1.664452268139808 +830 1.129432555731763 2 0.3359903090650789 +831 0.3235274271261356 2 1.127233159352928 +832 1.660559734524941 2 1.124225931802271 +833 0.3395578001902815 2 0.874701507802722 +834 1.125194596415731 2 1.677961014589214 +835 1.399170226970829 2 0.9798204180251469 +836 0.6010299659903433 2 1.020551701578557 +837 1.303422431177812 2 0.6998845526885731 +838 0.6968077235399655 2 1.300466544233798 +839 1.848449638979183 2 0.6686089932320154 +840 0.1518810276680005 2 1.331806566613678 +841 0.1518469487669651 2 0.6684538717482011 +842 0.6685283797944171 2 0.1519912426262403 +843 0.6685314240858864 2 1.848406997135966 +844 1.331795658261039 2 1.848357256686727 +845 1.331856528406672 2 0.1518608423371025 +846 1.848370697820283 2 1.331893207203181 +847 1.096620595049878 2 1.140016239308911 +848 0.9051231241441557 2 0.8597532059329305 +849 0.6510343034868973 2 0.4325925829885913 +850 1.116151152828628 2 0.5016639608023811 +851 0.8861764811257984 2 1.498833378914047 +852 1.483637989745239 2 1.096274015325951 +853 0.5165327083845983 2 0.9039233287411528 +854 1.183810708255393 2 0.7775733465479806 +855 0.8164943657991324 2 1.222734542730682 +856 1.32473595068211 2 1.54336439738462 +857 0.4425657109202114 2 1.330378847601572 +858 1.55773528605755 2 0.6700181061421094 +859 1.578897859656693 2 1.354763835770694 +860 0.7853741735022242 2 0.8220379564785362 +861 1.217152659086541 2 1.177005917463392 +862 1.140824271325638 2 0.8955266152235916 +863 0.8594643612187074 2 1.104770441042203 +864 0.432817052284399 2 0.6607734674939862 +865 1.37058463049939 2 0.4049833035362508 +866 0.6296832272322083 2 1.595354574639748 +867 0.6049687326679567 2 0.3061466568582799 +868 1.695801515875111 2 1.396197250730824 +869 0.09308334277296454 2 1.461563371151777 +870 1.461558550000693 2 1.907160080719747 +871 0.09317209452238534 2 0.5386993701456417 +872 1.907150685850504 2 0.5387295197697433 +873 0.5386181519244926 2 1.907302941293337 +874 1.4617583662239 2 0.09310424912965985 +875 1.90722091059973 2 1.461676911715396 +876 0.5385712555921407 2 0.09317884979235569 +877 0.3215069962168143 2 0.4476880624158083 +878 1.552754976174426 2 1.678555593580863 +879 0.113445427586277 2 1.886850639540546 +880 0.3206203681329581 2 1.551854318892275 +881 1.679659320715363 2 0.448558061504555 +882 1.88683600753976 2 1.886777774644092 +883 1.886755426811073 2 0.1135626246414351 +884 0.1135210929144837 2 0.1135581303608494 +885 0.9096781748169402 2 0.5164458093881639 +886 1.28616607859156 2 1.40780181660449 +887 0 1.003006485099963 0.9992228632003257 +888 0 1.41000072940704 1.425116787933981 +889 0 1.429491361653807 0.5910587138202199 +890 0 0.582233711628903 1.421867623371288 +891 0 0.5888421682482099 0.5783129964100866 +892 0 1.002521077651566 0.4240567011932347 +893 0 0.4194810347107901 0.9930096299535027 +894 0 1.581263183502437 0.9976103204879234 +895 0 1.011180779918263 1.575376915916261 +896 0 0.3444260536311867 0.3207199982832455 +897 0 0.3207818347869748 1.655851916791654 +898 0 1.679557377227633 0.3444160498091632 +899 0 1.679508626115272 1.655861145593298 +900 0 1.135187365230206 1.283625686559913 +901 0 1.284409548151873 0.8702619493777566 +902 0 0.7037281876953505 1.127604288221244 +903 0 0.8728992949812218 0.7018183959333134 +904 0 1.692921597921484 1.269297482103525 +905 0 0.7285257197460799 0.3112878061157648 +906 0 1.289966602488451 1.690179444230184 +907 0 1.689015844442011 0.7288741176884168 +908 0 0.3081359299187704 0.7120902660355025 +909 0 1.292427504388096 0.2979673071905498 +910 0 0.3113612082616146 1.271815697568966 +911 0 0.7078386544994318 1.692179093697328 +912 0 0.8720770409307856 1.341499287699297 +913 0 0.6475811594775758 0.8376955230982308 +914 0 1.353343637820694 1.162951771109663 +915 0 1.156578169278369 0.6431983009130515 +916 0 1.795687712073247 1.000054362239981 +917 0 1.000442618009688 0.2055408997461056 +918 0 0.204612822943341 0.9996800266155517 +919 0 1.000876263261923 1.794634046868304 +920 0 0.2256849096823776 1.487782686961292 +921 0 0.5334265503678276 1.775154519978217 +922 0 1.774651987128733 0.5125635573108075 +923 0 1.46692597671966 0.2243317280165641 +924 0 1.774645532099148 1.487782381669793 +925 0 0.5125341965846448 0.2256698766384198 +926 0 1.466715056676718 1.77496297936229 +927 0 0.2252388730542815 0.5337477980714169 +928 0 1.20441792300116 1.489678746246976 +929 0 1.489868077724764 0.7997257358712216 +930 0 0.7785323566090221 0.5106350889170502 +931 0 0.5124606790495334 1.223173056081164 +932 0 0.1877137178717616 1.8108925718901 +933 0 1.812349612468614 1.811048728563765 +934 0 1.812387311136039 0.1891469663059416 +935 0 0.18924659796953 0.187771855562142 +936 0 1.205192794870741 1.042968616222042 +937 0 1.043335141370488 0.7949416273913346 +938 0 0.7960844395068927 0.9568882616091434 +939 0 0.7629261286200058 1.49952111880177 +940 0 0.4079682244770527 1.494434758170701 +941 0 1.590675305838402 1.494490365439584 +942 0 0.5065932174897543 0.4076596819024048 +943 0 1.593120421297729 0.506814968184983 +944 0 0.5537718757517143 1.604182466030043 +945 0 1.444807981210667 1.602909481071361 +946 0 1.441811018989906 0.4019462751125548 +947 0 0.4013011923716455 0.554164128927551 +948 0 0.9759203934977994 1.196774947806647 +949 0 1.533726733040965 1.173048659764321 +950 0 0.4682226015353096 0.8260947824428932 +951 0 1.264115027994473 0.4913072980239268 +952 0 1.834210401709159 0.8286134427106342 +953 0 0.8285780212760939 0.1661351657387988 +954 0 0.1661202079445867 1.171738489872477 +955 0 1.173320716359426 1.834215446677007 +956 0 0.1650785963844642 0.8271566986042345 +957 0 1.835249784162732 1.171587135435751 +958 0 0.8268104227851882 1.834321502964013 +959 0 1.173601173839421 0.1650669337016316 +960 0 1.006387177838775 0.6008005343295826 +961 0 1.402061903298315 1.001149253531053 +962 0 0.5980184675111967 0.9886889630859537 +963 0 0.7103140252710952 1.303234838720531 +964 0 1.851879989864557 0.3766392172575612 +965 0 0.3812116547710819 1.837331970175734 +966 0 0.1628547740464223 0.381272492887412 +967 0 1.851850080883568 1.623612187994168 +968 0 0.3766838974596112 0.1482782300632955 +969 0 1.618982632756535 0.1627618793565423 +970 0 0.1482990648322422 1.623525226162664 +971 0 1.618951737489536 1.837394321232404 +972 0 0.8781147242749321 0.3390978018744584 +973 0 1.677913463639034 0.8760719629198808 +974 0 0.338825251518789 1.121929787802805 +975 0 1.12759512502148 1.677270486733314 +976 0 1.130893700784091 0.3353886905322589 +977 0 0.8746439326996358 1.661157259727984 +978 0 1.020644972745798 1.399145281719696 +979 0 1.29211904153411 1.305694876753191 +980 0 1.304409975674593 0.7014251974625518 +981 0 0.7079331565957674 0.6939863196395931 +982 0 1.845574015261255 0.6621780043498848 +983 0 0.6621127738550394 0.154719563072448 +984 0 1.333134215164284 1.858087788338508 +985 0 0.1547571046869775 1.338189530682226 +986 0 0.1419343747858516 0.6672712896094911 +987 0 0.6668839576610159 1.85829457862989 +988 0 1.333433930176982 0.1409743292193303 +989 0 1.845952472816637 1.33805469368262 +990 0 0.313705725866174 0.8770039122377921 +991 0 1.686893922601528 1.12022251011248 +992 0 1.550334752609948 1.337054332024479 +993 0 0.8601670001855062 1.094948010534063 +994 0 1.568543744944848 0.6550503120571818 +995 0 0.6523191985074316 0.4319732701458806 +996 0 0.4326220407770391 1.349234836289305 +997 0 0.4704652637262541 0.6768073313169964 +998 0 0.9053497983631852 0.8545329584043024 +999 0 1.144514571802716 0.904552182821566 +1000 0 1.117030520932649 0.5015965595506673 +1001 0 0.9039267528701053 1.483734497215734 +1002 0 0.7803711534630395 0.8134697948945377 +1003 0 1.184496931379117 0.7788164189147735 +1004 0 1.221503823499332 1.184724615323519 +1005 0 1.329451593454273 1.558049103937096 +1006 0 1.425070921177624 1.279670273321981 +1007 0 0.82204840787671 1.214846813748566 +1008 0 1.104928634717005 1.140887512963559 +1009 0 0.5812481608225829 0.7240245442900792 +1010 0 0.6607502193557123 1.567376152591327 +1011 0 1.69409673407193 0.6049262207590244 +1012 0 0.6045600189697982 0.3062974492140967 +1013 0 0.3063941751663254 1.395955349747418 +1014 0 1.692475029153347 1.394463534871319 +1015 0 1.46504385013289 0.09935807594748189 +1016 0 0.09960093239823437 0.5353247593529478 +1017 0 1.464961645592883 1.9006340247385 +1018 0 1.900844095406336 0.5321641225641687 +1019 0 0.5351636018670438 1.9007037333164 +1020 0 1.900869168747288 1.468096094517805 +1021 0 0.09941915843557024 1.468142953375948 +1022 0 0.5321036288924147 0.09942302116603155 +1023 0 1.550184418557337 0.3224840532069058 +1024 0 1.900720194586039 0.09956734596162038 +1025 0 0.3225308373821799 0.4497656153830742 +1026 0 0.449772292099768 1.678423464454446 +1027 0 1.550196061432803 1.678269411146128 +1028 0 1.900662878244523 1.90058597601215 +1029 0 0.09939548308382132 1.900470373361316 +1030 0 0.09964286828562288 0.09945118526591273 +1031 0 0.9098933410714198 0.5159268709675101 +1032 0 0.5155254003549885 1.089554333845473 +3867 0.9836009282340512 0.9801335294734752 0.999803094612663 +3868 0.6574636907833543 1.400647185851872 1.413150602469433 +3869 1.397038158334284 1.382097399887321 0.6333442820923508 +3870 1.398378204461292 0.5921436210423634 1.389557745734904 +3871 1.344998371630699 0.6381494007749583 0.6362930051558107 +3872 0.6334329805360768 0.6651027582714084 0.6643556846138893 +3873 0.6462749767500233 0.6429560842440898 1.363590553021786 +3874 1.410206997876107 1.402669254163176 1.416039342275581 +3875 0.5723205487508022 1.431179972273018 0.5890634110845863 +3876 1.087101552160474 0.5068854232984525 1.000898061843885 +3877 1.008594591157923 1.070590582494239 0.4763856394668448 +3878 1.503616590755198 0.9891900093065406 1.054652743187033 +3879 0.9520720371264193 0.9691589603975506 1.488916656220267 +3880 0.5108919767458721 0.905777481915261 0.9602860970046261 +3881 1.051380968494495 1.491953995759695 1.067397729256695 +3882 1.588192716943775 0.9599398359915514 1.618208548923956 +3883 0.4719275317849843 0.980738432252882 0.4752988150766506 +3884 1.006347710692767 1.560638163671404 0.4557526279137327 +3885 0.4297434310251689 0.4629322671607402 0.9748358286655502 +3886 1.001043244296882 0.4646891472346532 1.5224999801245 +3887 1.561169726838372 0.4520250214647474 1.005839972285297 +3888 1.523571150296089 1.520999417074404 1.02201011332108 +3889 0.455792141243957 0.9881298570427921 1.530487902173937 +3890 1.007881051677901 0.450145070677093 0.4407029140838412 +3891 1.548238943523546 1.000038416935556 0.4492191549504221 +3892 0.9975637606681694 1.527530042942516 1.531050092814034 +3893 0.4252597139927733 1.52338093492775 0.9811756004617284 +3894 0.446545692218566 1.562413359966685 0.4279752733216374 +3895 1.584077662972022 1.593272774111344 0.4113748686326044 +3896 0.4298109274911697 0.4113802381326256 1.579508605973278 +3897 0.3953057856174284 0.4090763206147587 0.4124087804132845 +3898 0.4017236081244128 1.616104772413947 1.599647311271169 +3899 1.620331819187451 1.572582419417369 1.591398472271756 +3900 1.598305020672035 0.3786941079135075 0.388625141173668 +3901 1.60212246741799 0.3980669991085286 1.592764902059705 +3902 1.312526467120175 0.967487339668027 0.7901651070369499 +3903 0.975115864233345 0.6955371862840535 0.6979494672926682 +3904 0.6776574124479446 1.307987174343848 1.052869203034534 +3905 1.288443285856137 1.252043911307221 0.9650727767574223 +3906 0.8677811975459507 1.650707904061779 0.7340131307236469 +3907 0.9964650358483731 0.6945905503965536 1.2705805927088 +3908 1.656960404261635 1.20989204756262 0.7930464566600927 +3909 0.7443365810741274 0.3273204498391291 1.167463178161814 +3910 1.22152379342833 1.182289390740799 1.662536367845639 +3911 0.8103251379884063 0.7467668221025712 0.3472236377784073 +3912 0.7333263221015571 1.00296911697749 0.7252516059612354 +3913 0.3364926382229055 1.257223903547626 0.8836938811560323 +3914 1.257724819883555 0.9631073916638234 1.339169887378772 +3915 0.7133830593187055 0.685008246611395 0.9814485604162674 +3916 1.044207896707502 1.296789616834406 0.7334973326641528 +3917 1.153836759085511 0.7300528093600118 0.3451141946320309 +3918 0.8499621442925485 0.3699230957235382 0.6316060631928088 +3919 1.677139726698102 0.7938949979100601 0.7742271188669165 +3920 0.3296552547870116 1.167000163335178 1.280050484499766 +3921 1.186146746916386 0.7586280924013896 1.674935993949639 +3922 1.247335178625603 1.658764611699339 0.7953904919614549 +3923 0.8013316911745947 0.7129867363287377 1.666854608877081 +3924 0.3223391347408276 0.8155829286185897 0.7241716578505196 +3925 1.57129266665606 0.7642050610835333 1.219786479727571 +3926 0.8120811104465737 1.239949500115491 1.670224353336563 +3927 1.272368110829732 1.169155770421622 0.4068089399075134 +3928 0.3982200089730853 0.7735673185240295 1.319591986929912 +3929 1.252050249785278 1.669513546786683 1.213913779990962 +3930 1.172098434136177 0.3087040346059953 0.7681068702227789 +3931 0.7409072415842356 1.16574467147079 0.3841503646249635 +3932 0.6735359325330516 1.724604522403634 1.249346167820248 +3933 1.212033726122538 0.3328267219183834 1.299321521331992 +3934 1.31030325490936 0.7189761188248449 0.9415916621444012 +3935 0.7188075691617744 1.020159100374232 1.192046635168706 +3936 1.656677505953077 1.3180999576849 1.184147386266524 +3937 1.068203079983305 1.324832597152937 1.284951462722979 +3938 1.292810599127869 1.583986709746065 0.2940351046205189 +3939 1.662122091935848 0.7190060121445717 0.3274300688529461 +3940 1.707121062608628 0.657028979064909 1.694514901751788 +3941 0.3690942117856338 0.7182641062236285 0.3267258495956363 +3942 0.3048171637845805 0.7047257592576935 1.717041472471747 +3943 0.3125537528909926 1.666800248359633 0.6990815912830952 +3944 1.675687035913463 1.635827622660741 0.7244486634158789 +3945 0.7218777252793696 0.33374844738013 1.641844849220934 +3946 1.679164857206371 0.3687319647971029 0.722926964224761 +3947 0.3819986487119295 1.288693184459707 0.4144959555317443 +3948 0.7005623167549534 0.3373444031722495 0.3657066272197886 +3949 0.6882512390601816 1.688069982810388 1.699276590745051 +3950 0.2854704349867846 0.328861597402008 0.6636368738904053 +3951 1.656462720731372 0.3530536826355387 1.292366724194051 +3952 1.655083564165713 1.665184417622195 1.262735062126145 +3953 1.328598679911165 1.642705109972148 1.653105108696998 +3954 1.36882249337695 0.3355427166059237 1.720164547494321 +3955 0.2950604302505891 0.3184533836968932 1.293126473657993 +3956 1.311156136394033 0.3320827217068811 0.3310213069173049 +3957 1.683567170745423 1.292329258364543 1.667074209650376 +3958 1.597752850041597 1.283029410171541 0.3362605767745297 +3959 0.7362853629065221 1.621406880515783 0.3615927812231891 +3960 0.3496342451470213 1.282259296815925 1.661775349273731 +3961 0.3501683708028319 1.665532674399151 1.324068840767765 +3962 1.730644393373577 1.011038470931388 1.315472650664535 +3963 0.707393259190346 0.9912962367175727 1.720240204539381 +3964 0.9738776737987854 1.622719383117326 1.294206812441505 +3965 0.2682160288450671 0.6988505952565437 1.027206335665829 +3966 0.9754196551169568 1.212722695510099 0.2663741203239899 +3967 1.275805136806754 0.2838662193838321 0.9936891681787386 +3968 0.562371164875457 0.5774285787960974 0.2638050617256986 +3969 0.3466274596190996 1.433205370661937 0.5221060374233895 +3970 0.5850581623267099 1.748792172115065 0.6791427946191128 +3971 0.571453389980457 0.2737013449207566 1.398278371854686 +3972 1.339176824767861 1.400237743332374 1.715517653195891 +3973 1.683530741867148 1.392478689855653 0.598913013788961 +3974 1.39514455968662 1.692207779659403 0.6024822554909539 +3975 1.766360173237745 0.5866960651754678 0.6050590888258094 +3976 1.417160927171478 0.5764420051857596 0.2881712260349717 +3977 0.274977149746556 1.424604164450418 1.394709276239684 +3978 0.568024539747211 0.3022962642868975 0.5873120262229455 +3979 1.393975104594966 0.6706989733145958 1.741317627371151 +3980 1.737758924785763 1.424002708625967 1.433295705706637 +3981 1.427279236642757 1.720275435106681 1.472955704744495 +3982 0.6489554433707607 1.724431636758863 1.418903208092366 +3983 1.432131579993352 0.2732233591600821 1.420547344211883 +3984 0.2593164418915445 0.5789336059415585 1.419653669175232 +3985 1.743987832975619 0.5681726698503455 1.413845233104095 +3986 1.450328164272955 1.44657298496091 0.2643332434778396 +3987 0.568566184483824 0.5776722570024009 1.727633557210725 +3988 0.5646729457718972 1.438293451210586 1.73665684699321 +3989 0.2619260249005796 0.5843738336697932 0.5533687437314121 +3990 0.5761274948542084 1.415668200422486 0.2218191470771859 +3991 1.425675386730388 0.2743297090804569 0.5797978828590299 +3992 0.8831268769101674 0.2521413688836687 1.401768308743003 +3993 0.2396349703530924 1.100863042413422 0.6288746558929407 +3994 0.6677195554241854 0.9451622994937917 0.2388900048316625 +3995 1.038744336619439 1.332828688783118 1.736717288921347 +3996 0.6382092463075867 1.709217582198896 0.8715835179788932 +3997 1.748467016104273 1.319194902936911 0.939665211321591 +3998 0.5795522863392571 0.2639806834473188 0.8568767509298677 +3999 1.336666746804372 0.94792129910097 1.730501552450527 +4000 0.2862355215962151 1.368760504973267 1.100490700490504 +4001 1.090694860336519 1.808928070364019 0.6776662170826377 +4002 1.031413812384759 0.2620386035765611 1.06177886940764 +4003 0.8996372951966941 1.750102729417468 1.026315656685207 +4004 1.733998069498973 1.145341865237698 0.9726719523195065 +4005 0.9684503627840805 1.07248767195664 1.746762734842668 +4006 0.2605879481581199 0.9715808124691874 0.2322274449410425 +4007 0.240882918487283 0.958005218150724 0.8962611803113022 +4008 0.3971432602300968 0.2653870926015691 0.9681466140135653 +4009 0.9637332505231847 0.2610348184734415 0.2557294503352615 +4010 1.736673456084995 1.022802586148124 0.2572919254229241 +4011 1.021269863497807 1.724623235987754 0.2652263121828916 +4012 0.8802835489284607 0.2543777189743943 1.732345187695179 +4013 0.2420102343579089 0.983775110244802 1.736770531413499 +4014 0.89279447751315 1.031527379910096 0.241893886391733 +4015 1.742944158586301 0.2505519504385705 1.021619381808867 +4016 1.73317335239813 0.9356414975775257 1.749261044511985 +4017 0.2428892127555904 1.74274963215336 0.9377953070008587 +4018 1.720159169582906 1.733643863015893 0.9656329191796669 +4019 1.002549644403078 1.754635420971 1.750897093623182 +4020 0.8292397002171299 0.8498496326864083 1.115078222240699 +4021 1.160610355908805 0.8393098625786363 1.136741550159041 +4022 1.412679653433927 0.8803031451077085 0.2546625544642286 +4023 1.834939187535929 0.5210359075825128 0.8906934595302722 +4024 0.490126942737887 0.6610305606025075 1.106301997394961 +4025 1.479819435645124 1.119691434839172 1.328398610094451 +4026 0.8682732909844971 1.325794027631462 0.5206659708825985 +4027 1.752265967635471 0.8322793433086085 0.5499174714981001 +4028 1.111205506052067 0.5388598995195519 0.289841344067257 +4029 0.8802721721594395 1.106296620837806 1.206398494988526 +4030 0.6591952816283468 0.8657516469373138 1.503661976065585 +4031 1.1556140373551 1.150992483700555 1.149376837621124 +4032 0.9522503840455093 1.067450932959387 0.7672124845718001 +4033 0.8515843785027811 1.467180098580354 1.306102147849141 +4034 0.2366136174276006 0.2309748876551093 0.2350913189569731 +4035 1.383830968891454 0.5476682931937863 1.19478214809982 +4036 0.2565757493170223 1.720732861057886 0.3285789543568197 +4037 1.766587204475017 0.2157808154194072 0.2351278520301144 +4038 0.2330549663068419 0.2328044127057296 1.780497847893402 +4039 1.512333818463607 0.8374808219384797 1.360875627615101 +4040 0.4821894020232232 0.6670086780201827 0.8493145465264724 +4041 1.738180588789537 0.2407084191370084 1.748689491202676 +4042 0.239805407992514 1.771296288321344 1.746593509082631 +4043 1.761661151654 1.774959574072055 0.2280911899234193 +4044 1.157675204483346 1.312692125486559 0.4822112132831156 +4045 1.525274964307444 1.729933934189634 0.8381849596592207 +4046 1.160629843132487 0.5466383969883976 1.760079896299979 +4047 0.2571586927123654 1.120531906041238 1.454094878959319 +4048 0.9610340418739668 0.8137522800430103 0.9830189075495983 +4049 0.6064993769002517 1.54006555037385 0.9110366026892365 +4050 1.741491169931456 1.740218009691114 1.75302570543305 +4051 1.693972198035463 1.128255937631877 0.5222885654428566 +4052 0.7422699146434191 1.031975052304588 0.9705639356660523 +4053 0.5002193562125458 1.146898997489702 0.6616391473429183 +4054 0.8499815375032188 0.5131169567938803 0.2500736247488345 +4055 0.8374189721541992 0.2365256998245971 0.57994976520743 +4056 0.9940925727184964 1.243165430498949 0.9868473389862367 +4057 1.163563371733125 0.5935582362813655 0.7902295580787713 +4058 1.284782856538567 1.641555911306828 1.469201275808319 +4059 1.195296674960272 1.389096834882964 1.167589105670331 +4060 0.5884941965524926 1.213901056917424 1.574262624976672 +4061 1.386775447167983 0.4372222723743024 0.7821704858489156 +4062 0.5289735245277428 1.342659871774378 1.110093670392112 +4063 1.307571805857645 0.99796605369411 0.4749191044639134 +4064 0.8103811084797566 1.235910695771378 1.416184152536258 +4065 1.508466005003588 1.298805706957183 0.7997641235518144 +4066 0.8257413977055025 0.5017456453343605 1.353317282702823 +4067 1.443390821118922 1.158168199753114 0.2697231030330745 +4068 0.8637456086128966 1.491762935205447 0.2210406250234411 +4069 0.6338570845941661 0.8609201381680084 0.522969381628984 +4070 1.161397663454337 1.467194264465236 0.2324221613331626 +4071 1.4659659075299 0.2424170935726586 1.158852669938162 +4072 0.5040016634774303 0.1668654037548662 1.148745963102234 +4073 1.262573918729182 0.978784195213375 0.9674968202442663 +4074 0.8471596945875033 1.771046419443958 0.5110446094143358 +4075 1.756827533414066 0.8366266462447893 1.468876742532853 +4076 1.75226958147216 0.5218650632052075 1.135149091309973 +4077 1.126203096840697 0.24659735702689 0.5119072377509103 +4078 1.509706670339799 0.2411042792570827 0.9098990634852845 +4079 0.8292232486234914 1.753855061506148 1.472397976366465 +4080 0.245578609529394 0.5486576073935806 0.8055194337206671 +4081 0.228340672200777 1.462047291077686 0.8638821820119045 +4082 1.500950780263231 1.16488546985488 1.765078737789139 +4083 0.4483092857871349 1.746548886225393 1.080197435551751 +4084 0.2451860072859723 0.5362220930209778 1.201862975603932 +4085 1.754645245206487 1.163848475936772 1.556239707859589 +4086 0.4788753671427178 0.8638879174985945 1.75326668723473 +4087 1.81601665816263 0.8458839777245746 0.9991698607409382 +4088 1.16483410848576 0.9831993748045799 0.219635816979336 +4089 1.487070978075241 1.768427848890821 1.110736960268207 +4090 0.4719342195018509 1.12135053123338 0.2381683025783178 +4091 0.8783017939043521 0.5145340201296058 1.749862642422717 +4092 0.234880277969603 0.8758540118206279 1.500799150322342 +4093 1.762488101181729 1.540112424578239 1.110899759098445 +4094 1.168397006752938 0.6107257403432489 0.4870436325212461 +4095 0.8649798715285163 1.487930686132278 1.744074664190844 +4096 0.9885527294975187 1.01378344584599 1.309115158205807 +4097 0.232355444476484 0.8845751789729194 0.4858441615579528 +4098 1.089340633877284 1.780895311307658 1.506902804253432 +4099 1.137226603343027 0.2301808299017301 1.517037527600392 +4100 1.442521901679532 0.7883280090328882 0.4756011342189085 +4101 1.748794858252255 0.5035161107522591 0.2698424559984741 +4102 0.2620335655030118 0.5246054473081242 1.76188849061607 +4103 0.5184454025641593 0.2387323353964033 0.2361393775462557 +4104 1.847428107385181 1.470081781656176 1.701185360975234 +4105 1.764407383695554 1.47911255398536 0.23970621146388 +4106 0.2622390801282231 1.468251201693382 0.2125562116593512 +4107 1.751400129912631 0.2380191559011421 1.48671782579001 +4108 1.040162134157825 0.2633716992262983 0.8101375662059701 +4109 0.5057453449722455 1.715731013166738 1.72949546226094 +4110 0.2581901978453809 1.773929585489942 0.4831751934083088 +4111 0.4969187096445244 0.2512289687085837 1.765661717830062 +4112 0.238812585374168 0.2352667310709974 0.518223602729747 +4113 1.764523169787791 1.772433934698454 0.5006603133684092 +4114 1.49475451205453 1.792677011183245 1.749877344690898 +4115 1.485939963176811 0.2525976771658051 1.770023649265256 +4116 0.2584490298122767 1.505648659345661 1.789353826653698 +4117 1.365797971159401 0.8446316460311156 1.599595392329003 +4118 1.529499878407345 0.2348680193682763 0.2493240073968866 +4119 1.141900586936871 1.758368942004063 1.040773786842033 +4120 0.2263144472419399 1.765339588270499 1.509681782708135 +4121 1.51683745958278 1.739284422217062 0.2663891277247529 +4122 1.750936528312997 0.5204150190614832 1.762960434446251 +4123 0.2187255461978795 0.5197469646384199 0.2372155936492114 +4124 0.222173483735345 0.9978622928341563 1.052598128373867 +4125 1.732873286885291 0.2560494120022961 0.5606091468626113 +4126 1.763840373424585 1.738505816199628 1.491647285420083 +4127 0.5411803027313485 1.740584734197486 0.2659437305608996 +4128 0.2277941971017922 0.2267308042226462 1.478974119385774 +4129 0.5859761946266705 0.422480948231394 0.7927203447858515 +4130 0.9718146778382997 0.8225112723178821 1.755826634001335 +4131 1.222125377855713 1.546205407192113 0.5960545047731025 +4132 1.128236185692803 0.5901084907157755 1.482119497476381 +4133 0.8655046711853341 0.5366675375990195 0.5630966367235293 +4134 0.4813591235923732 1.094705767721284 1.762316591220624 +4135 1.485868022076269 1.083710722508975 0.5977723266379751 +4136 1.461516584188943 1.533876874958903 1.218283000771394 +4137 1.186611233124234 1.364302485752963 1.511772487981802 +4138 0.780644740470576 1.275518969477439 0.7858131923398538 +4139 1.227074781588611 1.256239112388084 0.7604299426499858 +4140 1.583831430515626 0.6949093118697574 0.9776472725127169 +4141 1.131150506291185 0.8292145002079775 0.8355257830998337 +4142 1.425628388389247 1.163194806603555 0.8524258964179374 +4143 0.7610622546238219 1.434677399961992 1.562799384856745 +4144 0.494439689911385 0.7225121199889681 1.460374364721712 +4145 0.7812003547650439 1.512738169006862 0.5510214403725296 +4146 0.5281807944864662 0.4590184598896807 1.250822748272059 +4147 1.486400006930055 1.26538914689951 1.483187738059959 +4148 1.520340358276514 0.4959421738196815 1.270784918791109 +4149 0.8735516923634912 0.8698556308735916 0.5771193955576936 +4150 0.857374945197 0.5624177667034658 1.13859442767892 +4151 1.326900891057584 1.509735066266975 1.002247531635473 +4152 0.5688772843674925 1.280460135130074 0.475038299691918 +4153 0.7509787331409661 0.8234594580096029 0.70505661500359 +4154 1.851584656942463 0.9761740815948525 0.755243893702109 +4155 0.4869673044241427 1.545550031437875 1.265910760918412 +4156 1.029703459319234 0.7255040811906077 0.2210532029367529 +4157 0.7881574115383091 1.431703025849277 1.136774476906076 +4158 0.7158271602453224 0.507304640331493 1.556847675929744 +4159 1.128718475552739 0.8318131013565008 0.6145471348542989 +4160 0.4350831692896711 1.453483883987189 0.7038464809527685 +4161 0.4374318908180509 0.7358055877165035 0.5397261035290007 +4162 0.9026236315230054 0.5258836576150705 0.8753262070324963 +4163 1.235695299340692 0.9250892128736417 1.490719602400018 +4164 1.028169949030038 1.528423696879557 0.8137064163630606 +4165 1.521849198041203 0.9176105222953745 0.6508280996462291 +4166 0.9540281084164415 0.7556411542628712 1.511469188111179 +4167 1.258892868005608 0.4366294210779007 0.5637709562251872 +4168 0.5786579889739175 1.153928757746535 0.8809263159066293 +4169 1.100934711513126 1.596751447893086 1.744402876251184 +4170 0.2090919955673363 1.085787036104033 0.4336943154417475 +4171 0.6756171459074832 1.101823690596816 0.6327076819043451 +4172 1.362585835604654 1.30632763670715 1.140969736861814 +4173 1.130780132748572 0.5720069906052204 1.183348739487865 +4174 0.5790514968111131 1.093928111532706 1.128270365978054 +4175 1.414518145324027 0.6922018174229088 1.162702239353354 +4176 1.450411210750564 0.8545998305946483 0.8280290246628929 +4177 1.421977189607152 1.542545535717887 0.7363167454949542 +4178 1.348592277459558 0.4486798374898794 1.480681625836457 +4179 1.484575527531733 1.271379466623961 0.4451588977605103 +4180 0.5759325215971359 0.8250932194764751 1.263400095970216 +4181 0.2248785001006886 1.577803881441944 1.114047751913119 +4182 1.229802677883545 1.195238134371382 1.366378011370195 +4183 0.4164825941718031 0.8459047561658856 0.2459946277965947 +4184 0.952835285281146 1.211883855729226 1.539534864286848 +4185 0.4311746600492858 1.741092611594227 0.801289743260461 +4186 0.8586828479089997 0.3941873786588193 0.9646024199935606 +4187 0.6434110788925883 0.4456967412995747 0.4692166929527588 +4188 0.5484348957736248 0.9041213020668177 0.775322523435464 +4189 1.79694220533682 1.528507610236507 0.7502280152837376 +4190 0.4044801335508128 0.1376311781148798 0.8104212409528482 +4191 1.370934753950782 1.530276501477067 1.534808723278639 +4192 1.613072416316312 0.6568133631589688 0.7389583401511285 +4193 1.514180981813663 0.4887941882458336 0.5589374985026089 +4194 0.5409124233933921 1.468808338186434 1.403205776188097 +4195 1.485576466318963 0.547978864357507 1.560747452654758 +4196 1.397281516068126 1.486413923837834 0.4315653758744301 +4197 0.7621047638076148 0.2032720682638404 1.511370316333082 +4198 1.504250798056959 0.7507335179232998 1.800121882300572 +4199 0.911084516175425 0.8565491238869382 1.388974804825573 +4200 0.4898151465909464 1.050421899383821 1.301944409683603 +4201 1.128383505907075 1.839224501219745 0.3811279653448655 +4202 0.3896356251966721 1.134539306302313 1.023429500903587 +4203 1.269464987485581 1.388639470410221 0.8566475183860894 +4204 0.8568904587203087 1.438022351160076 0.9188400093078563 +4205 0.2098474801861059 1.547562143690991 0.465007834300868 +4206 0.4482687848649842 0.4426929320561438 0.1920033313710276 +4207 1.15352197456686 1.161459686941534 0.5315502081851058 +4208 0.6104681249330662 0.4800580463656665 1.030250871781628 +4209 1.791009848812345 1.532006346145023 0.4327063820679057 +4210 0.4533700235727608 0.1954544700612321 1.533196182073781 +4211 1.547250782396937 1.568438391548953 1.792324002881718 +4212 0.5512870470359226 1.684552157054632 0.5127542226724691 +4213 1.199970309662354 1.788570395572585 1.310409230698192 +4214 1.553011940913718 1.244455705988776 1.058762091227459 +4215 0.4400419266432168 0.5165689122744561 0.6444074317231016 +4216 1.009896882311606 1.773015829916117 0.829910943358066 +4217 1.795536371292273 0.484024104655913 0.4447417851776321 +4218 1.52080462765729 0.4631084932837026 0.1265230070893562 +4219 0.5201252410398501 0.2820382462779482 0.4032164047430674 +4220 1.565650097944633 0.4722729386323685 1.831175670646632 +4221 0.2573980760154397 1.543411528491361 1.609246343539189 +4222 0.677492975765311 1.224654367294488 1.816101904326131 +4223 0.7890903274369173 0.9798993571101777 0.426665274019233 +4224 1.179311841927138 0.9999502486181194 1.757958444424004 +4225 1.595277044660639 1.757460465353035 0.422562340431486 +4226 1.783168355574629 0.7771980115593161 0.1991337235590259 +4227 1.157369380793359 1.7747676980378 1.757488012405758 +4228 1.771900959985283 1.176629095636928 1.770560556330334 +4229 1.194841952375907 0.2543391623989191 1.771976683343519 +4230 0.2192220060718503 1.223452488195612 1.709263405067422 +4231 1.34060372168995 1.047082209565205 1.501607552608609 +4232 0.2262181409450306 1.787815929099277 1.166092755167149 +4233 1.759865451873646 1.831280323728861 1.100959761251873 +4234 1.60483081632651 1.011917812879091 0.9095419286490194 +4235 1.769343260694924 0.2409686865454602 0.8189328073363205 +4236 1.144575591184505 0.2485839885222931 0.2447032427865401 +4237 0.2328134293540983 0.1425389857993206 1.201917624635153 +4238 1.035557498861752 0.8891867031213874 0.4115341028188912 +4239 0.2231858377236616 1.143231491132429 0.1718289190178184 +4240 1.158682713753261 0.8399016196928198 1.385624616303129 +4241 1.838887654352313 1.306933533122151 1.403364298966006 +4242 0.7960470223469781 1.755550150661537 0.2188410725363388 +4243 0.9589529781643745 1.528032133909918 0.6409415971009628 +4244 0.6816476807399394 0.7534308482842307 1.786084987312833 +4245 0.5242403842333472 1.335069582724474 0.9383910431640871 +4246 1.312322924576532 0.209344853678523 0.7344591297130806 +4247 1.026707972074392 0.3909962382992633 0.6888799947517128 +4248 1.786526739236357 1.560231548749986 1.556797482299969 +4249 0.4069494331580064 0.4584113212372182 1.853377541294379 +4250 1.79312704978128 0.4412201019539568 1.551056603769513 +4251 1.552072473783727 1.869879342104183 1.553661323049741 +4252 0.2481688766398974 0.4390679229749264 1.590945582782046 +4253 0.4411926507015045 1.560932175272374 0.2273828204244713 +4254 1.593578814044927 0.2066284956067883 1.556738858432107 +4255 1.607262980829256 0.2318093194756921 0.4239743771577439 +4256 0.5579568464040323 1.257420697581306 1.426035163123341 +4257 0.4614787172622494 1.537566020288296 1.794074735527868 +4258 1.586403082530903 1.557660036349198 0.2228822663631169 +4259 0.2516014710497533 0.4868445680807966 0.3964102982661396 +4260 0.4836945828490347 0.5434827856241577 1.527205393390478 +4261 0.427647980147955 1.781674899332885 1.585746745859717 +4262 1.193045440095797 0.2138200030029678 1.141473936595912 +4263 0.7430656860626458 1.359008777809084 0.2520594960105015 +4264 1.246369732648533 1.286207803391308 1.76617355710561 +4265 0.1729823276250554 1.258670577633419 0.6666321338527795 +4266 0.233550625288594 1.311583964607326 1.269128645889017 +4267 1.253216103666867 1.750772725073851 0.6969992862897514 +4268 0.7265808618804637 0.6874054097044073 1.18111760920474 +4269 1.786788372357447 1.274659309476619 0.7778922831045454 +4270 0.8073457365458689 0.2379289025865735 1.018622072060222 +4271 0.5031019885486137 1.74557782161532 1.23473144557574 +4272 1.359903652481214 1.08820093302612 1.183340478083775 +4273 0.7005537139781011 1.341594722611324 1.236302484830756 +4274 0.8995235896090672 0.8923395527178704 0.8416421380900274 +4275 0.7198074293305015 0.2118627310788631 1.341768783723814 +4276 0.6968466025874945 0.7486657988842443 0.2356572919485921 +4277 0.6981566699235896 1.837654153109206 0.7688065147282864 +4278 0.1842123356649498 0.728500724327405 0.1954810556780128 +4279 0.4038276205746781 1.437034135176332 1.200128337423564 +4280 0.7525473107330466 0.1407057750336345 0.2268668944772759 +4281 0.1616566787013753 0.2083386467478003 0.71407204826952 +4282 0.1793151323561944 1.175794898440699 0.9584445494037778 +4283 0.1877198230728106 1.783995187959471 0.7183189795471047 +4284 1.326269477358529 0.4698938702471027 0.9111727980312838 +4285 1.846153412161417 0.7699123884554094 1.770546048629136 +4286 0.1620310494174131 0.7513545524475045 1.793292586277077 +4287 1.218500457200361 1.82284090817042 0.1640225465909196 +4288 0.7461157721611517 0.2253771194496852 1.790871094492759 +4289 1.78081463676729 1.845674948114591 0.7312140336846 +4290 1.749142177118516 1.319691337679134 0.2285166859959489 +4291 1.038854252245631 0.4441028800633458 1.157219270082779 +4292 1.765210145152547 0.228466905919556 1.20759565983684 +4293 0.7573459882785984 1.850496981952266 1.785594762198103 +4294 0.7020205596567686 0.1670154988652598 0.7663083164344513 +4295 1.087440671401434 1.482233984440265 1.23818221001657 +4296 0.9420773316136455 0.6456954736185547 1.716676833245097 +4297 0.6624821417714125 1.033115533937421 1.531808772788366 +4298 1.092924013648649 1.08917116057051 0.8580053716666666 +4299 1.345840012307527 1.794746962496351 0.9833014227451854 +4300 0.4154604119580966 0.9818936415157843 0.781768913340164 +4301 0.2127982567115063 0.9918588196062416 1.340961385167303 +4302 0.3346590469821052 1.217328143182541 0.5959710527510375 +4303 1.260421002143815 0.7497883532357855 1.847795491882811 +4304 1.134548330757765 1.189121578868292 0.1706913910871715 +4305 1.024352904737176 0.6043505340977579 0.4732219056870872 +4306 1.54020651816312 0.9978528670674787 1.774461413810479 +4307 0.7872921847575102 1.575850842997081 0.8977866481944785 +4308 0.7985983824065417 0.6559235299974933 1.431038793316112 +4309 1.831105988705315 0.4693001428961931 0.7180291468061157 +4310 1.821841304085252 0.8447506625897834 1.315122395974553 +4311 1.286483947687205 0.8398741320478262 0.6480770787339196 +4312 0.1463417378624156 0.7936119212837947 1.104682485052845 +4313 1.514850044556178 0.752257296848057 0.184776684350715 +4314 1.616443039318304 0.8868880391208468 0.1925018441488545 +4315 0.1480103590833111 0.4704523770013775 0.9421128205784329 +4316 1.348226563762782 0.7076661966909475 0.1698415017459265 +4317 1.77980430980579 0.7064408841957925 0.7412673878374239 +4318 1.569198755957057 1.363275633065049 1.360929234309091 +4319 0.1492168384976068 0.707209088373975 0.7618704372045622 +4320 0.8048362912668049 1.780084096557627 1.300075840059529 +4321 0.7808430770487029 0.5800388808466378 0.4096877338794223 +4322 1.832076985247908 0.3697810110250244 0.9291356133905447 +4323 0.4316444510391259 0.6376742329613999 1.319066090401945 +4324 0.5210011777899184 1.610436147591672 0.7242674517833375 +4325 0.9356508856389149 1.350208844538903 1.432401238763848 +4326 0.6896106565924069 0.8482360580616658 1.067539590814348 +4327 1.249174839550724 1.468016255466684 1.607181893104734 +4328 1.760445078038523 0.6863442162578176 1.263278391776026 +4329 1.842823798845007 1.366053581664496 1.107708177715521 +4330 1.586999421452644 1.542998118086833 0.5895669819260579 +4331 0.2193784785975021 1.326988451157233 0.4614844338407033 +4332 1.864634626122255 0.6485801781979109 1.092502443134588 +4333 0.9439490578555245 1.36587913220991 1.18171595430236 +4334 1.557984234099504 1.548645965876498 1.332320911872789 +4335 0.5741707924419572 0.7734738361707745 1.603469508817267 +4336 1.342435020043447 1.047178597648458 0.1695351909914458 +4337 0.2249430169719223 0.699479974142918 1.315674574263908 +4338 1.05026939996348 0.475277695555076 0.8209516310246545 +4339 1.032932621525501 0.1225500144339084 0.6809318518801546 +4340 1.537644430172995 0.5876488042544831 0.4395350056107341 +4341 0.4827306982983631 0.8822258829520853 0.611248314636199 +4342 1.310272504830978 0.8886044118220647 1.113510244181893 +4343 1.3682543544237 0.4463325362372985 0.184377601578013 +4344 0.7059316701040348 1.348959562924501 0.4336434228235896 +4345 1.812706152794214 0.6794423059172783 0.448734282599735 +4346 0.5028494604559293 0.8257153746286098 0.4175151375191091 +4347 1.523597303842803 1.287870921893889 0.6302982062232816 +4348 1.528873947151492 1.803649665572528 1.280194594432152 +4349 0.7049084696325936 1.54736637490644 1.401463422390701 +4350 0.7145935491082718 0.4776669286673074 1.751410912716923 +4351 1.436143339264526 1.315971736180095 0.1948019018637609 +4352 1.170831248142127 0.6713308559892357 1.035585223597474 +4353 0.6886006814467217 1.106659302946941 0.2187107728512237 +4354 0.9213046034022833 0.148664005079494 1.567102961892197 +4355 0.4792855374170289 1.261958184717887 0.1776288668293467 +4356 1.557837942074967 0.18245592273774 0.6734431658057811 +4357 1.566707247077222 1.422524732102434 1.531556434035148 +4358 0.6221627056917683 1.543403758337294 1.502011079919974 +4359 1.745451722263524 1.534494202563101 1.291776037308274 +4360 1.563899423655791 0.7736742224909281 0.5961264909602704 +4361 0.2222811706701472 1.572072045346772 1.291030527059241 +4362 1.256319416951915 0.1510537805581569 1.317525933482562 +4363 1.318645551562263 1.784255609550149 0.4699374147404332 +4364 1.382734317026718 0.4239962124875539 1.304981855231833 +4365 1.306359862823101 0.6847179497029144 0.4574229205213561 +4366 0.1993237786831003 0.6776352654726664 0.5863228219921711 +4367 1.55615340872126 0.4652012293629466 1.419444130136921 +4368 1.368251406971498 0.1750334653310285 0.4145780582263415 +4369 1.840273844622456 1.104896834349783 1.188414133901551 +4370 0.4585906735992396 1.341333050049783 1.804563145608186 +4371 0.9497787822652736 1.239792957046881 1.851013445569192 +4372 1.608717487666122 1.026137436817274 0.6513102320279107 +4373 0.6173006819405611 1.466842347637865 1.150642836395972 +4374 1.809885226723707 1.272452625717654 0.4230964365165512 +4375 0.2173603264983957 0.9584818964066478 0.7400700694599222 +4376 1.817342028214795 0.9277775694236797 0.4093043115852671 +4377 1.068996285300866 0.3820640381257374 0.1356279423276235 +4378 0.7258835348332658 0.4515134489267497 0.2048413281772313 +4379 0.446582222867961 0.6864666320073268 0.1903393376757672 +4380 1.512657226951161 1.806623890012272 0.680667799026437 +4381 0.6764988317103714 0.2019040218378911 0.459333872074376 +4382 0.1586353931985708 0.4236357310303763 0.6388143032996976 +4383 1.23047348551676 0.1594271435171678 0.8622128080814705 +4384 1.320252369540998 0.5025792226410667 1.83182436889907 +4385 1.362384610050722 1.547470590060374 1.786773361282983 +4386 1.198571788205594 1.472904497183502 0.4130803398297725 +4387 0.7101335221551656 1.430332992210821 1.848398126250345 +4388 0.1890494331956613 1.319292314820036 1.557886061293136 +4389 0.2632778724307442 1.530462138689084 0.6872547695848282 +4390 0.7610459151955652 1.81386237557487 1.101716558475007 +4391 1.599695196070838 0.9286051551029872 1.148715781462332 +4392 1.056559422810061 0.1492862477278974 1.292774078154164 +4393 0.4263158441422258 0.1948930492862054 1.351848644972311 +4394 0.838698745666918 1.186221535098747 0.1304698119183884 +4395 0.6735225657058016 1.813300908302067 0.4474970443537934 +4396 0.8647831483425304 0.9246871279643505 1.664903536626427 +4397 0.6520881825623908 1.668684476339718 0.1661565890854253 +4398 1.585116714201712 1.49560542323992 0.8252253848724541 +4399 0.4119406330384877 1.876377829557355 0.7278968846209171 +4400 1.578285764099729 0.6568691532342464 1.374605062622783 +4401 1.382336010347964 0.1728970033206082 1.578066175515801 +4402 0.3630610024768965 0.1624995020518647 0.6374707799860636 +4403 0.3577092970208592 0.8400562593852596 1.096935858769706 +4404 1.084381540925828 0.4598686856552567 1.346425472396356 +4405 1.429644820393039 1.594959622811007 0.1555470996225242 +4406 1.273660155883511 0.6598919381817127 1.242088674131969 +4407 1.490435539611797 1.427780458512338 1.84882133319049 +4408 0.6127153740128987 1.582008566517614 1.820697552875119 +4409 0.4111283032506592 0.6309228028676251 1.822735836465118 +4410 1.354955475135813 1.826092385446258 1.589148657528679 +4411 0.4720169887904848 0.4175800220154219 1.41130931285229 +4412 1.825496189307769 0.4331561435146608 1.372347511009808 +4413 1.572118018652504 1.398254588542237 0.1728858258591384 +4414 1.831188488848233 1.338217167640729 1.603078888410546 +4415 0.4477849028699349 0.5537178875699443 0.4088850135608608 +4416 0.4220597776405692 1.804315216039836 1.386270243040558 +4417 0.1940138485851509 0.6608087363321561 0.4136994573191358 +4418 1.107903231380719 1.618014336928955 1.146424990980763 +4419 0.9069725656022325 1.537108786145446 1.171066781433594 +4420 1.814697408737561 1.624365358540766 0.6199980654588562 +4421 1.631722302819936 0.5949870199407065 1.856391948799266 +4422 0.1778867813076819 0.6662080886599284 1.530573226414659 +4423 0.8418489417847247 0.175366075609886 0.8498428032136061 +4424 0.8686074604853279 0.8285300564896817 0.1943549620596536 +4425 1.312107720989406 0.6560776413426762 1.566831849451681 +4426 1.59276957638036 1.069348788646132 1.229745749624976 +4427 1.463948756686799 0.4304019268392659 0.4221065861418548 +4428 1.043561067648425 1.847298600632515 1.159021054570402 +4429 1.427121377159507 0.690855283024008 0.7938363790136888 +4430 0.8549806284687054 0.9671262277130703 1.838449837728015 +4431 1.328448592819424 1.141704363778554 1.746159375863817 +4432 0.3794527753118007 1.550490322293096 1.45536142780042 +4433 0.3180749691975923 0.8304564722808848 0.8967937904502443 +4434 1.057972902323782 0.9513316116087601 0.7419667916140608 +4435 1.060949313064282 1.163832395918803 1.377983939294014 +4436 0.8505860698900061 1.165948569264412 0.9081108594104083 +4437 0.9214711732102089 1.79649249961553 0.6922717156719521 +4438 1.125643723884972 1.152705183035397 0.3536193811565756 +4439 1.021638189587737 1.2145089068021 0.5776147777597158 +4440 1.15528852679292 1.619286943494456 0.1644255861527633 +4441 0.1791806911533818 0.4327143844860554 1.278865475182562 +4442 0.7070292283641326 1.772804460791484 1.555428822116708 +4443 0.119566247470879 1.126916862308033 1.082849818818225 +4444 0.1464976825523739 0.3253426247853805 0.8012082660882489 +4445 0.4172164496109841 1.578880502440692 0.5988527970453598 +4446 1.800754771004669 0.6275850477469481 1.544181812946058 +4447 0.3625451484505579 0.1760926483294785 1.09595769325928 +4448 0.9637098946510765 1.221608599993688 0.4220519971107655 +4449 1.586050096179498 0.1797199792630046 1.372647185615692 +4450 0.6345241217179476 0.1442949768140264 1.599958745522196 +4451 1.620491472471505 0.1609995555521871 1.210057201368125 +4452 0.4114207952850428 1.219717048995779 1.503930692711896 +4453 0.7221428967126127 0.3517870691659628 0.5397671870571381 +4454 0.1573938187361158 1.616239786782919 0.801626792219498 +4455 0.4262342406178603 0.6604735226483036 0.6843984153675087 +4456 0.7017271550291125 0.6019533856440382 0.7918242459775361 +4457 0.9277954406497504 1.85131281693344 0.4025843361489767 +4458 1.15605442539161 0.3487107549833245 1.085669568240848 +4459 1.845661467415933 0.765336735312651 1.591438045962525 +4460 0.4133662148660962 0.4576902530293184 0.7891012830476901 +4461 1.859002052365353 1.133263055461713 0.817861768041928 +4462 1.341244383513319 0.8095081015175802 1.42432822557146 +4463 1.60128300571817 0.8212733614790392 1.560719172165816 +4464 0.8277554618020936 1.079423070330412 1.604425608724135 +4465 1.649853707771271 1.454502743565538 0.4484709030893515 +4466 1.079128131829378 0.3965263648548498 1.816279835230298 +4467 1.623577073726411 1.444078664838871 1.265559283714292 +4468 0.7419675022245764 1.438018972159573 0.7473510743324013 +4469 1.421524005103712 1.368832380449482 1.017511023109729 +4470 1.805526561567656 0.8218213258428644 0.8273330296844198 +4471 1.615694242397622 1.125088353335588 1.650577111453184 +4472 0.5965898950063402 1.034014400042721 0.5342832625674131 +4473 1.144873392777314 1.572537662540559 0.9802333120708284 +4474 1.115124298149637 0.7139309332407285 1.776742334055137 +4475 1.134296552859432 0.810882988267829 0.1401418088641791 +4476 0.1617673480280267 1.067414391238922 1.606938329649383 +4477 1.43274594124069 0.4147991674222697 1.619046907905366 +4478 1.858051846935638 1.533598951878636 0.9108259178450439 +4479 1.187862855298757 1.380537333051997 1.011969482473367 +4480 1.345841335848163 1.807324070977834 1.205387132423159 +4481 0.4765438642513913 1.2928778823235 0.7116759913044429 +4482 1.043839784603418 0.5702142541730253 0.6622264815647977 +4483 0.8398294246338133 0.402594236214731 1.495155651713653 +4484 0.7154579118199695 0.502645170822849 1.245215706780006 +4485 0.5305796807495196 1.376181158032963 1.279251699272018 +4486 0.8769553984978238 0.7149542145711836 1.824550620804771 +4487 0.3043526054398221 0.3923743368201466 1.100699332225454 +4488 0.5809427935608669 0.3866205105767109 1.539986222642313 +4489 1.256485455377753 1.826428673527395 0.8497289489496613 +4490 0.7724398236448337 0.736848181827952 0.5387395243247093 +4491 0.9477475834150734 1.837140179316532 1.595618160980778 +4492 0.8561699576588208 0.3654348000367341 0.1846258860813713 +4493 0.1683381048989061 1.732335364175755 1.33553114097245 +4494 1.104989413378084 0.353378967016785 1.64011689985623 +4495 1.753934966126344 0.1515046123413444 0.6798740331978537 +4496 1.326979384571583 1.736498357087713 1.825061562977298 +4497 0.7991482011265343 1.035932041761261 1.349462881546349 +4498 1.769589171993597 1.139751488344164 0.3656799703658237 +4499 1.103575369525863 0.3071536225956492 0.3694639493571513 +4500 1.816569715932753 1.748166864289989 1.342702013000419 +4501 0.6710167430134953 1.853411505349869 0.2883521770982164 +4502 0.3050941195180299 1.328363167630815 1.85384101849105 +4503 0.2580351044232839 0.1410605807742317 1.342755975933231 +4504 0.8867635433644419 1.622084187657387 0.3635618306533165 +4505 1.336986027422881 0.2759398045635231 0.1388411237340963 +4506 1.629664269062211 1.79843314368606 0.8937317035948603 +4507 1.274981179203555 0.1885712501012292 0.5865560976508918 +4508 0.9094548994441858 0.1702097715218382 0.6865881171589331 +4509 1.395854307524772 1.148069196714091 0.444626304078063 +4510 1.337177801643114 0.1497051260082198 1.75584577813951 +4511 0.8144354627324013 0.2385418775708699 0.3876416868282571 +4512 0.8606287964419577 1.840651749412541 0.8707290094717048 +4513 1.857556651823849 0.9233193479291515 1.151081868610989 +4514 0.6329942112676126 1.27852815135191 0.8570516649798259 +4515 0.2258682190828174 1.31099596118703 0.1340612051942682 +4516 1.857041736735799 0.5989904674276607 0.292090804594218 +4517 1.626574214637094 1.691473154932663 1.057250318012763 +4518 0.4136512386225655 0.9916500414676808 1.130441409003033 +4519 1.783494677973464 1.330342833539715 1.81449963914165 +4520 1.86368833917923 0.3811772373310351 1.21395827303672 +4521 0.1624255851354507 0.780302608409124 0.3416100262987801 +4522 0.1435490720645927 0.7497229530826165 0.9411734218982105 +4523 1.604190334533135 1.24497950132693 0.1445400037206445 +4524 0.1777242973697008 0.294887580207237 1.089521796867804 +4525 1.654382981254655 0.9098453614477955 0.3495725157406104 +4526 0.8576225604273906 1.049334542083684 0.5776393541760588 +4527 1.117676354246007 1.157482724549491 1.816173095504079 +4528 0.7660545240242679 1.64499204904354 1.857552788482026 +4529 1.329621710053617 1.352021558421114 1.539930736602866 +4530 0.3046401064763334 1.10376767792624 1.700646637922962 +4531 0.6427215242337283 0.6897972658177478 0.4120361446130071 +4532 1.664171143877474 0.4492042571944096 0.8800958168917637 +4533 1.142020875166458 1.186815768152878 1.004321371239263 +4534 0.1582867089329738 0.8096666470818245 1.65233413792946 +4535 0.8040964340624542 0.3887272520179421 1.853648029309999 +4536 1.361147927307153 1.249504291941592 0.5351410649586469 +4537 0.6085431368666516 1.073212672091602 0.3718678886867497 +4538 1.672811212358803 0.6013422081057417 0.1427418606627439 +4539 1.655851839076683 1.401620267244957 1.07549526799907 +4540 0.3606154408915012 0.7718349448245032 1.863247478800393 +4541 0.6615237170472583 1.579703478795225 0.6323782825952665 +4542 1.145234440694957 0.7284705895086085 0.7228459047044381 +4543 1.596203216105088 0.8781418214723865 1.822337394162129 +4544 0.1573663617026525 1.106133239509604 0.7961720876206878 +4545 0.6623689224544181 0.8921550224753977 0.9193259753261275 +4546 0.6619980217768459 0.4562738149439753 1.394679366727728 +4547 0.9736669247965314 0.7839333469791738 1.138182226451978 +4548 1.496294479893771 0.5569924085865615 0.8805782462788512 +4549 1.643111372962866 1.177834064267229 1.398899524802478 +4550 0.8750879967437153 1.270729277641082 1.309022529393073 +4551 0.9113043039757022 0.1457544171909292 1.131136514218403 +4552 0.958118888546807 0.599249950784371 1.420286177200547 +4553 1.222920700360287 0.1435020050946828 0.4150820182608869 +4554 1.642409158087926 1.177576789985578 1.818062692523406 +4555 0.9733572961958875 0.2030859070749497 0.4155663079746585 +4556 0.2432356658323051 0.5805120531113565 1.600981899583606 +4557 0.125068364433309 0.5840807743164466 1.312391459201968 +4558 1.850562234577109 0.9775544829587719 1.45292126390708 +4559 1.233570843888976 0.119374405035686 1.623384196492325 +4560 0.8767869219634052 1.689512799478417 1.601775528276379 +4561 1.170759885470206 0.368803605275428 0.9187943751012663 +4562 1.637469588625026 1.871948700802196 1.033525217599478 +4563 1.586717721416878 0.3317063179331296 0.5526409449108991 +4564 0.3879990574642557 1.456063529597847 1.697196332591602 +4565 1.110566894 1.585932131828065 0.3299077800927955 +4566 0.3472304282333775 0.6547438684618312 1.171390788912065 +4567 1.274832671622195 1.530315572996639 1.283233150613544 +4568 1.546304823528425 1.159584722921086 0.4823888486238725 +4569 1.012304451911507 1.413229237442268 0.1866587444648209 +4570 1.473022195808626 0.8199977627151364 1.06820263427839 +4571 1.422543529323677 1.713901617436573 0.3975566093290865 +4572 1.414111380939154 0.1590954533470172 1.034474288906005 +4573 0.1465518948214398 1.507909160365477 0.9983401602602889 +4574 1.868883231611639 0.6926067286610963 1.419715614894723 +4575 1.736658405792962 0.9400621038022092 1.577161041013262 +4576 1.833379955006583 0.3151616113942544 0.672520113120101 +4577 0.836614367294876 1.479885618849916 0.3777494025486581 +4578 1.484339353897179 1.018492189914392 0.7864555252308785 +4579 1.872685197826382 1.203287011037474 1.652507324172205 +4580 0.7893709936448631 0.1853877131889961 1.655853713656241 +4581 1.680041179742566 1.308098352570887 1.488054057897526 +4582 1.337650965934078 0.3630036074034768 1.157593800631145 +4583 0.8334487343381944 0.4099072780602659 0.46234629719865 +4584 0.3171476425550541 1.611724051158198 0.8688644105951133 +4585 1.181975284804786 1.40211608269892 0.6732113388557255 +4586 1.615732150662596 0.3228550563080019 1.123477005133243 +4587 1.880565480795777 0.9307770006795512 1.86395080511104 +4588 1.799732825751823 1.867734249451333 0.905600441574118 +4589 0.924229336972906 1.858546027079948 1.873484348169036 +4590 1.455028587803947 0.1387154171171656 1.301579539470833 +4591 0.6859885770855788 1.855439274463944 0.5799424987835579 +4592 1.021265508414596 1.08084902967507 0.1331462365628639 +4593 0.707358406330167 1.121604574697804 0.8289777115891684 +4594 0.9768360833955245 0.7665709147051 0.5466395339249472 +4595 0.5633327218570319 0.1356426370957157 1.301059388830716 +4596 1.874887850898696 1.048667816054242 0.1342064733546459 +4597 0.7407616592651545 1.299327968874228 1.520051545040469 +4598 1.004120839934211 0.5537651937764044 0.159720252701005 +4599 0.1260429389610451 1.423747333575512 0.7202575368425049 +4600 0.922955806606782 0.1379383678620221 0.1467274652675356 +4601 1.55136926450825 0.5965106115446166 1.101468411218052 +4602 0.1417694309140883 0.9185341023893626 1.84701509761811 +4603 1.864085839162696 0.1385954155308388 1.074728669782714 +4604 1.784324613242211 1.000023292062905 0.5916084017859604 +4605 0.1399196288680583 0.8912956153202316 0.1457912527915944 +4606 1.060045978794716 1.848579939774155 0.1969514881290164 +4607 1.261709423606086 0.4890430283407346 0.6987201039639589 +4608 0.9042148799084858 0.1431382181414473 1.859330149639241 +4609 1.159714102024307 1.014268945376794 0.4400695039691896 +4610 0.5767007001999277 0.9359255537065146 1.146299848153201 +4611 0.1389429161705029 1.875241093000615 0.8843939294822423 +4612 0.1892298075733848 0.161711647656244 0.9009966786795572 +4613 0.6107405745410237 0.811607340539797 0.6663588918768156 +4614 0.7121965956838985 1.87069033397319 1.412693489521288 +4615 1.206441520421374 1.856234065829236 1.625353090245101 +4616 1.194273889298666 0.5046823139748295 1.598927329171514 +4617 1.14135445913601 1.30900690916923 0.2949937315482952 +4618 0.7468747025068825 0.6349844581048051 1.777087010112529 +4619 1.239694105302905 1.361096296737626 1.317637440071601 +4620 0.9211140643189226 1.643109677530222 0.1660469680123658 +4621 1.052411260929418 0.9541145464436825 1.641563584801264 +4622 1.224568758665306 1.260185302452089 1.212405835176279 +4623 0.1355103691692135 0.6128198800756903 1.070555718803577 +4624 1.621483948698254 0.5218360748489785 1.712845821875146 +4625 1.861567085220049 1.218193802699935 1.059097816843092 +4626 1.389261515745705 1.865352414026155 0.821044381707785 +4627 0.1864950616138267 1.162182771097843 1.26534673499927 +4628 0.4878588260317951 0.7497232860258558 0.9629704755985145 +4629 0.356656320341615 0.8857970244717855 0.3661034906372412 +4630 1.472661166572946 1.612283951873155 1.655744771116878 +4631 1.465506324460457 0.9656401428917741 1.224172752673785 +4632 1.387195657844937 1.166107155836649 1.024092909480341 +4633 0.3826518555802886 1.872880500564931 1.225025615569445 +4634 0.4222722382173676 1.865481829057724 0.346190954412419 +4635 0.8958179633100265 1.614002303614135 1.443946355890412 +4636 0.3421127081619126 0.872852881147365 1.648994188310491 +4637 1.848747753088734 1.132683062766477 0.6694134354956878 +4638 0.1242292467732822 1.353642110783951 1.706593713522612 +4639 0.2840985339889983 0.4106254068386188 0.5266183070811006 +4640 0.8819804238500265 0.6491257061657185 0.1584974075953792 +4641 1.39448198441387 1.238023058649469 0.6909607285891337 +4642 1.240307515135474 0.6168756588041967 1.849089003109509 +4643 0.8857002445151413 0.5531969030436948 1.597481675413011 +4644 1.021792028232291 0.55827826837966 1.836139145570485 +4645 0.5872041994197184 0.9850550990745625 1.417158459455815 +4646 0.3561527638848893 0.2692527379183536 0.1686080033395479 +4647 0.6100606606205311 1.040586334949404 1.860901326671889 +4648 1.823676225474336 0.3910982221636652 0.3482890443146014 +4649 1.180777474427141 0.4461553872961279 0.4406334337472707 +4650 1.82959859269355 1.637507504293874 0.2918782218466111 +4651 1.240794067632579 0.5242685747142394 1.341557211539043 +4652 1.702731991179217 1.628115678222981 1.855487557634582 +4653 1.373337852583094 0.2881587787123115 1.88088360098116 +4654 1.283651818464772 0.5699804183502114 0.1494774933941082 +4655 1.804532962272909 0.3708673193158973 1.814361654708839 +4656 1.726388849028011 1.860305751152843 0.3662427525653102 +4657 0.2550244927780371 0.3846725224412119 1.872119881854703 +4658 0.3767503808697418 0.1793700497532072 1.683235957079329 +4659 0.3735359795259884 1.744407878153125 1.8674844166591 +4660 0.3660077268619378 1.057265906310501 1.861957744724986 +4661 0.4717700801799639 0.289791291266371 0.7198487788237505 +4662 0.9691228691507016 1.82368222568764 1.415315987688134 +4663 0.1548656368374377 1.62367609659121 0.2873294042143821 +4664 1.646500974821721 0.1611551232069016 0.9225127524079755 +4665 1.213619029097527 1.460399849712147 1.855787224933974 +4666 1.61106552321482 0.3159690580228382 1.856646314625032 +4667 0.3019208788261933 1.85417194338835 0.2267579447776448 +4668 1.880510154546118 1.364073425233726 0.2929482127078359 +4669 1.811557119152599 0.1804303874748103 0.3950796406838153 +4670 0.3677464249582815 0.1642146027271837 0.2912414908820823 +4671 0.6469023470394489 0.296485181475837 0.1253269774133164 +4672 0.446869837874915 1.132339086079443 0.3787176104914824 +4673 0.7897757705250271 0.8163781495391103 0.9574910324510039 +4674 0.5633967327250803 0.9208965832720535 1.623066883282957 +4675 1.7112887469847 0.4198882476774922 0.1404855969378594 +4676 0.3692213429065583 1.598896048513228 1.178877060051727 +4677 0.1249049720167298 0.4231083699267991 0.1227305071250416 +4678 0.6213982816879535 0.1174296915373179 0.32115683823932 +4679 1.176788049622808 1.650939972966439 1.59797754243598 +4680 1.130308209087876 0.1272241923460081 1.005967700263688 +4681 0.1420732737484507 1.186912297508997 0.5285894158630703 +4682 1.67730905126929 1.87530091338578 0.628559664878618 +4683 0.2685864189595675 0.1214796059318257 0.1055075915315661 +4684 0.7092169418894126 0.1064176004009971 0.5724986915799851 +4685 0.8022686257658661 1.827918000068036 1.650110402840272 +4686 1.827856945339286 1.814704622384927 1.602330090640626 +4687 1.651049617958633 1.352506210598458 0.7582008250109081 +4688 1.59702872485267 1.862048780834522 1.865495070175053 +4689 0.180159459005237 0.1426287408633159 0.3190170563361899 +4690 1.845846164294835 0.9893108158213816 0.9054012399443558 +4691 1.840111569254042 1.665277427679877 0.7783500963374085 +4692 1.410614698598626 1.257687750379353 1.886886780694553 +4693 1.861339105213281 0.2899234706987192 1.559835110916991 +4694 1.854876046421503 1.615649740115622 1.723700098470674 +4695 0.1479525619664495 0.3829274939921516 1.734094919445298 +4696 1.632904431104935 1.848751935439549 0.1551603635254283 +4697 1.440761269065254 1.654373233097508 0.9927627825404047 +4698 0.2451616873482083 1.883880530624421 1.622494962627191 +4699 0.133566345887898 1.731216868980491 0.1656378966010176 +4700 0.6148746717725059 0.2440344844385876 1.05810817578639 +4701 1.663929010017543 1.857091320715682 1.38336201573687 +4702 1.561841496266191 1.004018814018748 1.390462962088145 +4703 0.1575914668325326 1.633030614150833 1.701112391947839 +4704 1.133293107866375 1.13555954877342 0.7179543808216269 +4705 0.4136078011538221 0.6121603713648592 0.9899059249773658 +4706 0.1651897517105562 0.1520436337622783 1.635449050963 +4707 0.3744109674415144 1.403229293833781 0.9443740270973596 +4708 1.506710314389058 0.8515904930728202 1.675671095736177 +4709 1.624356876048101 0.1769689807713526 0.1604486474709087 +4710 1.613900480905941 1.627411342557454 0.8940885479188033 +4711 1.197030968167929 1.775201881306657 1.167120002763026 +4712 1.401493796189144 1.688733268716408 1.260527961637503 +4713 0.9631828789207539 1.608196770895615 1.812046001509973 +4714 0.4761067022005247 0.9626695287187977 0.1521572236003237 +4715 0.197092379098108 0.955777787575081 0.3797904344916997 +4716 1.107671124264991 0.8920269116854868 0.9801079161349101 +4717 1.74372362559218 0.1405241068998208 1.612280767459874 +4718 1.732621971105639 1.60759977822317 0.1445150237675279 +4719 0.6889100783039371 1.517714070324429 1.263843864997037 +4720 0.7443340223962747 1.504197621055546 0.1421205768750368 +4721 1.596906729959757 1.712897514932514 1.406040099085701 +4722 0.3429979801503267 1.057716103524024 0.1394549043572024 +4723 0.276224755500538 1.613268078450446 0.1559182377591221 +4724 0.7660153966559353 0.3618660169863861 1.332133236927678 +4725 1.678214280733413 0.818797221458214 1.336442871578331 +4726 0.1413210480559922 0.6466498429796858 1.702794025436593 +4727 1.030988469949893 0.6817340574936934 0.8290264857416334 +4728 1.391859125245381 1.873960059610416 0.3163610956987508 +4729 0.7766588663519927 1.016726044115591 0.1758547027083316 +4730 1.212288996967262 1.000533458822836 1.173564404500826 +4731 1.007212103820005 0.9070040073851824 0.1824095281277467 +4732 0.3631367288085749 0.2494809002634887 1.856653222414338 +4733 0.8137052337636006 1.112412883779839 1.759024892439716 +4734 0.4306883894214497 0.520497812063809 1.118672216753845 +4735 1.002926978746685 1.405510340090903 0.3705917431366292 +4736 0.3030521088164496 1.885352294203191 0.6047963012595696 +4737 1.28046053003499 0.9173529468037197 0.3179094820074358 +4738 1.855237070156331 1.031165054464125 1.641754861893431 +4739 0.6293921640882227 1.84946907077145 1.7044471797047 +4740 0.9911217003766988 1.194889497821264 1.227433061340076 +4741 0.6999257307388262 1.502399302820974 0.2985698855545759 +4742 0.1380112724283202 1.352545133698374 0.2832423663988787 +4743 0.3359250962733829 1.856414065705756 1.057670120515525 +4744 1.233138411695559 1.736611082365315 0.5716934557648374 +4745 0.2765125343280072 1.889128761394863 1.352800934524399 +4746 1.076699785700582 1.292082709179829 1.132791893071117 +4747 1.610652298699796 0.1121464591708441 1.693803584827699 +4748 1.034447693150415 1.849144763124774 0.5269936245524675 +4749 1.858395970989249 0.7109487668811655 0.5995398100364717 +4750 0.6493475789230785 0.3480891078790561 1.841605822926329 +4751 0.6197657246503825 1.226807172875058 0.2978243654609564 +4752 1.876297073147251 0.3102673555780953 0.1235018697274537 +4753 0.2369668463372054 1.652568145675892 1.849045050181668 +4754 0.5332547227831085 1.846405293389154 0.968195758328861 +4755 1.728644379626651 0.4301927265568928 0.594427138514759 +4756 0.370391293901413 0.5030946264254335 1.303544113324096 +4757 1.371662710540926 1.875503297522665 1.743711515142964 +4758 1.856509908946959 1.808431634077386 0.318047242263747 +4759 0.8252058238652131 1.320686229115391 1.02620512875873 +4760 1.308149976280883 0.1742051175248466 0.2463265768214301 +4761 0.3340695558731114 0.6844460669290998 0.862590255827587 +4762 1.425955532842873 0.3762467943407015 0.9259471167469843 +4763 1.079427465150576 1.577218793997137 0.6410367618840197 +4764 1.128452267423161 1.260649770295346 0.8789451635779649 +4765 0.926587540415696 1.677318062857492 0.8673478344351173 +4766 0.1220880506694003 1.773762394676286 0.3408020654486614 +4767 1.144967316745566 1.627835524525215 1.384336270133745 +4768 1.250050772671191 1.325701915824618 0.1353650213840308 +4769 0.1356300644195687 1.281439201662786 0.8605021787817722 +4770 0.7287385518218525 0.7562181949973694 1.309736297135209 +4771 0.1507083768770153 1.438435575769142 1.133347426224035 +4772 0.40568034908089 1.279363844283339 1.026620078370619 +4773 0.7529344290892254 0.3697887318852592 0.8426803018617739 +4774 1.602409112345255 1.717003017111639 0.5755286185504522 +4775 1.880658132794735 0.1333365097388675 1.717640171712361 +4776 1.847945702787807 1.844614306460419 1.849238858514184 +4777 1.122013947219078 0.481520038878073 0.5772238852569681 +4778 1.877966290589543 1.721091412449507 0.1456751779144781 +4779 0.1193367643904444 0.2756459045629771 1.871452362449676 +4780 1.473886659569855 0.9649297987460237 0.1401145942871548 +4781 1.883058525093646 0.5950708419536338 1.867471512581773 +4782 1.8712576443011 1.882384351383446 0.5861711483411232 +4783 0.6001101105174749 0.1448404794656715 1.872746016699057 +4784 0.1191857246968456 1.881338319063371 1.71993954760284 +4785 1.695322838652977 1.430014779489821 0.1209381355043913 +4786 0.9389141201647713 1.659498821879073 0.5816398779543491 +4787 1.43592976790742 1.043693078233211 1.664043207988708 +4788 0.8511054473360735 0.4213785927880971 1.657293305812383 +4789 0.6887533873010419 1.160974938079107 1.650946276278967 +4790 1.675320539232885 0.315687279171782 0.8773905047604794 +4791 0.3690465238729709 1.848176020374279 1.733240544470587 +4792 0.6285644010858569 1.727187027832198 1.870177313341803 +4793 0.8306869019157112 1.301992773587134 0.3663209111049388 +4794 1.861124518318379 0.1461090232535388 1.386127365686912 +4795 0.2806429712636011 1.877286122641801 1.87819120183908 +4796 1.195211640212121 0.9868870332126185 0.6329890343160441 +4797 0.4961417611271644 0.3655761527810282 1.109955257060447 +4798 1.606661046507451 0.8358743940308541 0.9187383211424013 +4799 0.9663898340655404 0.1601056074606658 0.9652705020211507 +4800 1.865771540944813 0.472423600804151 1.050820065172401 +4801 1.842787076126414 1.461630652586265 0.6242842262767297 +4802 0.1466153520808487 0.5733040444146388 0.6711467660074812 +4803 0.6672879201507461 0.6801411025215407 1.500372419987039 +4804 1.663101845494226 0.5424239630223928 1.267563399644459 +4805 0.1377452645372879 0.9906047168286785 0.5522747286252315 +4806 0.9096028938523509 1.221760081961355 0.692711103300741 +4807 0.420713491120221 1.427617001737464 0.3056827125687488 +4808 1.030050783450426 1.458229083445161 1.859942299663998 +4809 0.1375821953636856 0.1117818580029527 0.6012333108227422 +4810 0.8002501246728894 1.637786746055788 0.1176265920459435 +4811 0.1286054514614335 0.5869183522940845 0.1237028288889782 +4812 0.6484978571262888 0.1162960716952935 1.440172977600872 +4813 1.240992480198172 0.8526167452482384 0.4730356917461655 +4814 1.359162135792349 1.319232467446866 0.376714183348314 +4815 1.680512255038479 0.703285297522072 0.507170128881117 +4816 1.478952720925782 0.6114166078016556 1.876092635173516 +4817 0.5868725424751697 0.1267062775278772 0.1272868225827811 +4818 0.5441444706027554 0.4037198446307566 1.726396689155861 +4819 1.34862342748394 1.850684263993214 1.349054424557727 +4820 1.337593805249976 1.434938357803104 0.131231687712999 +4821 1.352580009080059 1.449221274641888 1.142241741158935 +4822 1.105225945350697 1.43834628262344 1.412966351731462 +4823 0.615436313928711 1.731383148483276 1.053025978457993 +4824 1.821608838815801 1.65553533563625 1.062536425015648 +4825 1.705044176224665 0.5597168157061946 1.012927364978901 +4826 1.45422583254963 0.9012352097476226 1.890674325869462 +4827 1.494538381833011 1.850165357360063 0.9635197413334866 +4828 0.7295749280215175 0.5564513729259859 0.1245884244575419 +4829 1.613497714111596 0.8916145324849069 0.5032829865940751 +4830 0.9188793563110449 1.384183168410164 1.604498103681743 +4831 1.681442956025943 1.568307886071792 1.443234605608102 +4832 0.7866196830341804 1.891345652422075 0.4286528257957187 +4833 1.858886598244986 1.381860822935605 1.278160067655594 +4834 1.544576991504373 0.6938158932467103 1.648891212750049 +4835 0.2465601161176392 1.620218745241034 1.431344260261872 +4836 0.3321105834869654 1.00204057924903 1.419020358836012 +4837 0.7545506561663612 1.627295174079771 1.524889667516141 +4838 1.686570823544681 1.031838294173919 0.4015306665523231 +4839 1.310493828968382 0.4833703699486984 0.2999330039987342 +4840 0.9903638210640326 0.4116568889039601 0.2655989125399214 +4841 0.1172889211696524 0.5967711608676954 1.878523661771056 +4842 0.8234065745319731 0.6223545644680242 1.289065766034809 +4843 0.6986344175843325 1.485784529408675 1.7011536221819 +4844 1.135718538382669 1.196265947179916 1.531273603882192 +4845 0.612505844841422 0.32066848978852 1.252558998197848 +4846 1.296165820528003 0.3377175415600321 0.8297217709166067 +4847 1.872855868415945 0.5232585151319977 0.1211548373885022 +4848 0.6822110653012721 1.251723459822902 0.1533865700305606 +4849 0.3485347077993849 1.223279311067998 0.1274008922852004 +4850 0.134030828529991 1.766030855122535 1.609000146157081 +4851 1.425464044767951 1.452719014978137 0.8694728741715069 +4852 0.1240042922743603 1.84073489836062 1.879060868475587 +4853 1.678156312601344 1.032776481506113 1.867396075239875 +4854 1.905857869740382 1.351272599516587 1.75061037570814 +4855 0.1337410129944262 1.873785590047924 0.587715398587373 +4856 0.1434056924408575 1.201625467452908 0.36121797868468 +4857 0.7788792148700355 1.714444349266919 0.640366729252219 +4858 0.920961453964969 0.9773114019381854 1.118200053460554 +4859 0.5627518119988811 0.6100971204470809 1.004064459432584 +4860 1.313472907980939 0.873630552578732 0.1221348604418078 +4861 1.076950716200645 1.870538360829473 1.285822698471975 +4862 0.2937774513739794 0.6314016571208607 0.1235490461554107 +4863 0.290023936828713 0.8706846755751839 0.1342758460674663 +4864 0.2675830927306891 0.1161258200118647 1.881167132523814 +4865 0.1435385796471939 1.336666946305266 1.421405747126834 +4866 0.7439211218630586 1.17743655231863 1.277182648974391 +4867 1.022500936280655 0.6176704843271752 1.113174119263098 +4868 1.706541213340631 1.262146848432953 0.6362686409445627 +4869 0.7324083594038312 0.8930957524533574 1.869627958573638 +4870 1.860846600206611 1.883426156800701 0.4476959309556575 +4871 1.636456881722302 1.890394346762884 1.223054603278399 +4872 0.3083201607597292 1.259608413204641 1.384165475227484 +4873 1.114488942969174 1.271675915657949 1.646602991440732 +4874 1.87289672823075 0.6968581101618354 0.8767409225690015 +4875 0.5152776096561148 0.7568287128255035 1.857033532227864 +4876 1.381632066528012 1.723198915365513 0.7547437735316477 +4877 1.356590299078494 1.273204050163852 1.649350514177565 +4878 1.50907771280351 0.3236546498420926 1.273072181626366 +4879 0.1352330954093643 1.691046510604174 1.020287949720393 +4880 1.731216663527541 0.1274974299069989 1.881838090928327 +4881 0.1489886744529358 0.2645300791653979 1.336269039606304 +4882 1.295852471733379 0.8129733644619851 0.8136737266023423 +4883 1.062036450611203 0.1792966489241648 1.644146200769482 +4884 0.6676474249948652 0.8197617442007594 0.3667098665390985 +4885 1.35954301500959 1.198381317705567 1.441992229750166 +4886 0.8886072452088979 0.1150447425503868 1.438076509756499 +4887 0.2967344986361398 1.825342960945848 0.8323052624941024 +4888 1.451120705077102 1.869837409326264 0.1313106242232298 +4889 0.6994538108098974 0.829840692774128 1.677282734320973 +4890 1.866168965371359 1.297427554276873 0.596629414000695 +4891 0.5811568568361766 0.8213147066692669 0.1377835686231862 +4892 0.1465908163371956 0.9898241996724091 1.468959941482307 +4893 1.428821277329382 0.9196830267980238 0.4053877701194127 +4894 1.144592303932484 0.1049396436858641 1.413637086488044 +4895 0.5827455566785362 1.059484207823967 0.7581882696618469 +4896 1.660613384049618 0.5268957281801345 0.4543890931824497 +4897 0.5623932032861527 1.871518379515527 0.8146069304313553 +4898 1.249826631135063 0.6396232833907821 1.714569067182055 +4899 1.142786663757427 1.656136834918913 0.4809897431328649 +4900 0.5580072016954662 0.1408415512562696 0.7020436349983323 +4901 1.216696056687429 0.3883351018833986 0.1822687548075749 +4902 1.168865431938869 0.6566207484486215 0.1932593330513586 +4903 1.281034218361868 0.2737100914798118 1.467718123107465 +4904 1.074282005440236 1.884668686789904 1.706916459022938 +4905 1.577268946777645 0.3143972479095545 0.1140476668044566 +4906 1.25571121037367 0.4707755369296708 1.048398411042784 +4907 0.2852669591380707 0.7348891295969755 0.5104791216718879 +4908 1.853297329118481 1.135044601393571 1.386813824882245 +4909 0.3803427777867513 0.1021002184406626 1.26256375848948 +4910 1.235134328459995 1.822927137384941 1.464028417555193 +4911 1.885352641291154 1.548498567578755 0.1263280182637473 +4912 0.1078442920622835 1.083036569674166 0.1164276793546631 +4913 1.013259237929825 1.115718841026109 1.086255901815128 +4914 1.093640788330649 0.1589667936082891 0.1264399604205967 +4915 1.481432778788295 0.420446654365868 1.148348401583495 +4916 1.850680451654998 1.541617383669653 1.869335961960906 +4917 0.5364611463209012 0.1294341517486491 0.9257811834501654 +4918 1.138026552872823 1.302043511770999 1.877941116186222 +4919 0.4836624511028105 1.341379398648986 1.614184080209808 +4920 0.8059785592650411 1.638742991747389 1.334873557473088 +4921 0.1113233138482751 0.1127235705085036 1.089323567393133 +4922 0.552594896958693 1.686697066560248 1.556626181496967 +4923 1.361026330893285 0.7678673930254248 0.3348285195731323 +4924 1.501542966207987 0.3728421770277759 0.6860507622646596 +4925 0.3257390225924149 0.1240333725923277 0.4520268443889613 +4926 1.691677754789701 0.4586736822577857 1.888389112993172 +4927 1.02713062642491 0.498489908825508 1.679112562447254 +4928 1.882993731147794 0.1618192558480289 0.5975766522854472 +4929 1.88302416316495 1.690755690613869 0.4551673754562691 +4930 1.881118581886354 0.2987433631603708 0.4663349117551034 +4931 0.1768948800258493 0.6213558145427168 0.920103368655007 +4932 0.3603789985806437 1.19167647802104 1.788553972989122 +4933 0.4663648979884902 1.862865011899211 1.863372719563367 +4934 1.551463628052099 1.708297038345079 1.88612897900486 +4935 1.581081646183524 1.891192507117901 0.313957214810315 +4936 0.1749705717199694 1.100984300516404 1.860398975574265 +4937 0.9942900085190371 1.20705364851253 0.8395385184076966 +4938 1.891372905082921 0.8768626977279691 0.1140760634997525 +4939 0.4716810095885172 1.63897088777472 0.9108102905228661 +4940 1.643495058192608 1.805528152708745 1.663611652791539 +4941 1.474246796735896 1.10486400176542 1.881293996641128 +4942 0.1503744488324693 0.3014108671064185 0.3628733655016723 +4943 1.859957814412907 0.7900019043272128 0.3507953066965901 +4944 1.094385786259862 0.1287041994193816 1.88894646265542 +4945 1.635509459778389 0.1195253437990415 0.5761987023497201 +4946 0.7988381955867325 0.5278704847305113 0.9991340581985989 +4947 1.400153913920535 1.570799855260152 1.376974553175494 +4948 1.83227818054634 0.1121308516121768 0.9178809978220376 +4949 0.899567845795024 1.88761267152784 0.1199046251699262 +4950 1.548428983601206 0.9952520614707487 0.2919948134507234 +4951 1.682468285362757 1.482928411574542 0.96046177469934 +4952 1.406158235268692 0.9583074388390477 1.378404526021729 +4953 0.6742497976838254 0.4749904255735293 0.6509375881212395 +4954 1.888806834441369 1.115213788941596 1.886327189192028 +4955 1.098954296245018 1.87058913801114 1.858766996466813 +4956 0.1622027487492559 1.870385546981897 1.059641568150116 +4957 0.8048107698202661 0.9518292026565218 1.498475216621847 +4958 1.891296106390719 1.889540972235896 1.072272099498486 +4959 0.1324277448851519 1.880406678639076 0.2691229652728775 +4960 0.8489506905879832 1.361157664825156 0.114546466979646 +4961 1.72038123909509 0.7126539316018864 0.9076709117822551 +4962 1.642474234004664 0.158403238119945 0.3169475340526814 +4963 1.271837776924148 1.660236401665268 1.035056464664176 +4964 1.706942164590311 0.4139598346286863 1.024426919799838 +4965 0.6833626263608857 1.4525236078102 1.012631713845837 +4966 0.7392465082159529 0.6056675736093229 0.2830768565169726 +4967 0.3141966307594291 1.035660133351356 0.5138979423148486 +4968 0.3095929681703689 0.4497027773507082 0.1141869177374587 +4969 0.2949743670896826 0.1210910476932406 1.566892176567601 +4970 0.3368697891237484 1.428375309179723 1.555592492118434 +4971 1.206359320672894 0.7604103710601517 1.522215814144854 +4972 0.1182962296333607 1.290276271849104 1.064462520081152 +4973 0.4027052987155741 1.742421940413603 0.6135543577731232 +4974 1.525713456472781 1.43507303191895 0.5317824479382097 +4975 1.579105856104325 1.705032271502976 0.118932489664207 +4976 1.609234740672236 1.42408689590757 1.709037627451657 +4977 1.837578284231881 1.886077210260336 1.410717844127101 +4978 0.1304185768833203 0.2902137286847456 1.577311430011834 +4979 1.215853045954396 0.8239648893244332 0.9788013338042637 +4980 1.36811308969077 1.836558445101144 0.631409238695878 +4981 1.867180495154198 0.4339381913029954 0.5664090317114158 +4982 1.280638362958203 0.9018574265646752 1.874418568714726 +4983 0.1183519302904872 1.553305694433207 0.1401578047254949 +4984 1.888013185478139 1.691132052234104 1.557564307655745 +4985 1.872333113153329 0.4471769406151595 1.716476634106211 +4986 0.5582335515368273 1.070825606951129 1.644883671642775 +4987 1.808943300328917 1.441101584892327 1.000711735673708 +4988 1.304188093463303 1.487147264355797 0.7326045962862965 +4989 0.5824879064984894 1.87023190265023 0.1236188634552091 +4990 1.863924794012218 0.7919742751580784 1.144059127675703 +4991 0.4573269304381295 1.713932322651125 0.1293672138126215 +4992 1.618765077163817 1.075065956664739 0.1468814803048056 +4993 1.017750927007814 1.370999019685781 0.9034572468419916 +4994 0.3801916177570431 1.454256188158551 1.87910460968505 +4995 1.895960551909055 0.3126081427046021 1.032497353709321 +4996 1.389688349658585 0.1240209491706327 0.8631014300445808 +4997 1.826288702223033 0.8521624261495528 0.6637863790013655 +4998 0.1283763389373722 0.1270493479700513 1.467575644219993 +4999 0.2927219107230156 0.3879120292327038 0.9192641911695741 +5000 0.1302685870472746 0.8619890679985729 1.261803294566445 +5001 0.1098609851732491 1.411258924568877 1.885132894275929 +5002 0.9688755299738072 0.5513229754595171 1.26082860560622 +5003 1.060463834039603 0.1302738337334533 0.2840469910199971 +5004 0.482229266681066 0.9775798398430889 0.3331747107444568 +5005 0.9957684663926951 1.820604424710691 0.9973778862450563 +5006 1.868480898958869 0.9819388041474028 1.279343537609796 +5007 0.4370406350345266 0.1381524155766101 0.1252900797346916 +5008 1.478976728627946 0.6132708853848171 0.1329967553727048 +5009 0.3070278509732652 0.7626404284790347 1.441828088636236 +5010 0.4402286068384262 0.6674997717650306 1.631965825878287 +5011 0.7153074053977846 0.4620842026044985 0.3335749933976256 +5012 1.093464520823658 1.457147816545395 0.546147963894314 +5013 0.3717125814062834 1.159881906162167 0.7496157773115326 +5014 1.013979206960529 0.9529099490719226 1.842206377723832 +5015 0.9840762617303472 0.1480306501824107 0.5420723628213463 +5016 1.300109175379559 0.3245387127880649 0.4879114125461191 +5017 1.192945170965971 1.605339616899458 1.883270365489887 +5018 1.252806532865472 1.119762779285631 0.8836147193735925 +5019 0.5232032154838505 0.8069374233356645 1.109222662155479 +5020 1.53200621627251 0.8395087972319608 0.3474717367489676 +5021 1.001959993032404 1.259281098675027 0.1227204094580301 +5022 0.5822769036754774 1.309761907940482 1.903081833104981 +5023 1.583855653641743 0.5295922912258381 0.2802631642063847 +5024 1.240914432889729 1.049147553497198 1.603380449777801 +5025 1.221978862632274 1.880133777324626 0.5708577178662443 +5026 0.8787968864285414 0.9489230715151274 0.7023363391644706 +5027 1.23182774439612 1.322350584448999 1.628378099218584 +5028 1.38931442099482 1.031572660081205 0.3328317406297726 +5029 1.867102746415906 0.2448861804410505 1.8682384232517 +5030 1.861196726873275 1.498890074047949 1.413834284680803 +5031 0.7070404782209856 1.617280561864236 0.7601960786664572 +5032 0.7381226022277075 1.170259307576797 1.094319279063993 +5033 1.10309023083876 0.9642565502121065 1.393025758329768 +5034 0.3110698351761834 1.357957502048293 0.734229627289772 +5035 0.8281387535778418 0.7084848003470525 1.062111864600575 +5036 1.629312097198852 0.6476859881942232 1.533360798826269 +5037 0.1372262000829613 1.676061758229192 0.6063787207301089 +5038 0.7202696887720891 1.841058281585933 0.9213104414900962 +5039 1.711140115608662 1.274505486082035 1.063952666873609 +5040 0.5931188304644451 0.7691626127156631 0.8116757316451318 +5041 1.56882518053907 0.2128953223563975 1.05189331473394 +5042 0.1228507796597546 1.064719095997851 0.2780691697535262 +5043 0.5388781071858799 0.580955663262782 0.557631248671866 +5044 1.010826522918073 1.663742811037764 0.7364173434108697 +5045 0.4250237016946548 0.8933553812605873 1.400448178241498 +5046 0.8159077013229796 0.8180577153077798 1.773609869694198 +5047 0.8642868326372561 0.7049296895299995 0.8538692238587078 +5048 1.370484069337589 0.993282537057123 0.638910587792574 +5049 1.878083940536535 0.2930599758467507 1.370079464215246 +5050 0.2817305460909173 0.3847547175042692 1.452937292315378 +5051 1.240645396401027 0.3700854656488199 1.877376757513048 +5052 1.639190506096027 0.1070051698908591 0.7619188198600378 +5053 1.884615796829157 0.1441634723335371 0.1434194144540105 +5054 0.7404762400867775 0.8664048064251925 1.232431712597772 +5055 0.5853440461394135 0.5855733640581184 1.870394439959471 +5056 0.7695981554266433 0.8994585675605641 0.2949615665509498 +5057 1.781427092411574 1.901356465064583 0.09929448388163283 +5058 1.709953692354733 0.3874821442646955 1.452523794325749 +5059 1.521614554306493 1.387126535076373 1.162560017755525 +5060 1.248180618631534 0.8468043095714729 1.25611772254272 +5061 0.3047542100115613 0.5082992571440642 0.665611444718058 +5062 1.476885505737406 0.2853985436690638 0.3931115547568907 +5063 0.6688395107389795 1.325736283800235 1.679385503211186 +5064 1.222027425853132 1.527246290090077 1.113764613628986 +5065 0.4523819907724018 1.31125950896534 0.5680701480907466 +5066 1.328322375210842 0.508628218326591 1.666274986619434 +5067 1.260876320490879 0.6215638863067532 0.3177160147495782 +5068 0.7055265818943862 0.1552289043398875 0.9356765944256837 +5069 0.137209576224127 0.1168726372722863 0.1470513669386881 +5070 0.5338360324481977 0.4440111266410164 0.352368643663431 +5071 0.1467672410424848 1.453441773724083 0.5609367240836503 +5072 0.3914123240522503 1.042839582334319 0.6203430517946943 +5073 0.1076548811595036 0.4591825106543007 0.2834177531812496 +5074 1.326667204675229 0.5839198306427943 0.8256602112951318 +5075 1.302461453224464 1.117367430097055 0.586900012988965 +5076 1.728853099112923 0.3859971087632144 1.679242303319648 +5077 0.114388868648258 1.193578652469431 1.594835569423224 +5078 1.348418011697678 0.5291218332551516 0.4565548702400539 +5079 1.528981910654316 1.62000322745471 0.7030824659847034 +5080 0.1103469277995925 0.1076295260500526 1.789671796509361 +5081 0.8802207888944589 1.398397372267407 0.66129625943277 +5082 0.4957100729700121 0.7751725314719538 0.7048474741678994 +5083 1.309878205322488 0.3359842400844408 0.6693096765089614 +5084 0.6115088729791551 1.013482658846751 0.8812552442844546 +5085 1.203209220397729 0.1206226949420346 0.7001850969589332 +5086 0.8105376006325036 0.6326214603005816 0.690798987883673 +5087 0.8894735403690123 0.4548392726616726 0.7297434590886477 +5088 1.002150852546126 0.3159874275145096 1.500078235798472 +5089 1.489113245623242 1.094964431573097 1.498718420114208 +5090 1.074775251197749 1.721378835631969 1.872843776405839 +5091 1.04762288532209 1.676435114116606 0.9610693964594054 +5092 1.720016000226415 1.892600831031427 1.535916724993717 +5093 1.630279386173358 1.310074275461744 0.488547957349572 +5094 0.1048288478019998 0.1075119670974976 1.2727351691003 +5095 1.106502229443303 1.458257316005506 1.61879796758412 +5096 1.100645291684313 1.894975520877362 1.425952844085994 +5097 1.366399074557604 1.592127736910798 1.130286864741091 +5098 1.684481854219868 1.480922257837081 1.844207122799718 +5099 1.118940172989183 0.6253706097950967 1.320933681192083 +5100 0.3961537528574077 1.698662699106195 0.283760806213725 +5101 0.1236762619919914 0.5431361767951995 0.5190173216437611 +5102 1.56593845726569 0.15671562674471 1.867973092913396 +5103 1.296379417459085 1.703376716809037 1.346698314241888 +5104 0.1221523558451406 0.5208463231371436 1.464582570074243 +5105 0.4632349948467874 0.3153127189055313 1.293425474060571 +5106 1.499175647700924 0.1377427229832797 0.5196353858374245 +5107 1.737203580970558 1.677605473189705 1.623480183524325 +5108 0.7111362123265416 1.683162573593948 0.5084943460864408 +5109 0.5850212375131215 1.862554354564111 1.515063022913337 +5110 0.2988070763019767 0.2831109654049673 1.602956933847415 +5111 0.3965504190165597 1.393649781716464 0.1357046942061082 +5112 0.1524382783454193 1.472644247984076 1.497479989097999 +5113 1.50291895094882 1.340166602066619 1.655643728040472 +5114 1.612605713206168 0.2629147078522758 1.695467808609193 +5115 1.163783422601742 1.070753587556736 1.307330137796618 +5116 0.1162427433540085 1.689340261739995 0.4413349349143361 +5117 0.7473506143243814 0.9450099142432098 0.5618755396056984 +5118 0.5400520716943923 1.436128285174969 1.87273948174652 +5119 0.2887617230421693 1.715317614414217 1.069307323870393 +5120 1.693304242953509 0.8206704017446353 1.683965062232184 +5121 0.421329113060237 0.3645010034671907 0.5840267644458403 +5122 1.654532165599368 1.688680136188507 0.2505797821042753 +5123 1.249674575231252 1.27318601939507 0.6172863302180714 +5124 0.1356016290489134 1.046361979522841 1.213926141209683 +5125 1.530079275937039 1.440781449568717 0.6921079026544315 +5126 1.492855794626776 0.294983776831523 1.607345543124199 +5127 1.052009806656807 1.550052888075254 0.1143793792412607 +5128 0.7262567547325517 1.379658968545077 0.8951404034400918 +5129 0.5530618113547108 0.392708554555139 0.9301590113032797 +5130 1.621288220378034 1.449515611023721 0.3022226546642116 +5131 1.510586803675073 0.1055866272125748 1.489453982699945 +5132 0.981111807805508 1.610890931749862 1.667567929437331 +5133 1.670562238458234 0.894490135777895 0.6734789693093087 +5134 1.055461711814438 0.9309252399062462 1.124519651890288 +5135 1.892040866511692 0.5349756204914533 1.467540654057565 +5136 0.3164429628055877 0.5492952644929767 0.911392684556908 +5137 0.1225840900928252 1.85857143344905 1.421468033998617 +5138 0.7956717262588566 0.7812849633463848 1.546135714926601 +5139 1.634503084908774 0.5003339594875834 0.7060248801537475 +5140 1.62577583130931 1.131030748298884 0.3124235894194388 +5141 1.885571221203476 0.1113839793824448 0.7650178041172153 +5142 0.1251740764772316 1.864178112907027 1.245878025893239 +5143 1.774138299265787 0.09780405599852539 0.09841084753768102 +5144 1.873061387330193 1.03015810704086 0.3212012492216081 +5145 0.9628867557365843 0.3119705200443154 0.1127324265030556 +5146 0.3624321394308863 1.705941188484653 1.483116303160129 +5147 0.8830485640416271 1.856127060113054 1.164068260050589 +5148 0.4047749327565434 0.9894606883907003 1.713864659686474 +5149 0.1226307963106628 1.68582824998377 1.199219990581097 +5150 1.255813584636943 0.1570512270513597 1.888909359231359 +5151 0.3541865196630495 1.649519883088257 1.731604732189706 +5152 1.169289475567242 0.3895495337178907 1.474797021783637 +5153 1.033171853390008 0.8403295905026678 1.263310810469938 +5154 0.5825702848850616 0.5611861131020861 1.151769627957083 +5155 0.3665434727220587 0.3579897237226848 1.730204590808705 +5156 0.7322001005186951 1.876991280847235 0.1260526423158861 +5157 0.2714135861128296 1.901151501361921 0.09711110220688968 +5158 0.1239529755445078 1.655950950712431 1.527390375496058 +5159 0.3640359147952349 0.9873647030434184 0.9794428748287018 +5160 0.61392209124007 1.868193602806378 1.149810592111166 +5161 0.1073661882109486 0.9609276319194208 1.687419949701095 +5162 1.270132980964269 0.1159700442469774 0.1074482360038732 +5163 0.2969213697333634 0.952227284265256 0.6358236028474332 +5164 1.265276470608138 1.873218171226933 1.866849051933054 +5165 1.010013963319428 0.3386849974836646 0.5242791011849857 +5166 1.88112909173026 1.88030053895201 1.243176003190715 +5167 1.434743310008299 0.1561361749873446 0.1352754696114185 +5168 0.5885165472702102 1.216769885344432 1.222470101196168 +5169 1.893586016459696 1.262444781429491 1.890432236962142 +5170 0.3893027493523977 1.30452052731785 1.186365874847594 +5171 1.499069632323397 1.890306493443184 1.408151659922275 +5172 0.09066854581957744 0.2148680847094643 0.0921145488248972 +5173 1.71906162181348 0.1125679874333834 1.337782474971716 +5174 1.88637682248922 0.1081924455562432 1.534174642494553 +5175 1.048886355091733 0.1282441655600494 1.11600043984827 +5176 0.5562391024951132 0.8971255875623567 1.88934885439456 +5177 0.1704135800581949 1.247235516654938 1.873941560161426 +5178 0.6665320654089268 0.3118943213448306 0.7008261418939102 +5179 1.899378618529833 0.7161679858169122 0.1110871720794187 +5180 0.4088375518066465 1.127141944301596 1.414365909961607 +5181 1.48217920053034 0.1503019511286179 1.685365484987196 +5182 0.301714554641921 0.2921894170456502 0.3761682770800551 +5183 1.457631130170984 1.579942735552795 0.3295471338999436 +5184 0.1152519743053365 0.4569853266269482 1.886478184378392 +5185 1.214588948083392 1.082779076959152 0.1139391418118826 +5186 0.4697382540469637 1.13334313346044 0.5195652428466785 +5187 1.355116755422894 1.269863570447245 0.8152843174285809 +5188 0.1703685872652483 0.8237181478250297 0.6213616627576601 +5189 1.875451976207318 1.363319597039881 0.9227263795994137 +5190 1.46243669860072 0.9135337003564439 1.503691998000485 +5191 0.3086935704663096 1.771052076283157 1.61136905550001 +5192 0.944353990129853 0.4458639173791545 1.859798986900864 +5193 0.559950334341923 1.586116734045686 0.3293514013293512 +5194 1.732022976657553 0.2820102379527182 0.3697345100225392 +5195 0.5172335908780046 0.1377062192626486 0.5021907261369133 +5196 1.295812826343552 0.7847774254074937 1.688444247181027 +5197 1.433597915092326 1.856305368186767 1.876692720162095 +5198 0.3468674523524361 1.498868973532219 1.091216860770905 +5199 1.731003193928063 1.72190921600652 0.3602613930281643 +5200 1.711738434512924 0.1037230502233993 0.4503606164371487 +5201 1.015158957775473 0.8303950381705025 0.8570313805916024 +5202 0.6050888920085403 1.409956824574601 1.560323694263406 +5203 0.4833679644160826 1.483604443382912 0.8579039006971166 +5204 1.674706494584265 0.765979434877779 0.1116704839639714 +5205 0.7599943300083547 1.036885671724467 0.3247369050279131 +5206 0.3095547259905175 1.037039251566633 1.227645700508235 +5207 0.5382248317244943 1.549724114549513 1.661551525361684 +5208 1.858583595310985 1.101788811010936 0.4779104063906912 +5209 1.83089629262808 1.657915706655533 1.198951119231775 +5210 1.422667957929713 0.7767394097947309 0.6631238609530582 +5211 1.705539961987324 1.554938715658767 0.5496971199087509 +5212 1.610709975617569 1.179672998665687 0.6232930607138314 +5213 0.3687197584056225 0.5432950640356409 0.2715046152135419 +5214 0.4716088797875092 1.862230441501197 0.5227862364535749 +5215 1.479547447495819 1.467499253938989 0.1107793866967983 +5216 1.338815237783166 1.085061825354097 1.345973896689907 +5217 1.607354995574238 1.693206552994713 1.734343457643859 +5218 1.276391514237342 0.6217557417288851 1.105540549762713 +5219 0.8624321172074674 1.392688852573955 1.893755070416115 +5220 0.1073964218400293 0.6357902800765498 0.2706187228722772 +5221 0.777810373942591 1.386659815993779 1.388076627543806 +5222 0.9914259767414096 1.702388113130944 0.4120065297416449 +5223 1.632647372079629 0.3226112312295997 0.2582256451362598 +5224 0.09960855695235896 1.25656071442953 0.09333222147543958 +5225 0.1138669090170931 0.2793856830272771 0.5990723560418487 +5226 0.8966003249908689 0.3283124615236087 1.08427050983741 +5227 1.042018840165644 0.9625994216276633 0.8889383826189867 +5228 1.246560513340908 0.1359790208478414 1.489003355168521 +5229 1.881135822522762 0.3471196781639372 0.7860668448487627 +5230 0.8032286517804146 1.231183448048148 1.878763267509849 +5231 1.084565537347062 0.8358931330843354 1.538518487164526 +5232 0.1161584919061797 1.0171020823665 0.8986424468034198 +5233 0.2925592560285171 0.5375971259790997 1.891421088011922 +5234 0.958702819166397 0.3133084143785882 1.877046169204112 +5235 1.833624234050931 1.69591494647852 1.853021946690717 +5236 1.127655941502218 0.1139317361600528 0.563382962085991 +5237 0.5112596739927423 0.3330064319881365 1.879389149233282 +5238 0.7003877623347289 0.364291191149826 1.003269882604727 +5239 1.490275968144179 0.7517500775006319 1.492416627145575 +5240 0.6326432006325799 1.235233927162205 0.7241550384464792 +5241 1.284042450876837 1.416601527634172 0.5502384848714008 +5242 0.8313517744367133 1.035037370739865 0.8499108069153323 +5243 1.679031275890038 0.9479227503809792 1.018415378201838 +5244 1.406521346620578 1.521519211377159 0.5936768125145718 +5245 0.2671012631186005 0.3852692626247251 0.2507497971342112 +5246 0.5362355848414441 0.584439728494852 0.7547409454097256 +5247 0.8544849061414558 1.538559685119162 1.604700367793266 +5248 1.382510740474081 1.026522512582228 0.9193414309253983 +5249 0.4464061601914812 0.1167647661668741 1.869287411725064 +5250 0.5548917102677912 1.208297425450626 1.034216038364824 +5251 0.5208167167085757 0.860015740870634 1.498745523779237 +5252 0.2808225017672772 0.6557009984568822 0.6958942528238791 +5253 1.880611581785124 1.403399417746726 0.1248303748071436 +5254 1.190295947478193 0.7017698542009763 0.8711497272698236 +5255 0.8868458138718944 1.52110834520009 0.7792306501692992 +5256 1.425112235298868 0.1268492941516614 0.6855229329894909 +5257 1.576606201943826 1.154373072132255 0.8863016049799179 +5258 1.059164852874314 0.2962570968733299 1.380834075251276 +5259 1.612395641857792 0.4546402676209401 1.151731268817511 +5260 1.708542479277288 0.5255126637459797 1.59731356573551 +5261 1.171513814471096 1.660970088877208 0.6925332800536226 +5262 1.748284806102709 0.5766379994772499 0.7838483387712279 +5263 0.8494223056969641 1.88929813746378 0.5860999053102471 +5264 0.8659809207422348 0.5775932047889284 1.870353442851036 +5265 0.4119313092108575 0.5279504481060736 1.659889363249805 +5266 1.352952779941371 0.2529495135268132 1.249773154991721 +5267 1.204203646152061 0.4829850966283097 0.8526945437672991 +5268 1.263885024303573 1.854819531048186 1.095662166582156 +5269 0.6077090750849866 0.776372742625833 1.39505199603223 +5270 0.7018664265274311 0.5776982863364803 1.084741019277314 +5271 1.863176987169179 1.025438021005234 1.058654156363928 +5272 1.119485048920543 1.624376362069225 0.8222463784550197 +5273 0.9378084240436423 0.6404552200446971 1.010505848068567 +5274 0.5016244157855684 0.5471740940164566 1.382517318512064 +5275 0.8977179522825666 0.9871869331067809 0.1073560716073684 +5276 0.9062681078718839 1.522051670051213 0.1032602275086119 +5277 1.023192091397079 0.9204903012322122 0.5583883582522484 +5278 0.7337837841178405 1.305939513411584 0.620289204675666 +5279 0.2940986055838765 1.102107660560968 0.9132580631415723 +5280 1.119049318270831 0.6490276424022612 1.645625878827506 +5281 0.1359115141993727 0.7457243410249246 0.4812781443703305 +5282 0.1141215500306435 0.7138522194541798 1.206947248433383 +5283 1.019562557934591 1.038474707771503 0.3203009603759414 +5284 1.014629285015627 1.101650765774463 1.902633623462821 +5285 1.318743659227514 1.611167782921372 0.479553385712945 +5286 0.7197309127942629 0.3278877799030619 1.475078377564996 +5287 1.258488599540011 1.101833225317018 1.057326628434625 +5288 0.9517011410447209 1.875122986978676 0.2646253847830606 +5289 1.621768418048277 1.533888920536977 1.146684983109529 +5290 0.6359882483464431 0.9444860308994993 0.3962673012684702 +5291 0.225559450665906 0.278466611913911 0.112144802702802 +5292 0.531376740515569 1.116533549109773 1.489200478140216 +5293 0.4973447207964666 1.198709084916143 0.8028459586389902 +5294 0.7075782291787317 0.5719617356235721 0.5346814399039046 +5295 1.697107694404319 0.7437100312774636 0.6472909294270606 +5296 0.8330445934306302 0.94067866403297 0.9866362310541497 +5297 1.180190479726349 0.86796621587914 0.7323517749842638 +5298 1.862316686135328 0.6267090880835772 1.711093676418218 +5299 1.084486379164151 1.119159938666024 1.645596322833537 +5300 1.065110523202542 0.1027111642403152 0.8899299584125751 +5301 1.888892514831542 0.6070549000593253 0.717987006219989 +5302 1.889363660806007 0.8944788941790038 1.554771378984137 +5303 0.2449267426190722 0.1306764186867889 1.050797763605691 +5304 1.013858113238557 0.3824040372651362 0.9632006129724274 +5305 0.5860769374383891 1.218805238214029 0.5897386194831021 +5306 0.7824279299581145 0.867756260508884 0.4412349814505391 +5307 1.348336103519798 1.601987189340512 0.8586918193109734 +5308 1.148679689762312 0.4892194508075272 1.88254185064077 +5309 1.635637272400721 0.7954755571782638 1.069759893921692 +5310 0.2769140815961242 1.405636722519053 0.3590260358283865 +5311 0.2535010690006075 1.892191120079218 0.4027946936510702 +5312 1.752956621806774 1.407138194622726 0.3671783911483767 +5313 0.1103426302136561 1.10479286075004 1.412364137003205 +5314 1.442312435839459 0.4604758821148088 1.887592761132175 +5315 0.9039135402345058 0.9547360338479399 0.4682910500957788 +5316 1.12795936445292 1.040410641714591 1.016831009769288 +5317 0.5852965875294323 0.4728537676674003 0.120340542073003 +5318 0.6073503982312077 1.891672144538929 1.893299534818511 +5319 1.213124397494876 1.08358530998014 1.442184150081128 +5320 0.1129110425645181 0.8586868971334122 1.403130418336162 +5321 1.749922691849363 0.9333974943250495 0.1329973710768107 +5322 1.717875850424764 0.1093778241821496 1.051830958979749 +5323 1.099262231234364 0.09660681779576571 1.534793632021634 +5324 1.520793636545731 1.882012470408728 0.5592557201869762 +5325 1.256599121634508 1.218727492284102 1.523517451534388 +5326 0.9337412606975919 0.3800736213196974 0.8317115613240627 +5327 0.2688752499643137 0.9856272790832258 1.58143357222448 +5328 0.5024204882714786 1.874026513905954 1.657221474644069 +5329 0.108735752840663 1.090146545444405 0.6628893672441569 +5330 1.719176117164548 1.02091235225734 1.161624227863398 +5331 0.6800537275615322 0.6676769790189878 1.641405900774685 +5332 0.9761452600766136 1.432203562111126 1.299020167892336 +5333 0.5385900816194089 1.623604006875957 1.376688284807934 +5334 0.4815498602730309 1.478597521683574 1.129586835399493 +5335 0.2950857874772005 1.634743383067456 0.5232492091464761 +5336 1.544237606629475 0.3907214132036906 0.8281500981151492 +5337 1.448407735495122 1.272768808141455 0.927234301366069 +5338 1.27127651964721 1.466544630421588 1.441750148016522 +5339 1.1125596646035 0.7571854805582734 0.486583453457451 +5340 1.731903973519573 0.261761493249248 0.1116557721093523 +5341 0.5186808210538238 0.1312251791617693 1.683195199419029 +5342 0.4099424986645796 0.7790578246435139 0.1016945601934218 +5343 1.596268805279157 1.340680262919106 0.9272719856827536 +5344 1.018346215787239 1.116138269232222 0.957569327728416 +5345 0.9367872615096969 0.3365113724930485 0.3918800978650963 +5346 1.426951209365487 0.4876216799382207 1.041755264130733 +5347 1.256757492181059 1.906683768953801 0.4263080144898527 +5348 1.681651980659688 1.49421818229571 0.7031729372195519 +5349 0.5076448206090902 1.17765555877723 1.865343767418299 +5350 0.7230401575914834 0.1334462433416004 1.143674325864309 +5351 0.8856235960820414 0.4658657319463364 0.1179787366863431 +5352 0.6311855326433178 1.168705630570506 0.450663813763136 +5353 1.878760244978609 1.411190943045916 0.4584251818676931 +5354 1.478749833943445 0.3886300848520914 0.2709616574872288 +5355 0.865700664537475 0.7693382639690511 1.235879922637141 +5356 0.4564699525893619 1.361378923772021 0.8216549443562677 +5357 1.902831481807695 1.90207237273664 1.767583012037363 +5358 0.8381407607545642 1.68635444405218 1.164032020963844 +5359 0.6341131038489443 1.007252711205642 1.034925611594826 +5360 1.77598268249019 1.904165544183713 1.904538508965027 +5361 0.9631217847236674 1.219143973225409 1.684771279720624 +5362 0.5829965441280125 1.43607665900889 0.7759609047369961 +5363 0.9098703001112614 0.7597902473699599 1.650783055959294 +5364 0.58207276558306 1.13865741292872 0.1270237520431866 +5365 1.46644367916483 0.5477539969464712 0.703050602031087 +5366 0.6963965584189552 0.8967306871441173 1.370036523857277 +5367 0.7710872437652002 1.201430483125981 0.5239686270073171 +5368 0.9355153420660205 0.4120028838553542 1.360452453104076 +5369 0.2843840029096871 0.9322172421750496 1.882450418312093 +5370 1.474854233692288 1.867303794409116 1.658903659307351 +5371 0.8512135169899974 1.629647181626427 0.4740301045627882 +5372 1.35776260109824 0.1206067419305117 1.173595768796015 +5373 1.712761690906726 1.445858349141847 1.591551960641853 +5374 1.903297178639586 0.8204719240485697 1.426721267912613 +5375 0.8655608806941646 0.4317910995706329 1.212457672911579 +5376 1.710760327841693 1.331862114703779 1.315585155804611 +5377 0.858447753286432 0.1194706059071161 0.4663707290914942 +5378 0.9602254069153713 0.1279369589273028 0.8012203821286595 +5379 1.897444925598704 1.532040293734258 1.09563838005669 +5380 0.9896160973464705 0.7084552830668669 1.884982745185197 +5381 0.3781541764545925 0.5034903067321255 0.5184593721484234 +5382 1.135327466265797 0.4720791024566473 0.7151096999530471 +5383 1.442725402838332 0.3176101672139608 1.041703193952438 +5384 0.4173759387868105 0.898674855191591 1.874018318609502 +5385 0.374518359610661 0.6507997661118221 1.498873357771073 +5386 0.1089431289123341 0.9404391122699355 1.120760636410416 +5387 0.306684854076666 1.863917170691154 1.492278790269702 +5388 0.5464483867662414 1.405345093237572 0.3953111949872017 +5389 0.2267785966695463 1.601983620596737 0.9616274141257332 +5390 1.706712326057228 0.9366092212400227 1.414740906880067 +5391 1.182746705572835 0.9521402643694197 0.8507852985787938 +5392 0.5424355065457548 0.5371538409658489 0.8889416626030628 +5393 1.234723744381113 0.4704850786616812 1.20653931351908 +5394 1.365085775577256 0.2371195205132687 0.9060108744506444 +5395 1.552081587200229 1.237052920582479 1.253219881017443 +5396 1.220285811993143 0.7148020789684048 0.5848081249243989 +5397 1.121006410777903 0.8297231244372725 1.870677261718581 +5398 0.9425824718323782 0.7637770761378099 0.09857516382337413 +5399 1.73199593898991 1.58780351190311 0.8542778742947529 +5400 0.8685819310373846 1.887822511879541 1.005891371377737 +5401 0.8819404427470071 1.30122435455274 0.8959705503250618 +5402 0.1184432528613981 1.571819135857361 1.863175464680339 +5403 0.5630404967889573 0.700071612272654 1.243748825015469 +5404 1.872100598817364 0.9170767178866075 1.710710924349922 +5405 0.2857962003991646 1.757931757802433 0.1185227482745453 +5406 1.475456197958751 0.1337786526288672 0.3251856359979169 +5407 0.9250830561208463 0.4798190947049171 1.047388796452349 +5408 0.1284869329642513 1.501417067696798 1.668122494498126 +5409 1.043376410428619 1.705362959951048 0.1266837870328763 +5410 1.574757221627712 0.9054814323816436 0.7872716772973165 +5411 1.134539179362685 1.205698144884227 1.278147650695454 +5412 1.010406085355198 0.2867170634431068 1.22610426054812 +5413 1.51820759126026 1.649305282294374 1.16865335623684 +5414 1.833930601404076 0.5205438405687596 1.230115140944888 +5415 0.3425114058157864 0.262052820345421 1.429040110193778 +5416 0.5922198316184312 0.3751216358883545 0.2479372529516267 +5417 1.85680851879562 1.712533036745156 0.9548341227161342 +5418 0.9986015983803682 1.686525994021195 1.484471821115011 +5419 1.565425152200519 0.7362932626430445 0.8436149940317733 +5420 0.1255603263046683 0.4693401379958995 0.7586805619233389 +5421 0.8457754864853092 0.264004426179594 1.227044825619122 +5422 0.4603590366289495 0.888511671140128 1.234357702986965 +5423 1.379638331853861 0.4584834720534319 0.5992802156516108 +5424 1.380152300613449 0.8256499471604104 1.2571985064324 +5425 1.212490746057997 0.4120277224133519 1.731539164955617 +5426 0.744974391821529 1.068585573096826 1.875409133944548 +5427 1.279915465741402 0.1166732372728342 1.007690912943336 +5428 0.91360432881251 1.883683945082095 1.289879291412325 +5429 0.3658002829664739 0.2465651675851074 1.208662181836545 +5430 0.4287199570192845 0.7550641233270409 1.732131979459695 +5431 1.478648360135177 1.620541831475996 0.506853556910085 +5432 1.493585803673431 0.3431173711222911 1.862309315103784 +5433 1.315776817637702 1.19341144624121 0.1204658706410462 +5434 0.9406022280165051 0.6302208437636152 0.3041971966000823 +5435 1.370614125884282 1.725254955591009 0.8846426800023216 +5436 0.5192032342726337 1.061789000757585 1.018481334221494 +5437 0.8954841482361907 0.6673888595581751 0.4510321493785663 +5438 1.395427823539106 1.879730159966843 1.085178834359629 +5439 1.605633755143108 0.3051625562728105 1.451988044207185 +5440 0.8450759865742505 1.49862431365146 1.464216486953039 +5441 0.9337324990148037 1.885246094817773 1.738402183763255 +5442 0.8969955420107364 0.8362984567791777 1.875373489979642 +5443 1.129699347116991 0.5290453170645166 0.1116237168895721 +5444 0.8642378041335252 1.737308577514961 1.75873392162305 +5445 0.1328068337505679 0.8584555443993738 0.8198440478096995 +5446 0.4158410293458872 0.3314358731558987 0.8391069372354433 +5447 1.027043569827284 1.063086238351194 0.620136170167276 +5448 0.08752981886273085 1.311730877366996 0.5838808944927292 +5449 1.111492913547778 0.8563727800029921 1.720518293589633 +5450 0.4976959509839774 0.1200525659587992 1.432717496779799 +5451 0.7882954399551387 1.72334861068169 0.9726743039962276 +5452 0.8764647361950749 0.7734785894218679 0.6770571510452147 +5453 0.9073179670830079 0.5023054299110796 0.3824106311716934 +5454 0.5621233447249063 1.897341451386934 0.6726551525015452 +5455 1.274299206372567 0.6880076664993523 0.7451385960661802 +5456 1.17319239970334 1.522167723287488 0.7522914246179916 +5457 0.544536852295896 0.7427069896996101 0.2864254782004447 +5458 0.7530900877437832 1.887534227855481 1.260982689536047 +5459 1.466230046613987 1.13935147676601 0.1251274184204706 +5460 1.419027159590664 0.1151593356406568 1.882831142452114 +5461 0.1138292734976697 1.900812764763701 1.555352115966195 +5462 1.902180999272496 1.408545847968401 1.894577029526771 +5463 0.9139227528658016 1.118713992281633 1.425111486311527 +5464 0.5563939605850047 1.881885888838001 1.343715557598301 +5465 0.6609436206780761 1.141607936137538 0.9687876642733325 +5466 0.4946125442198344 1.668496605364368 1.869654744429726 +5467 1.477506486089536 1.606862278671784 0.8471370582681585 +5468 1.122105881459654 0.875783256208525 0.2984438629217216 +5469 0.2722181622302459 1.229681891865775 1.089293133913195 +5470 0.2893881853974942 0.09925200966322718 1.7502633703213 +5471 1.885808987818034 1.228112952599075 1.507124782208187 +5472 1.494327978196575 1.488012600968708 1.666822893804788 +5473 1.125641278492876 0.7065000578565849 1.171031717632294 +5474 0.8079082015896959 1.744203398396125 0.3782855924149487 +5475 0.133826665191239 0.5152573873179901 1.708480662268015 +5476 1.247743865933368 0.6998132110935433 1.377245600256067 +5477 1.507988118826797 0.6250855139978148 1.247957823672792 +5478 0.746322133198737 0.8848505268089533 0.1174687669503518 +5479 1.884981426048363 1.75413864007192 1.733643802754271 +5480 1.507626349216357 0.1161616973817423 1.142053600240766 +5481 0.1061296675918089 1.57227311008864 0.9123826466426019 +5482 0.9203441148019897 1.711906358908204 1.894467427377583 +5483 0.8325228747433296 1.874934146247254 1.520046637108161 +5484 0.572393569955867 0.7303133643312474 0.557219042297071 +5485 1.167413021343808 0.3514289026648765 0.605660654656443 +5486 0.4692326164769929 1.895462557694732 1.108191161289218 +5487 1.514465465068729 1.415894400743296 0.3987389024325546 +5488 0.1060926871890849 1.740279172573492 1.752604058508994 +5489 1.42732448192515 0.9008455943024376 0.5549888898323205 +5490 1.746773904555551 0.8102189100427257 0.4197939905472657 +5491 0.4431882907192471 1.149732798219663 1.629258715688589 +5492 1.182142161728693 1.528975777682577 1.50968058547636 +5493 0.1114542857431394 0.9146136218122124 0.2867462669158971 +5494 1.636403079285346 0.5843009143511707 0.8951512447648692 +5495 0.1277991192359034 0.4515879049367136 1.124272291009651 +5496 1.714391400418273 0.9092871420023568 0.842694940379792 +5497 1.479035708427058 1.139343638921894 1.147406258911666 +5498 1.183159472045686 0.6037567401034081 0.6511662217443974 +5499 1.726079852364042 1.176693321471692 1.275984794567532 +5500 0.2736094178277383 1.183593427652875 1.581293690489036 +5501 0.2965038961383125 0.2475823615481291 0.7945772622077827 +5502 0.2842282521771653 0.1100105163908485 0.2169337413249698 +5503 0.4541582259063099 1.11854634197442 0.9052764736884866 +5504 0.489712859907173 0.2758620415438539 1.631069035913767 +5505 1.370429803243097 1.729358201014328 0.2421252785544841 +5506 0.8255935344966714 1.28316695714037 1.176465353875519 +5507 1.58464098040427 0.7352947146153735 1.89645912339245 +5508 1.589168458199053 0.6236635223748215 0.5889188299066181 +5509 1.477962112728802 0.6886528440466303 0.3759458046043768 +5510 0.1583242583827806 0.3574966236705911 0.5016860316892495 +5511 1.729053153189676 0.2622457362296681 1.350779804956259 +5512 1.130920527037645 1.895133208625036 1.05906438336775 +5513 0.9875408063971599 1.57224166217383 0.263962167435208 +5514 1.061970241789587 0.7284448940927509 1.407545127959094 +5515 0.8544518941461079 1.496913942231161 1.028466565254488 +5516 0.7992160880813234 1.134912997052272 0.7192334266230654 +5517 1.66009646724307 1.882510179957724 0.4876135546585773 +5518 0.1150949463719446 0.2825639112863048 0.2278525846458846 +5519 0.5957405382938306 0.5024519681320218 1.631010188560042 +5520 0.8528802280667924 1.354652563535877 1.750543628491167 +5521 0.1114362535622278 1.409003881508397 0.119583957832689 +5522 0.2671472104390697 0.857516401961381 1.365754458045359 +5523 0.5340738835888421 1.215129920934191 1.716472834163425 +5524 1.876472780997198 0.8086706559916571 0.5019457056340991 +5525 1.755422190586729 0.6559255065925733 1.875489255646852 +5526 1.883932057199867 1.749979692054093 0.6524967278561078 +5527 0.7373086274561729 1.153492115838179 1.484201896235511 +5528 1.485250547173964 1.847422634284472 0.4169135111956801 +5529 0.8927202138251572 0.9163334651791192 1.236564237014294 +5530 1.877106010673719 1.505925173882575 0.3376250687024989 +5531 0.8139384169425651 0.1125891367030359 0.7283113670677609 +5532 1.528901594801213 0.1229717401947395 0.8464083363011893 +5533 0.1319730518201029 1.486232634756363 0.348759372298015 +5534 1.396481993671547 0.6255925561224496 1.004274555138943 +5535 0.9262984696711252 0.1142308064453239 1.7231828758093 +5536 1.61236696373612 0.9259733714935448 1.288999021814626 +5537 1.72364908833643 1.736100812159708 0.8242664093344128 +5538 0.7255983029853637 0.5719789389441665 1.421036935523735 +5539 1.473203908152286 1.196841509636011 1.645808095785531 +5540 1.214512533134384 1.257005357842581 1.091936956807223 +5541 1.165273528789022 1.460802919765992 0.09735758562064203 +5542 0.6639753891675855 0.116293034183849 1.736605499536837 +5543 1.733278015504113 0.2762785717169864 1.890224541189431 +5544 0.5503620688576092 0.9839276346716054 1.753324439323745 +5545 1.09381885847491 1.891261707995526 1.56723696205397 +5546 1.253784148312408 1.077820432109854 0.293639446132727 +5547 0.4363672440555049 0.5656967853213953 0.1217373582472153 +5548 1.416149105877127 1.374675466649968 0.5056528253683272 +5549 0.4976333709332584 0.3303723734979081 0.122871618885208 +5550 0.9664161076821963 1.894327726163828 0.7757961368482239 +5551 1.713824184290377 1.761407252427323 1.892127460289363 +5552 0.816646807372853 1.876971874099637 0.7349799630870152 +5553 0.8255562812804447 0.2540524674217181 0.1196203174320426 +5554 0.2499285597216103 0.833019246156123 0.265124475564434 +5555 0.3575246700207386 0.8712337358572891 0.5230844469290333 +5556 0.7583592014326132 0.7290606493495302 1.886812050589783 +5557 0.5209569273548604 1.45296588626431 1.01216043344895 +5558 1.219258462514486 1.074916033437044 1.884122320867676 +5559 1.896597143321654 0.2452611140099824 1.183213056158615 +5560 1.748436376713319 1.886022076130131 1.74990852267311 +5561 0.4958499801956998 0.1203981584700311 0.3001327672658404 +5562 0.3528848664827659 0.1031308467456815 0.956983174886851 +5563 1.060363014399386 1.750830873322226 1.366837118856676 +5564 0.09980508847665609 0.665668784845206 1.418556964169306 +5565 1.355508776431175 1.724590894345093 1.11523344447296 +5566 0.9859320608862108 1.714791975192051 1.127206178403119 +5567 0.2802542619032358 1.103522071515438 1.104210730573207 +5568 1.745486901163134 1.900498506177965 0.2457855494929481 +5569 0.3002128181182397 0.8545176944440728 1.772863222384573 +5570 0.3776385654422089 0.4128206029430624 1.207271566930496 +5571 1.873881723838962 1.180473715643115 0.2435347662233384 +5572 1.883782746329037 0.2675825951443664 0.2812421402157214 +5573 0.9666098052835228 1.06711058331109 1.59750753698367 +5574 0.5109038367303068 0.4452383615908973 0.5087920787875382 +5575 1.652875555426074 1.025036599624984 0.7708162306817113 +5576 0.6865398473409569 1.396559948959142 0.1006626929126694 +5577 1.867709336245515 1.624868243472561 1.403138506590787 +5578 1.375930272596968 1.24036843065115 1.296110387195528 +5579 0.1135347957556599 1.756812011049009 0.8337051491837928 +5580 0.8381601313670108 0.3782126987401259 0.3085272632501827 +5581 1.765297306976829 1.175804875903074 1.90204299099836 +5582 1.289243052175693 0.7583301196725264 1.11401387844774 +5583 0.3419692652479984 1.518435309714409 1.306150400717803 +5584 1.75665272917672 0.09072595429185827 1.2055133874694 +5585 1.731875101940001 1.754386214532219 0.1020465291801546 +5586 1.724658878547545 0.8644871761930862 1.189910488620612 +5587 1.460578640915424 0.7629318608442254 0.9226855624998965 +5588 0.4940633596492882 1.724354253052421 0.3855411737317826 +5589 0.4020097107938479 1.575460915858449 0.76852027231755 +5590 1.75736049152911 1.153329792839773 0.1243161900256396 +5591 1.039753331555321 1.344199859196533 1.550104172428986 +5592 0.8715768845398509 1.08183208937033 0.4018969497619431 +5593 1.297805685496894 1.400932114339709 0.2725600188013791 +5594 0.1271845504707797 1.088991265381929 1.734826205901719 +5595 1.519117133115169 1.880652443132435 1.149943106105052 +5596 0.8815149088461763 0.7230498633454984 1.395160549051037 +5597 1.887567287850561 0.2896877693404684 1.731557798268316 +5598 1.483548048837225 0.3870779741735193 1.51790848302302 +5599 0.8571168900535541 1.889688868568614 1.402625091855514 +5600 1.127916329496037 1.287173791170681 1.419401801622515 +5601 0.09645279570865307 0.755956971443614 0.09547098687594682 +5602 0.1070468018846202 0.2492174063258892 1.720125016364716 +5603 0.1007178590220089 1.900566336993659 0.7377796809731664 +5604 0.6226380887462605 0.7745010023152783 0.9648664468892365 +5605 1.744565818733674 0.09353604948908165 0.25780412555881 +5606 0.5844523122331914 0.6666240827019659 0.1151605987388138 +5607 1.106424856016698 1.396114147782403 0.7918864245402851 +5608 1.275380982289719 1.19929061652149 1.879468440218852 +5609 1.148722599841398 1.748442674063759 0.7967213865325595 +5610 1.172213388337509 1.718779668766256 0.2705524578531222 +5611 1.531676491056257 1.858443159560063 0.8016483504486536 +5612 0.7326528949424049 0.9320936718090177 1.599270964352517 +5613 0.6448153198346065 1.539265960956623 0.4528368442207745 +5614 0.4351086281532115 0.7982207954221501 1.596061642519348 +5615 0.4367991451409652 0.7978819518571327 0.8274046430112072 +5616 1.269472067919851 1.919149241275938 0.07796741572029438 +5617 0.2931440466294977 1.17298780521179 0.438645670826963 +5618 1.65521354348221 1.8927041509618 0.7759127561741329 +5619 0.6086760491353859 0.2409407406966408 1.518420229034109 +5620 0.6429161935521945 1.713425245058693 0.363953985498358 +5621 1.896359416741517 0.7595981881107564 1.900730354445819 +5622 0.3677714839769824 1.591086976643727 1.888695821530252 +5623 1.41982418346243 0.8956608597530755 0.7150731153503902 +5624 0.9290059853142089 0.6534159032473352 0.5956241391390887 +5625 1.912321010522448 1.778022436992582 1.906460243493912 +5626 0.9040005674765966 0.1273966062259531 0.3020327312404038 +5627 0.9815484148806198 0.7708429015679458 0.355783034453449 +5628 0.102780748774745 0.7546578860312536 1.907536402159376 +5629 1.900603182202844 1.897945794471058 0.7513978718755007 +5630 1.885794978354214 1.088956591907561 1.76307562822527 +5631 0.7634750669641898 1.908779147080918 1.910057292375865 +5632 1.900672866081183 1.104244214692417 1.534702806662883 +5633 1.889452492308164 0.1050321968809804 1.237730299989253 +5634 1.886636512269933 1.246838292285299 0.1130205979892881 +5635 0.1008425419941485 0.09282296010993055 0.7543199379479485 +5636 1.746041479286625 1.425774703109159 1.201675704654253 +5637 0.7536246775279408 0.1124614221519786 1.891585409322906 +5638 1.499802689848785 1.656831170610099 1.327461310869469 +5639 0.4883081049734904 1.006647404888514 1.863192685592994 +5640 1.300025441097931 1.351881622243183 0.7110760455472801 +5641 1.868083547991809 0.9085271440243887 0.2434456966884895 +5642 0.8084018913012817 1.881540762909085 0.280428139222391 +5643 0.9127996864587746 1.616669085291495 1.029883692463974 +5644 0.4202347819405796 1.886866622299942 0.8874489972658886 +5645 0.09190886627793639 0.2123379590470688 1.185481897732184 +5646 0.7526249325741901 0.120409192476977 0.09848165934730309 +5647 1.433344029741402 1.415503788159401 1.275220854020624 +5648 0.1299687303471368 1.424008468021809 1.315352607701858 +5649 1.407028795136926 1.377463158990009 0.7484853662288782 +5650 0.2712325050846264 1.095574331832323 0.3109154745179165 +5651 0.09644143783805567 1.433230254869679 0.8723158790933579 +5652 0.6306056281014067 0.9457214326796882 0.6552256864191239 +5653 0.8827592488875063 1.08405075340443 1.026488131764118 +5654 1.909562437083873 1.219847433982492 1.775437479677413 +5655 0.9627673881464741 0.3313219659045723 1.628064712474408 +5656 1.202950020902452 0.1106843351740882 0.2333379391969665 +5657 0.4369910391881983 1.160161387953416 1.150464987078311 +5658 0.7791523508931735 0.4485528558166627 1.097870772305698 +5659 1.365923135558251 1.009105535864016 1.081284415153959 +5660 0.2610790609353338 1.666969912053383 1.587138738945262 +5661 0.9983298359510453 1.357085286417427 0.5694960355837185 +5662 0.7247080126231277 1.60112737322186 1.076221297350293 +5663 0.3613181946043753 0.2714567189441228 0.5067658347194682 +5664 1.343411546587284 1.108459092671693 0.7423930611022278 +5665 1.359433267047724 1.501106926122032 1.652766334481937 +5666 0.8151483033381096 1.560324967129886 0.6728376808995057 +5667 1.695029528689517 0.136094656119951 1.460145416149215 +5668 1.50273557132699 1.097763915315874 0.3777943920840388 +5669 1.705851146772164 1.558718617653108 0.3426806523816301 +5670 0.917712580219242 1.477785732375575 0.5131279727902605 +5671 1.892127553640833 1.222599438624072 1.254669926125196 +5672 1.320133026241558 1.377136966434129 1.881850703003583 +5673 1.110263572624647 0.2438290121550928 0.9411291978230254 +5674 1.452039094639854 0.6507637671731884 0.5452788863897293 +5675 1.460074462162668 1.67578117139067 1.777867015577941 +5676 0.3128818077926912 1.561979847079014 0.3455301682545255 +5677 1.234697240962572 1.536395809403708 1.720859290162652 +5678 1.315995041809943 1.696078612407317 0.1300185346890773 +5679 0.1728540590337769 0.7816767837532373 1.47963747677705 +5680 0.5951472364522504 0.9315858750346007 1.275506067456067 +5681 1.256009995449251 0.5581016971369959 0.5644331775313771 +5682 0.3691249388814292 0.5130686983404594 1.47565520594025 +5683 0.2768294530606702 1.719241072571467 0.8116198613616827 +5684 0.4338504338253418 0.3436916219052158 0.2865312274278236 +5685 0.9519029923442853 1.381946811031904 1.037642073425973 +5686 1.591870157722838 0.3268335448953417 0.9749919414968308 +5687 1.909808725342427 0.4569925623303622 1.904791721347936 +5688 0.840053374600672 0.53290670732435 1.475344492572781 +5689 0.9011372560278393 0.8268602951918944 0.4545732968218015 +5690 0.7581194294147717 0.937176742816672 0.8467474017052103 +5691 1.351106056531778 1.031462986764821 1.85890003557433 +5692 0.3852026613017615 1.024482844393113 0.2748121796869495 +5693 0.6164312960661645 0.2513887113368013 1.702302573109742 +5694 1.698861744204868 0.4136693472912232 0.3326619370156854 +5695 1.067800268588275 1.054390610956428 1.502900131993767 +5696 0.7770182093330386 0.1061947441023561 1.405926242725544 +5697 0.7607419116495421 0.09270589170129319 1.573305776997864 +5698 1.709325313440146 0.6887253839819647 1.108175528237909 +5699 1.442794212154226 0.2680852648658367 0.7772297654253286 +5700 0.5639153112401656 1.844136906490432 0.3784298797808083 +5701 0.9403204139791785 0.8570591174550619 1.5746690757544 +5702 0.345924708276207 0.1125132670165433 1.44127264144441 +5703 1.241488281491819 1.539943082475217 0.8838505102814945 +5704 1.683111604228152 1.559661333505081 1.717187389023834 +5705 1.105703915335098 1.857536107750647 0.8760269077993106 +5706 1.76080949093227 0.1003734243921602 1.75546863551899 +5707 1.705345275546609 0.7490894491202299 1.571682540733302 +5708 1.732280471972202 1.733294655700827 0.6455219928028021 +5709 1.878537473307511 0.2414080260204224 0.9010011096037044 +5710 1.355972638259203 0.8778735618167056 0.9529186240303569 +5711 0.4769951058838434 1.274640118747481 0.3167826501452724 +5712 1.890225551193135 1.245625415930468 0.8856426682748658 +5713 0.609014902151279 0.7017479292294024 1.089025404582569 +5714 0.09323138080424863 0.9689815239000966 0.7365953785307956 +5715 1.031105480962492 0.1796772823018329 1.45338119484127 +5716 0.3532411283302576 1.625125210988839 1.012891050142136 +5717 0.7579679883305545 0.3943689154997154 0.09750214493556339 +5718 1.384945105802006 1.885404442837842 1.481050714831129 +5719 1.256020476290315 1.893143675681456 0.9721277797682411 +5720 1.404900826659877 1.743147641298495 1.680498542480319 +5721 1.217193089417521 1.901440494655869 1.752993512354203 +5722 1.13530141708432 0.9301787473141045 1.260945224367089 +5723 0.8481914495713055 0.283481855680135 1.567586958297861 +5724 1.608268796373553 1.081266206659401 1.057194990101859 +5725 1.708984116693789 1.599290735727155 0.9877191588506317 +5726 0.886917491491078 1.331953829837374 0.2411421570722085 +5727 1.405558260619497 0.7627903362389353 1.890286474418954 +5728 1.212341910160716 0.8872321126635231 1.640382627112378 +5729 0.3380724227719857 0.741376304589715 0.6129659659605361 +5730 0.09503703470694437 1.568530141020377 1.09473674376369 +5731 1.175729270858919 0.1075906552796242 1.760062222384152 +5732 1.905731831244794 1.90985036072797 1.541471836474492 +5733 0.9944543953810511 1.472319722476747 1.705355989616325 +5734 0.4405828580336124 1.896403141013289 0.1007250936666182 +5735 1.903299509138637 0.09425086107364065 0.4595702466245866 +5736 0.7242738378674726 0.5532929554159345 1.898326105944965 +5737 0.3953386746049414 0.7227255071046572 1.046355423883218 +5738 0.8197130766631795 0.2545555786590503 0.2621532354062007 +5739 0.9226407449372875 1.382970997103222 0.7974442721209938 +5740 0.1283720164887493 1.879384127545182 0.1216205037631653 +5741 0.4517086907188472 0.739937773982659 1.190815790664246 +5742 1.764057362387026 0.4083665254736201 0.8075522782164801 +5743 1.277096621036394 1.775334385200899 1.709561863999673 +5744 0.2782308364690117 0.5460202782924625 1.04927812837097 +5745 1.205132256055052 1.753354778347123 1.892905373414033 +5746 0.9437107904123389 0.2720560713911417 0.7389385348623808 +5747 0.9190563533059597 1.762766108502662 0.135841109548128 +5748 0.9648298879311354 1.516405979012674 0.9292609868379966 +5749 1.134497175733071 0.642860062663994 1.895137588799923 +5750 1.090385593139634 0.1288330007383891 0.4286154507647628 +5751 0.1097504720988388 1.60631186030926 1.362631946863488 +5752 0.248876282729034 1.906264003921664 1.210191267316467 +5753 1.453846779932546 0.3223781473769868 0.1325011764803861 +5754 1.731886476888331 1.060243774934311 0.8549961562888917 +5755 1.327335559157698 0.9736164560201118 1.235112718571913 +5756 1.425099690253986 0.7092161881159529 1.31034270691384 +5757 0.648520924510959 0.9882703935173259 0.1117523371491498 +5758 0.8018008677321435 1.596428480325727 1.726979895595075 +5759 0.2905378107215171 1.061102137889879 0.7565768221111289 +5760 1.159652520853152 1.416254594587672 1.736476900266832 +5761 1.22092813075223 1.895753832063395 1.223908073800715 +5762 1.272641917838154 1.771738639966927 0.3419770794367841 +5763 0.3603861452604593 1.356525582082805 1.301846106322361 +5764 1.895491690813018 0.5987547621949458 1.306564848618525 +5765 0.7532504168569097 0.1069672162905247 0.3848039937814783 +5766 1.129732599766774 1.458530156181847 0.8913445543902276 +5767 1.242289258855992 0.5899596206381748 0.942390856723361 +5768 1.224176040386687 0.8509836769978142 1.767629259621961 +5769 0.1115180035514226 0.1331759216568445 0.4606129752082336 +5770 0.8831275935975648 1.088240500005687 1.886337476114837 +5771 0.2618571844844123 0.9055255051325691 1.196970797943441 +5772 0.1000151083300433 0.8673460083896584 0.4446358341464474 +5773 0.3839533552379856 0.7656815054049467 0.4408974694449607 +5774 0.6105188354889852 0.8657081305198708 1.771984583761141 +5775 0.8093528582985521 1.179514679001437 0.2739668250581024 +5776 0.5691907345415316 0.7073834212201039 1.731297637771101 +5777 1.780715473391178 1.271564220253725 1.205338794312769 +5778 1.898870097111036 0.5790222443032215 0.4766932302649775 +5779 0.9435372874392524 1.048572176971284 0.8958537495494194 +5780 0.8727372779166837 1.54042290510828 1.889084946098666 +5781 0.08943069003232386 0.9847473827296872 1.324200929183737 +5782 0.09162481950214704 0.675408781177507 0.6002109293852367 +5783 1.719677253952973 1.191339966242063 0.2492549304172137 +5784 0.8809399012549136 0.6688019076087187 1.541189721902136 +5785 0.8407566178500873 0.25130305216164 1.90064784284319 +5786 0.3638732966135208 1.490656412293574 0.8424617033054536 +5787 1.721170039912029 1.119462478947024 0.7006380333076934 +5788 0.8194626912877905 1.612434257941253 0.2602770732136738 +5789 1.909583814751356 0.7724714159924799 0.23138059833078 +5790 0.2389756507473387 0.6638702438090811 1.86768018265984 +5791 1.448563707014315 1.722416468349219 0.1074822551912016 +5792 0.7470665605514484 1.252049982079347 0.9269494499962851 +5793 0.0939070186631418 1.098621957320166 0.4253948816648525 +5794 1.503329920571629 0.9273948775127031 0.9318223060011613 +5795 1.080293705317254 0.6296150499465312 0.940257979904336 +5796 0.9029439451244631 1.736476163045012 1.371312389527972 +5797 1.549873897447022 0.08787245025819855 0.0850760537923666 +5798 0.1111978838824355 0.9028768353144795 1.554863668061345 +5799 1.248368564274221 1.87561364982185 0.7265483181759669 +5800 1.629408378848186 0.2506296481814721 0.7531688140693278 +5801 0.2825887508961957 0.7444057476157814 1.582676886211974 +5802 1.115082888192723 1.297939752775512 0.6252031999135594 +5803 0.2519447936825305 1.197690439148561 0.77673858936136 +5804 0.866448939297303 0.08963404673331886 0.6003909401256206 +5805 0.3352509680856388 1.007321716381832 0.393431965579879 +5806 1.719616000223794 0.4200510636736423 1.195611228452217 +5807 1.704241952734824 0.2991771058457778 1.582605850346615 +5808 0.09446476081685276 1.340077825773187 0.4449485484719776 +5809 0.5968710608337474 0.5466822908696853 1.480711499857736 +5810 0.3192649103771362 1.791656020618473 0.714691128942213 +5811 1.899333682598182 0.7447799597952987 1.26754928782073 +5812 1.261098322707385 1.553235459302749 0.1145434319535376 +5813 1.740115000424574 0.8496274012898576 1.872226018197848 +5814 1.20668195648314 0.2374192523395823 0.1180567330335654 +5815 0.2600918859677248 1.758063806620306 1.909841234265417 +5816 1.901937989146635 1.572313279916428 0.7114477528215797 +5817 0.638216310256095 0.7896582359848305 1.179170834429712 +5818 1.368784714123919 1.165936123667979 1.573988541450304 +5819 1.063437078286611 1.750258731215862 1.63642000280481 +5820 0.2552800580309151 0.4080244166610266 0.7810223455312998 +5821 1.642190866529241 1.349067201501767 1.848993461263805 +5822 1.432947019327332 1.395813564620466 1.581793935359135 +5823 1.47154177186591 0.5011295472122252 1.731254301091155 +5824 0.4592807858623454 0.310174657167215 1.493484328813966 +5825 0.4308839508952215 0.09159567693138608 1.574058557297804 +5826 0.3224086384092849 0.7335502715553213 0.2029589468494434 +5827 1.583383300706525 1.567718209579267 1.90553008280385 +5828 0.3733159219238395 1.893865587518274 1.604135211418892 +5829 0.7678476931361209 0.7140445644335888 0.1041805671507612 +5830 1.901419989714278 0.227042882473824 0.7388152546270706 +5831 1.563685681022594 1.269321391159206 1.740355818345598 +5832 0.2485990403747881 0.2481647971216594 1.907896560354609 +5833 1.111645806422933 0.1370906361939388 0.7831546356497964 +5834 0.2299844212516981 0.8666453271613255 1.02165837201395 +5835 0.7858546331347777 0.09626326055059643 1.758793314574042 +5836 0.4235156413267306 1.449962372016608 1.343935479417471 +5837 0.2492813450338708 1.905711554469982 1.749850795568889 +5838 0.5375771483511675 1.483387155399245 0.1045019678751504 +5839 1.610148940716309 0.8894655848225328 1.458523079079786 +5840 1.257671110054631 0.5550934875176614 1.4648762665054 +5841 0.6448277914561016 0.4196169367637755 1.145200524871223 +5842 1.275045477443098 0.3932528826970252 1.594203541750784 +5843 1.249355205782749 0.7930645935888904 0.2299048663192998 +5844 1.892245122742357 1.772936559746399 0.8141828796832951 +5845 0.9798838490272127 1.918552314100338 1.091129638188156 +5846 1.509411924750177 0.1159750126304018 0.9886705451886278 +5847 0.2318837952290032 0.7947961127756419 1.904235227357902 +5848 0.2528084085526063 1.403812174838261 1.664999802261906 +5849 1.302211034212235 1.620632268675846 0.6756841209990767 +5850 0.3657567795409908 0.8561419308501574 1.50837711884852 +5851 0.5608205032571318 0.877947931099228 0.2808628587720818 +5852 0.6037817871596478 0.5544002228702152 0.4092948365398698 +5853 0.2497840856492904 1.249627880380704 0.294571091645802 +5854 0.2841066950024613 1.791126515290256 1.281626529121519 +5855 0.587109948437791 0.5778392761429082 1.276282685017308 +5856 0.3883406287523671 0.6190559862127044 0.5600945882810693 +5857 0.7776274354937324 1.778230146150721 1.90414769695116 +5858 1.88015431936851 1.399002192101476 0.7631162433323579 +5859 1.547163930068836 1.249274799910193 1.878240500174017 +5860 1.881418685424227 1.546199117868056 0.5323761119250012 +5861 1.910916474897742 0.4495885464343223 0.4049501369816839 +5862 0.09910943189954598 1.773987293906262 1.115638448376554 +5863 0.3670545325053253 1.088987197790687 1.545480950579088 +5864 0.5983579802964983 1.620618312543801 1.193084037771265 +5865 0.9033799888638794 0.6657821551962495 1.173157841038683 +5866 1.079472550117156 0.6964426120483663 0.5997677304904402 +5867 1.766345249272177 1.386304164054865 0.7073187312557522 +5868 1.211846703944077 1.70993566306112 0.9156782573324727 +5869 0.4279232965418455 0.5660317913283442 0.870196447536375 +5870 0.6866843593897828 0.5332830895744223 0.9189862897061372 +5871 0.09606103509394102 1.219217375438744 1.752250558673847 +5872 0.4537937527682316 1.112914408269216 0.09683120919893172 +5873 1.277408051243848 1.210478113226872 0.2475917440763649 +5874 1.877015486641715 1.505950480863523 1.238697651948468 +5875 0.3363487992419758 1.329137079302756 0.247791001038086 +5876 1.727379731068645 1.059467690059479 1.711767570992691 +5877 1.553225132751109 0.6305901281439156 1.775251291575683 +5878 1.895186304820545 1.104321177529819 0.957780614657042 +5879 0.1045814877299843 1.240196434265643 1.321720147035352 +5880 0.9238229406052001 0.2801377625938575 0.9041631695164914 +5881 0.8646025223833219 0.1244225259298799 1.286078017116282 +5882 1.490205568283414 1.098566851497736 0.9717287260789427 +5883 0.9185508445436908 1.160680733188019 0.5417285719611996 +5884 0.4300273198262845 1.367369158917507 1.440618071887044 +5885 1.670564400066765 1.052975798334415 1.483331212995467 +5886 1.722633150035894 1.40909850412485 1.719695226835333 +5887 1.565886944250052 1.901899971173463 1.738537768086756 +5888 1.887369358804241 1.778861114049524 1.126196257990779 +5889 1.011554784585957 0.8166771709568308 0.7122218943791065 +5890 1.340506264601077 0.2308023089547588 1.108560262166541 +5891 1.076100111132595 0.680068221634469 0.09993294840688845 +5892 1.908658057070858 0.8580660001764452 0.8624929067720264 +5893 1.72217842491124 0.3689619924800098 0.4657372668412643 +5894 1.416729948250848 1.625446656001517 1.887410254166727 +5895 1.243935639232395 0.2644252421005608 1.617014384405195 +5896 0.4222819744245092 1.397757116456633 1.066787230598273 +5897 0.108727641291405 0.897814790444239 0.978482742568936 +5898 1.549497221580794 0.375036706117935 1.726810878252268 +5899 0.3642061948161784 1.18650575246141 0.2730717924905275 +5900 1.882446873273623 1.439318283949077 1.52482857478913 +5901 1.54722922937931 0.7966429307038806 0.7243531858730207 +5902 0.24396083411807 0.6392131878976542 0.2800597319448589 +5903 1.153849680338861 0.2199749314230846 0.6585010824497075 +5904 1.365466869825414 0.1176023498560921 1.427378789738498 +5905 1.733453326393132 0.7094655769297364 1.433965085906303 +5906 1.309286420011039 1.194186682250168 1.141483582112507 +5907 1.535676527905453 1.143428522890961 0.7339824370213749 +5908 1.411441138478066 0.2640162856038417 0.2570397244670897 +5909 1.562793224900807 0.092178269567338 0.2221567108049778 +5910 1.124222668715014 0.9942154798327943 1.90053140106207 +5911 1.896914841075232 0.7681741308301411 0.7415297474932872 +5912 1.464651094821412 1.776546237074251 0.5243131575597962 +5913 0.6603838658625117 0.9033338197259601 0.778635526887079 +5914 1.582362589999972 0.09586913812818482 0.4199075899799669 +5915 0.7761511701433236 0.6272592737462117 1.550746186093061 +5916 0.5814821380263215 1.323085549353971 1.782661701456175 +5917 1.736871429004834 1.649918378451137 0.4762551805303945 +5918 1.786766341749778 0.3545199441997826 1.102018403030058 +5919 0.3563516822959211 1.744977886075212 1.196625911311073 +5920 0.1254190056976967 1.297848870315488 1.196259539206792 +5921 1.124501478179882 1.340777917989078 0.1206648815544716 +5922 0.7214365542253742 1.899149277911984 1.584286028993759 +5923 0.7849958723738455 1.76300081820793 0.09276885360217686 +5924 1.104344138390056 0.7663670371480001 0.9330514186537998 +5925 1.409988637063436 1.912479643947729 1.238981231237696 +5926 0.3830347916347443 1.534223147923591 0.1029357196338179 +5927 0.2790183946935232 0.7934699013264185 0.4085427966300945 +5928 1.072300072765032 0.7608647098866643 1.048693956009156 +5929 0.4897693779035464 0.6729650507978052 0.4294479858908379 +5930 1.257058073621517 1.116519644973969 1.237609736584858 +5931 1.764833290014755 1.905393661158922 1.274583563808524 +5932 0.7944109488269865 1.733065236912813 0.8123038980883295 +5933 0.2599630058837224 1.754346385923918 0.6128751526887952 +5934 0.5672615314835109 0.6257276644392925 1.589978320575004 +5935 1.427290579574468 1.035934650751599 0.485322320455671 +5936 1.06607522967727 1.068074637599415 1.203736482998422 +5937 0.3706920865941478 1.756708069315963 0.9372750892984284 +5938 1.029790853801987 0.7716723476541768 1.651902309816332 +5939 0.9733735475696257 1.901484825983173 0.8959144377530587 +5940 0.1039141097580678 1.554635127058175 1.226122969378958 +5941 1.786631804597197 0.6718908135887438 0.09782524262462876 +5942 0.2844396943853283 1.770029496808504 1.403336497038461 +5943 1.282157958756087 1.305522000702326 1.426811996076318 +5944 0.09226564119576115 0.7883492324773101 0.2357581125918627 +5945 1.223363564005197 0.7197784939989921 0.09966885452340987 +5946 0.5677006945597424 1.030820881970127 0.2462983634001598 +5947 0.6084547461432516 0.6632661270615733 0.8898325262452235 +5948 1.678676934298537 1.175871905749125 1.142356901923031 +5949 1.205500564419488 0.9508596629534514 1.066393531961039 +5950 0.1043870659965697 1.891427864990441 0.4422823933791621 +5951 0.2164385967135989 1.357962244913936 0.9793774619488885 +5952 1.448081551706885 1.9144703359416 0.6935038947370753 +5953 0.2389475974971866 1.90694667780141 0.75601172203659 +5954 1.027772779994917 0.262685082551009 0.6335486604886823 +5955 1.90276742888935 1.56495493634487 1.577921659152593 +5956 1.746963964483248 1.43228183082256 0.842489546263699 +5957 0.9119885808050485 1.225833389867247 1.094479258990672 +5958 0.1052725890438907 0.4415496454573974 1.592246751636813 +5959 1.786052515035521 0.1080911433624787 0.5590877180063626 +5960 0.4847348588909112 1.503091639881601 1.537718833052077 +5961 0.5694558155421648 1.31741940515473 0.09472680006319996 +5962 0.9533311442516945 1.762865126804657 1.259168132158331 +5963 1.015268140826737 0.6556258432284263 1.556921692845875 +5964 1.750036133517189 0.8686512746196006 0.2860640816390281 +5965 0.2722981634888317 1.896322987426596 0.930635984266619 +5966 1.794042279614615 1.023472981411776 1.822386168041614 +5967 1.211382278101637 1.907091394467102 1.351201262868883 +5968 0.7421533721379356 0.7841158156309985 1.431461434269331 +5969 0.09899255193896557 0.428715024249691 0.4178403084682569 +5970 0.3797753803763738 0.5816361529193161 0.7727871359885703 +5971 1.623453174821806 1.725804125474381 1.539910855560797 +5972 1.153970685345453 0.7629469180005863 1.272285059133528 +5973 1.491795732660019 0.6802619538235409 0.6708407380884204 +5974 0.335326807115564 0.6359193934110867 0.4354801795847312 +5975 0.7233921198887727 1.068609145685779 0.4703788645041229 +5976 0.3039222329927815 1.293571568523303 1.497817414922352 +5977 0.4997567650837519 1.542107607973118 1.911405281569371 +5978 1.803667445223934 0.4856324788405434 1.871022913304769 +5979 0.2685178768308346 1.452220785021584 1.224151278190527 +5980 1.592608833936791 1.551957784787711 0.0957654152800933 +5981 1.782081601258419 0.3571149137381654 0.2354868973465619 +5982 0.7244949743160652 0.7810943634339832 0.8547126829079624 +5983 0.09879019842785064 0.5799251012770378 1.185719464058801 +5984 1.629507460872486 0.7656487988233536 1.452932382467009 +5985 0.5153307957930472 1.015388526324493 0.6440832534577713 +5986 0.6680863376965963 0.2352823596563705 0.2962531222745333 +5987 1.627216957875671 1.771151982475035 0.7319632763922722 +5988 0.9564785593475695 0.3745207887323927 1.753657514718193 +5989 0.5325276858170551 0.4314638670564244 0.6696646489983162 +5990 1.910561245511529 0.4239979910983556 1.558510002042364 +5991 1.765897004145292 1.430109403425117 0.4971517556274092 +5992 0.392230632194632 1.70763631683683 0.4517314606401358 +5993 1.602062449820943 1.90571029693818 0.8931101534377968 +5994 1.034765499112384 1.433812162564098 0.6932563636752536 +5995 1.034892197539063 0.2313823235423366 1.790139515056731 +5996 0.4441308972385029 1.242151169704626 1.32481074645939 +5997 1.773167141029801 1.308527458064805 0.09256384282152838 +5998 0.6408493879118139 1.11832271042353 1.361836056104746 +5999 0.1219534820069905 0.3575648992764167 1.454617238183835 +6000 1.889541372120798 0.5428025199091158 1.618900302547782 +6001 1.88993856772834 0.1121502233434375 0.28078312400783 +6002 0.6896041505639775 1.271839232005058 1.360515478137377 +6003 0.8290362451146752 0.276022762608863 0.7530257160851175 +6004 0.1264216111987814 0.5548736760877082 0.3705926057475592 +6005 0.110868658294162 1.233927595884342 0.2167810302647661 +6006 0.5383433783316306 0.8761815781499741 1.367659097828193 +6007 0.4519339769324436 1.903877485154527 1.508588481232177 +6008 1.373226217577733 0.3203323973457173 1.560375463111723 +6009 0.2515256231328983 0.7692091692334659 1.20421509981914 +6010 0.4871799402736683 1.85568597680422 0.2279998923742183 +6011 1.51890881053088 1.589614797156749 1.490542033318803 +6012 1.906208083710428 1.238757390053039 0.7373179298654333 +6013 1.424108965627721 1.289020841148491 1.761930261688219 +6014 1.897896934758212 0.4236449519011675 0.2492988795660038 +6015 0.9910264664159126 1.524680791141532 1.394636890172047 +6016 0.9012694413433205 1.728948810854926 0.2940358121930292 +6017 0.4733209661715845 0.582461073836679 1.222479976796965 +6018 0.6284512062076621 1.106880292772265 1.754814199874294 +6019 0.7366138018506457 0.3243887547775067 0.2227007902078679 +6020 1.75951119496541 0.09265183064420261 0.7985325116239538 +6021 0.7125354187041844 0.2349246400660286 1.909265899925476 +6022 0.1368492051305888 0.1369116914663353 1.904321957633012 +6023 1.352787199167291 0.63754012716166 1.900061310426473 +6024 1.6422785256847 0.7413218164828254 1.780963485423546 +6025 0.211201752656671 0.657296913109208 1.166511810796648 +6026 0.9782277796863513 1.905302931485522 1.489194846168262 +6027 0.3558752851565453 0.9397961485399767 1.297256052102826 +6028 1.654949159752962 1.801473200276551 0.2888953614626309 +6029 1.568162938240352 0.4048472093267967 1.922506459044999 +6030 1.343173389058356 0.7638597678520447 0.5570838788225334 +6031 1.89257460051492 1.783557288310483 1.448276360875252 +6032 0.6642284702755316 0.2167600523024995 0.6022790124670718 +6033 1.518678483299165 1.739216003504056 1.622640155981411 +6034 0.9390689880712538 0.5892833594651045 0.7375925298882314 +6035 1.882160280509012 1.858080103950941 0.1446301518121632 +6036 0.1028736623953636 0.5631631561697423 0.8261189984260893 +6037 1.108455318295479 1.913905916610651 0.09102402871286944 +6038 0.687118631747802 1.558504740224089 1.610395244363969 +6039 0.1803843573401218 1.221685904460338 1.436788755258152 +6040 0.2534022504791101 1.67937693262654 1.201571089413949 +6041 1.628401542829805 1.774944171270225 1.161492930502754 +6042 1.222562166854111 1.662481178643597 1.765737332244084 +6043 1.592571353654253 1.225388708536588 1.568686233267636 +6044 1.677665579682685 0.3813831494442824 1.783825967509033 +6045 1.086098418825889 1.729034316453394 1.232663915658737 +6046 0.2352123770589786 0.7538766393719261 0.08976572087993381 +6047 1.165257180610947 0.2259510172459943 1.399301522846104 +6048 0.5151959955478843 1.593393455847707 1.078241699317597 +6049 0.8508003771492573 0.1064518766160525 0.9802656134586281 +6050 1.414691327993716 1.266215770089986 0.08340848237310122 +6051 1.398207843453831 0.8342861575042618 1.775080431748268 +6052 1.369011251599752 0.1024600971000011 0.5460990176956892 +6053 0.2816969974652691 1.497059373592057 0.9881513266026587 +6054 1.370806205857179 1.901692214504236 0.5009203059787473 +6055 0.9725932640554698 0.4574791762017852 0.5828737789039548 +6056 1.360370525508116 0.3790765158167384 0.08209001652057145 +6057 1.591704053006478 0.09754602212708358 1.06030022177637 +6058 1.907785518502833 1.765941047420257 1.230027628601498 +6059 0.5518705310364649 0.08979859132660714 1.522820614940995 +6060 0.6356240594818535 0.7821182360554392 1.901610589362261 +6061 1.895737322530051 0.9428001983567623 0.5229218840286686 +6062 1.556541202288357 0.7290643492046104 0.469556306543239 +6063 1.905333378009971 1.910221253199644 0.2558062909414027 +6064 1.74927717288899 1.790182849762282 1.240819077974789 +6065 0.8909662775624777 0.9189904051026767 0.3437301386224058 +6066 0.7010584130508917 1.904093143886759 1.028283676366734 +6067 0.2389872353488001 0.1027507859078975 0.7412121646938467 +6068 0.7625899884154643 0.5726460034322264 1.672416241046466 +6069 1.886928465102712 0.1085516452951966 1.88603605684397 +6070 0.5269066169785949 1.944739094540801 0.05192559361903445 +6071 0.05605618901509146 0.05555603128432041 0.5342585895475228 +6072 0.5318778858838945 0.05608762168809055 1.94118749344475 +6073 0.05316550659106157 1.944814739997463 1.473876143690196 +6074 0.05290524649903991 0.5337099034266168 1.944519569235632 +6075 0.05330829652787556 1.944268043448383 0.5280007815101423 +6076 1.944300526631611 1.466867600453506 0.0550597367985944 +6077 1.930434114389353 0.06468767813747567 0.06453623553281798 +6078 0.06276820513538718 0.06286430581053522 1.932036062081339 +6079 0.06268920465469247 1.941707184665923 0.0615324899829246 +6080 1.921200913732649 1.920576335302852 1.921380835617216 +6081 1.927169437067405 1.937658071393517 0.06923775357149917 +6082 1.925735164160548 1.923879991461109 0.3624108487634678 +6083 1.921153580454818 1.64132666971017 1.924076175859804 +6084 0.0619218409920164 0.07035433522645579 0.06416764910979293 +$EndNodes +$Elements +18204 +1 15 2 12701 1 1 +2 15 2 12701 2 2 +3 15 2 12701 3 3 +4 15 2 12701 4 4 +5 15 2 12701 5 5 +6 15 2 12701 6 6 +7 15 2 12701 7 7 +8 15 2 12701 8 8 +9 1 2 12701 1 1 9 +10 1 2 12701 1 9 10 +11 1 2 12701 1 10 11 +12 1 2 12701 1 11 12 +13 1 2 12701 1 12 13 +14 1 2 12701 1 13 14 +15 1 2 12701 1 14 15 +16 1 2 12701 1 15 16 +17 1 2 12701 1 16 17 +18 1 2 12701 1 17 18 +19 1 2 12701 1 18 19 +20 1 2 12701 1 19 20 +21 1 2 12701 1 20 2 +22 1 2 12701 2 2 21 +23 1 2 12701 2 21 22 +24 1 2 12701 2 22 23 +25 1 2 12701 2 23 24 +26 1 2 12701 2 24 25 +27 1 2 12701 2 25 26 +28 1 2 12701 2 26 27 +29 1 2 12701 2 27 28 +30 1 2 12701 2 28 29 +31 1 2 12701 2 29 30 +32 1 2 12701 2 30 31 +33 1 2 12701 2 31 32 +34 1 2 12701 2 32 3 +35 1 2 12701 3 3 33 +36 1 2 12701 3 33 34 +37 1 2 12701 3 34 35 +38 1 2 12701 3 35 36 +39 1 2 12701 3 36 37 +40 1 2 12701 3 37 38 +41 1 2 12701 3 38 39 +42 1 2 12701 3 39 40 +43 1 2 12701 3 40 41 +44 1 2 12701 3 41 42 +45 1 2 12701 3 42 43 +46 1 2 12701 3 43 44 +47 1 2 12701 3 44 4 +48 1 2 12701 4 4 45 +49 1 2 12701 4 45 46 +50 1 2 12701 4 46 47 +51 1 2 12701 4 47 48 +52 1 2 12701 4 48 49 +53 1 2 12701 4 49 50 +54 1 2 12701 4 50 51 +55 1 2 12701 4 51 52 +56 1 2 12701 4 52 53 +57 1 2 12701 4 53 54 +58 1 2 12701 4 54 55 +59 1 2 12701 4 55 56 +60 1 2 12701 4 56 1 +61 1 2 12701 5 5 57 +62 1 2 12701 5 57 58 +63 1 2 12701 5 58 59 +64 1 2 12701 5 59 60 +65 1 2 12701 5 60 61 +66 1 2 12701 5 61 62 +67 1 2 12701 5 62 63 +68 1 2 12701 5 63 64 +69 1 2 12701 5 64 65 +70 1 2 12701 5 65 66 +71 1 2 12701 5 66 67 +72 1 2 12701 5 67 68 +73 1 2 12701 5 68 6 +74 1 2 12701 6 6 69 +75 1 2 12701 6 69 70 +76 1 2 12701 6 70 71 +77 1 2 12701 6 71 72 +78 1 2 12701 6 72 73 +79 1 2 12701 6 73 74 +80 1 2 12701 6 74 75 +81 1 2 12701 6 75 76 +82 1 2 12701 6 76 77 +83 1 2 12701 6 77 78 +84 1 2 12701 6 78 79 +85 1 2 12701 6 79 80 +86 1 2 12701 6 80 7 +87 1 2 12701 7 7 81 +88 1 2 12701 7 81 82 +89 1 2 12701 7 82 83 +90 1 2 12701 7 83 84 +91 1 2 12701 7 84 85 +92 1 2 12701 7 85 86 +93 1 2 12701 7 86 87 +94 1 2 12701 7 87 88 +95 1 2 12701 7 88 89 +96 1 2 12701 7 89 90 +97 1 2 12701 7 90 91 +98 1 2 12701 7 91 92 +99 1 2 12701 7 92 8 +100 1 2 12701 8 8 93 +101 1 2 12701 8 93 94 +102 1 2 12701 8 94 95 +103 1 2 12701 8 95 96 +104 1 2 12701 8 96 97 +105 1 2 12701 8 97 98 +106 1 2 12701 8 98 99 +107 1 2 12701 8 99 100 +108 1 2 12701 8 100 101 +109 1 2 12701 8 101 102 +110 1 2 12701 8 102 103 +111 1 2 12701 8 103 104 +112 1 2 12701 8 104 5 +113 1 2 12701 9 1 105 +114 1 2 12701 9 105 106 +115 1 2 12701 9 106 107 +116 1 2 12701 9 107 108 +117 1 2 12701 9 108 109 +118 1 2 12701 9 109 110 +119 1 2 12701 9 110 111 +120 1 2 12701 9 111 112 +121 1 2 12701 9 112 113 +122 1 2 12701 9 113 114 +123 1 2 12701 9 114 115 +124 1 2 12701 9 115 116 +125 1 2 12701 9 116 5 +126 1 2 12701 10 2 117 +127 1 2 12701 10 117 118 +128 1 2 12701 10 118 119 +129 1 2 12701 10 119 120 +130 1 2 12701 10 120 121 +131 1 2 12701 10 121 122 +132 1 2 12701 10 122 123 +133 1 2 12701 10 123 124 +134 1 2 12701 10 124 125 +135 1 2 12701 10 125 126 +136 1 2 12701 10 126 127 +137 1 2 12701 10 127 128 +138 1 2 12701 10 128 6 +139 1 2 12701 11 3 129 +140 1 2 12701 11 129 130 +141 1 2 12701 11 130 131 +142 1 2 12701 11 131 132 +143 1 2 12701 11 132 133 +144 1 2 12701 11 133 134 +145 1 2 12701 11 134 135 +146 1 2 12701 11 135 136 +147 1 2 12701 11 136 137 +148 1 2 12701 11 137 138 +149 1 2 12701 11 138 139 +150 1 2 12701 11 139 140 +151 1 2 12701 11 140 7 +152 1 2 12701 12 4 141 +153 1 2 12701 12 141 142 +154 1 2 12701 12 142 143 +155 1 2 12701 12 143 144 +156 1 2 12701 12 144 145 +157 1 2 12701 12 145 146 +158 1 2 12701 12 146 147 +159 1 2 12701 12 147 148 +160 1 2 12701 12 148 149 +161 1 2 12701 12 149 150 +162 1 2 12701 12 150 151 +163 1 2 12701 12 151 152 +164 1 2 12701 12 152 8 +165 2 2 12701 19 39 183 38 +166 2 2 12701 19 27 184 26 +167 2 2 12701 19 15 186 14 +168 2 2 12701 19 51 185 50 +169 2 2 12701 19 203 224 153 +170 2 2 12701 19 177 224 203 +171 2 2 12701 19 178 259 182 +172 2 2 12701 19 182 259 158 +173 2 2 12701 19 171 209 189 +174 2 2 12701 19 172 211 193 +175 2 2 12701 19 175 210 192 +176 2 2 12701 19 191 212 173 +177 2 2 12701 19 163 206 188 +178 2 2 12701 19 164 205 190 +179 2 2 12701 19 165 207 194 +180 2 2 12701 19 195 208 162 +181 2 2 12701 19 159 213 187 +182 2 2 12701 19 187 213 177 +183 2 2 12701 19 198 246 160 +184 2 2 12701 19 155 239 197 +185 2 2 12701 19 183 223 38 +186 2 2 12701 19 51 218 185 +187 2 2 12701 19 184 221 26 +188 2 2 12701 19 39 216 183 +189 2 2 12701 19 34 202 33 +190 2 2 12701 19 15 220 186 +191 2 2 12701 19 22 201 21 +192 2 2 12701 19 27 217 184 +193 2 2 12701 19 185 222 50 +194 2 2 12701 19 10 200 9 +195 2 2 12701 19 186 219 14 +196 2 2 12701 19 46 199 45 +197 2 2 12701 19 44 199 43 +198 2 2 12701 19 20 201 19 +199 2 2 12701 19 56 200 55 +200 2 2 12701 19 32 202 31 +201 2 2 12701 19 175 246 198 +202 2 2 12701 19 172 244 196 +203 2 2 12701 19 196 244 161 +204 2 2 12701 19 159 242 197 +205 2 2 12701 19 197 242 173 +206 2 2 12701 19 160 247 198 +207 2 2 12701 19 166 247 215 +208 2 2 12701 19 215 247 179 +209 2 2 12701 19 198 267 175 +210 2 2 12701 19 177 258 187 +211 2 2 12701 19 187 258 157 +212 2 2 12701 19 239 271 197 +213 2 2 12701 19 173 266 197 +214 2 2 12701 19 196 265 172 +215 2 2 12701 19 34 232 202 +216 2 2 12701 19 22 236 201 +217 2 2 12701 19 10 233 200 +218 2 2 12701 19 46 231 199 +219 2 2 12701 19 199 237 43 +220 2 2 12701 19 201 235 19 +221 2 2 12701 19 154 226 182 +222 2 2 12701 19 202 234 31 +223 2 2 12701 19 200 238 55 +224 2 2 12701 19 182 273 178 +225 2 2 12701 19 168 271 239 +226 2 2 12701 19 158 274 182 +227 2 2 12701 19 188 237 163 +228 2 2 12701 19 190 235 164 +229 2 2 12701 19 162 232 195 +230 2 2 12701 19 194 238 165 +231 2 2 12701 19 200 297 9 +232 2 2 12701 19 56 297 200 +233 2 2 12701 19 20 299 201 +234 2 2 12701 19 201 299 21 +235 2 2 12701 19 199 293 45 +236 2 2 12701 19 44 293 199 +237 2 2 12701 19 182 256 154 +238 2 2 12701 19 32 298 202 +239 2 2 12701 19 202 298 33 +240 2 2 12701 19 183 240 158 +241 2 2 12701 19 214 230 153 +242 2 2 12701 19 184 242 159 +243 2 2 12701 19 159 243 184 +244 2 2 12701 19 185 241 160 +245 2 2 12701 19 160 246 185 +246 2 2 12701 19 161 244 186 +247 2 2 12701 19 186 245 161 +248 2 2 12701 19 204 241 170 +249 2 2 12701 19 158 261 183 +250 2 2 12701 19 167 225 203 +251 2 2 12701 19 187 291 159 +252 2 2 12701 19 156 229 204 +253 2 2 12701 19 204 229 179 +254 2 2 12701 19 178 230 214 +255 2 2 12701 19 197 266 155 +256 2 2 12701 19 157 262 187 +257 2 2 12701 19 198 290 154 +258 2 2 12701 19 161 281 196 +259 2 2 12701 19 204 264 241 +260 2 2 12701 19 213 224 177 +261 2 2 12701 19 168 224 213 +262 2 2 12701 19 189 251 171 +263 2 2 12701 19 192 253 175 +264 2 2 12701 19 173 249 191 +265 2 2 12701 19 193 250 172 +266 2 2 12701 19 157 227 205 +267 2 2 12701 19 205 209 157 +268 2 2 12701 19 206 210 154 +269 2 2 12701 19 207 211 156 +270 2 2 12701 19 155 212 208 +271 2 2 12701 19 197 271 159 +272 2 2 12701 19 154 267 198 +273 2 2 12701 19 225 272 203 +274 2 2 12701 19 157 258 227 +275 2 2 12701 19 227 258 180 +276 2 2 12701 19 164 294 205 +277 2 2 12701 19 165 296 207 +278 2 2 12701 19 163 295 206 +279 2 2 12701 19 163 237 199 +280 2 2 12701 19 199 231 163 +281 2 2 12701 19 165 238 200 +282 2 2 12701 19 162 234 202 +283 2 2 12701 19 164 235 201 +284 2 2 12701 19 200 233 165 +285 2 2 12701 19 202 232 162 +286 2 2 12701 19 201 236 164 +287 2 2 12701 19 208 292 162 +288 2 2 12701 19 227 280 205 +289 2 2 12701 19 205 294 209 +290 2 2 12701 19 207 296 211 +291 2 2 12701 19 206 295 210 +292 2 2 12701 19 212 292 208 +293 2 2 12701 19 227 263 176 +294 2 2 12701 19 176 263 245 +295 2 2 12701 19 158 259 228 +296 2 2 12701 19 228 259 181 +297 2 2 12701 19 214 224 168 +298 2 2 12701 19 153 224 214 +299 2 2 12701 19 247 290 198 +300 2 2 12701 19 180 272 225 +301 2 2 12701 19 176 280 227 +302 2 2 12701 19 241 264 160 +303 2 2 12701 19 167 300 281 +304 2 2 12701 19 229 300 167 +305 2 2 12701 19 153 260 203 +306 2 2 12701 19 203 272 177 +307 2 2 12701 19 225 263 180 +308 2 2 12701 19 161 263 225 +309 2 2 12701 19 52 218 51 +310 2 2 12701 19 16 220 15 +311 2 2 12701 19 38 223 37 +312 2 2 12701 19 26 221 25 +313 2 2 12701 19 28 217 27 +314 2 2 12701 19 50 222 49 +315 2 2 12701 19 14 219 13 +316 2 2 12701 19 40 216 39 +317 2 2 12701 19 154 290 226 +318 2 2 12701 19 204 269 156 +319 2 2 12701 19 153 230 215 +320 2 2 12701 19 225 281 161 +321 2 2 12701 19 203 260 167 +322 2 2 12701 19 159 291 243 +323 2 2 12701 19 226 273 182 +324 2 2 12701 19 40 248 216 +325 2 2 12701 19 221 251 25 +326 2 2 12701 19 28 249 217 +327 2 2 12701 19 219 250 13 +328 2 2 12701 19 52 252 218 +329 2 2 12701 19 154 256 206 +330 2 2 12701 19 215 230 166 +331 2 2 12701 19 223 255 37 +332 2 2 12701 19 222 253 49 +333 2 2 12701 19 16 254 220 +334 2 2 12701 19 170 269 204 +335 2 2 12701 19 179 264 204 +336 2 2 12701 19 23 286 236 +337 2 2 12701 19 35 285 232 +338 2 2 12701 19 11 283 233 +339 2 2 12701 19 208 257 155 +340 2 2 12701 19 237 282 42 +341 2 2 12701 19 159 271 213 +342 2 2 12701 19 47 287 231 +343 2 2 12701 19 234 284 30 +344 2 2 12701 19 238 288 54 +345 2 2 12701 19 235 289 18 +346 2 2 12701 19 156 269 207 +347 2 2 12701 19 240 274 158 +348 2 2 12701 19 23 236 22 +349 2 2 12701 19 35 232 34 +350 2 2 12701 19 47 231 46 +351 2 2 12701 19 11 233 10 +352 2 2 12701 19 31 234 30 +353 2 2 12701 19 19 235 18 +354 2 2 12701 19 43 237 42 +355 2 2 12701 19 55 238 54 +356 2 2 12701 19 209 262 157 +357 2 2 12701 19 210 267 154 +358 2 2 12701 19 205 280 190 +359 2 2 12701 19 155 266 212 +360 2 2 12701 19 211 265 156 +361 2 2 12701 19 207 279 194 +362 2 2 12701 19 206 277 188 +363 2 2 12701 19 195 278 208 +364 2 2 12701 19 166 290 247 +365 2 2 12701 19 162 292 234 +366 2 2 12701 19 231 295 163 +367 2 2 12701 19 171 262 209 +368 2 2 12701 19 236 294 164 +369 2 2 12701 19 233 296 165 +370 2 2 12701 19 209 294 189 +371 2 2 12701 19 172 265 211 +372 2 2 12701 19 211 296 193 +373 2 2 12701 19 210 295 192 +374 2 2 12701 19 175 267 210 +375 2 2 12701 19 191 292 212 +376 2 2 12701 19 212 266 173 +377 2 2 12701 19 219 244 172 +378 2 2 12701 19 186 244 219 +379 2 2 12701 19 217 242 184 +380 2 2 12701 19 173 242 217 +381 2 2 12701 19 216 240 183 +382 2 2 12701 19 169 240 216 +383 2 2 12701 19 222 246 175 +384 2 2 12701 19 185 246 222 +385 2 2 12701 19 221 243 171 +386 2 2 12701 19 184 243 221 +387 2 2 12701 19 218 241 185 +388 2 2 12701 19 170 241 218 +389 2 2 12701 19 220 245 186 +390 2 2 12701 19 176 245 220 +391 2 2 12701 19 215 260 153 +392 2 2 12701 19 25 251 24 +393 2 2 12701 19 41 248 40 +394 2 2 12701 19 53 252 52 +395 2 2 12701 19 29 249 28 +396 2 2 12701 19 13 250 12 +397 2 2 12701 19 216 248 169 +398 2 2 12701 19 49 253 48 +399 2 2 12701 19 175 253 222 +400 2 2 12701 19 217 249 173 +401 2 2 12701 19 172 250 219 +402 2 2 12701 19 220 254 176 +403 2 2 12701 19 218 252 170 +404 2 2 12701 19 37 255 36 +405 2 2 12701 19 174 255 223 +406 2 2 12701 19 171 251 221 +407 2 2 12701 19 17 254 16 +408 2 2 12701 19 232 285 195 +409 2 2 12701 19 233 283 193 +410 2 2 12701 19 236 286 189 +411 2 2 12701 19 231 287 192 +412 2 2 12701 19 191 284 234 +413 2 2 12701 19 188 282 237 +414 2 2 12701 19 194 288 238 +415 2 2 12701 19 190 289 235 +416 2 2 12701 19 181 276 228 +417 2 2 12701 19 228 261 158 +418 2 2 12701 19 234 292 191 +419 2 2 12701 19 192 295 231 +420 2 2 12701 19 223 261 174 +421 2 2 12701 19 193 296 233 +422 2 2 12701 19 189 294 236 +423 2 2 12701 19 179 268 215 +424 2 2 12701 19 228 276 257 +425 2 2 12701 19 213 271 168 +426 2 2 12701 19 168 275 214 +427 2 2 12701 19 174 261 228 +428 2 2 12701 19 228 257 174 +429 2 2 12701 19 214 270 178 +430 2 2 12701 19 166 273 226 +431 2 2 12701 19 183 261 223 +432 2 2 12701 19 256 277 206 +433 2 2 12701 19 230 273 166 +434 2 2 12701 19 265 300 156 +435 2 2 12701 19 169 277 256 +436 2 2 12701 19 181 275 239 +437 2 2 12701 19 174 278 255 +438 2 2 12701 19 254 280 176 +439 2 2 12701 19 248 277 169 +440 2 2 12701 19 252 279 170 +441 2 2 12701 19 180 263 227 +442 2 2 12701 19 188 277 248 +443 2 2 12701 19 255 278 195 +444 2 2 12701 19 194 279 252 +445 2 2 12701 19 190 280 254 +446 2 2 12701 19 208 278 257 +447 2 2 12701 19 257 278 174 +448 2 2 12701 19 245 263 161 +449 2 2 12701 19 281 300 196 +450 2 2 12701 19 229 268 179 +451 2 2 12701 19 167 268 229 +452 2 2 12701 19 215 268 260 +453 2 2 12701 19 167 281 225 +454 2 2 12701 19 160 264 247 +455 2 2 12701 19 247 264 179 +456 2 2 12701 19 226 290 166 +457 2 2 12701 19 169 274 240 +458 2 2 12701 19 270 275 181 +459 2 2 12701 19 178 273 230 +460 2 2 12701 19 21 299 2 +461 2 2 12701 19 3 298 32 +462 2 2 12701 19 2 299 20 +463 2 2 12701 19 4 293 44 +464 2 2 12701 19 1 297 56 +465 2 2 12701 19 45 293 4 +466 2 2 12701 19 9 297 1 +467 2 2 12701 19 33 298 3 +468 2 2 12701 19 156 300 229 +469 2 2 12701 19 256 274 169 +470 2 2 12701 19 177 272 258 +471 2 2 12701 19 258 272 180 +472 2 2 12701 19 248 282 188 +473 2 2 12701 19 41 282 248 +474 2 2 12701 19 189 286 251 +475 2 2 12701 19 251 286 24 +476 2 2 12701 19 53 288 252 +477 2 2 12701 19 252 288 194 +478 2 2 12701 19 193 283 250 +479 2 2 12701 19 250 283 12 +480 2 2 12701 19 29 284 249 +481 2 2 12701 19 249 284 191 +482 2 2 12701 19 254 289 190 +483 2 2 12701 19 17 289 254 +484 2 2 12701 19 253 287 48 +485 2 2 12701 19 192 287 253 +486 2 2 12701 19 255 285 36 +487 2 2 12701 19 195 285 255 +488 2 2 12701 19 239 276 181 +489 2 2 12701 19 155 276 239 +490 2 2 12701 19 239 275 168 +491 2 2 12701 19 243 291 171 +492 2 2 12701 19 259 270 181 +493 2 2 12701 19 178 270 259 +494 2 2 12701 19 182 274 256 +495 2 2 12701 19 196 300 265 +496 2 2 12701 19 260 268 167 +497 2 2 12701 19 257 276 155 +498 2 2 12701 19 42 282 41 +499 2 2 12701 19 12 283 11 +500 2 2 12701 19 24 286 23 +501 2 2 12701 19 36 285 35 +502 2 2 12701 19 54 288 53 +503 2 2 12701 19 30 284 29 +504 2 2 12701 19 18 289 17 +505 2 2 12701 19 48 287 47 +506 2 2 12701 19 171 291 262 +507 2 2 12701 19 262 291 187 +508 2 2 12701 19 170 279 269 +509 2 2 12701 19 269 279 207 +510 2 2 12701 19 214 275 270 +511 2 2 12701 20 87 330 86 +512 2 2 12701 20 99 333 98 +513 2 2 12701 20 63 332 62 +514 2 2 12701 20 75 331 74 +515 2 2 12701 20 306 374 364 +516 2 2 12701 20 364 374 328 +517 2 2 12701 20 365 375 329 +518 2 2 12701 20 307 375 365 +519 2 2 12701 20 344 377 317 +520 2 2 12701 20 305 377 344 +521 2 2 12701 20 345 375 307 +522 2 2 12701 20 316 375 345 +523 2 2 12701 20 334 361 325 +524 2 2 12701 20 335 359 319 +525 2 2 12701 20 336 358 321 +526 2 2 12701 20 337 360 323 +527 2 2 12701 20 338 355 313 +528 2 2 12701 20 340 354 312 +529 2 2 12701 20 339 356 311 +530 2 2 12701 20 341 357 310 +531 2 2 12701 20 308 386 342 +532 2 2 12701 20 330 366 86 +533 2 2 12701 20 87 369 330 +534 2 2 12701 20 331 373 74 +535 2 2 12701 20 332 372 62 +536 2 2 12701 20 75 368 331 +537 2 2 12701 20 63 367 332 +538 2 2 12701 20 333 370 98 +539 2 2 12701 20 99 371 333 +540 2 2 12701 20 94 347 93 +541 2 2 12701 20 104 346 103 +542 2 2 12701 20 70 348 69 +543 2 2 12701 20 80 349 79 +544 2 2 12701 20 342 386 321 +545 2 2 12701 20 58 346 57 +546 2 2 12701 20 82 349 81 +547 2 2 12701 20 92 347 91 +548 2 2 12701 20 68 348 67 +549 2 2 12701 20 344 390 319 +550 2 2 12701 20 307 387 345 +551 2 2 12701 20 345 387 325 +552 2 2 12701 20 343 388 323 +553 2 2 12701 20 309 388 343 +554 2 2 12701 20 304 395 345 +555 2 2 12701 20 342 392 308 +556 2 2 12701 20 326 392 362 +557 2 2 12701 20 362 392 314 +558 2 2 12701 20 327 394 363 +559 2 2 12701 20 363 394 315 +560 2 2 12701 20 321 417 342 +561 2 2 12701 20 314 392 342 +562 2 2 12701 20 319 418 344 +563 2 2 12701 20 345 395 316 +564 2 2 12701 20 342 393 314 +565 2 2 12701 20 302 393 342 +566 2 2 12701 20 343 394 309 +567 2 2 12701 20 315 394 343 +568 2 2 12701 20 323 416 343 +569 2 2 12701 20 325 415 345 +570 2 2 12701 20 94 378 347 +571 2 2 12701 20 349 379 79 +572 2 2 12701 20 346 380 103 +573 2 2 12701 20 70 383 348 +574 2 2 12701 20 82 385 349 +575 2 2 12701 20 58 381 346 +576 2 2 12701 20 348 382 67 +577 2 2 12701 20 347 384 91 +578 2 2 12701 20 311 385 339 +579 2 2 12701 20 312 381 340 +580 2 2 12701 20 313 383 338 +581 2 2 12701 20 310 378 341 +582 2 2 12701 20 348 444 69 +583 2 2 12701 20 68 444 348 +584 2 2 12701 20 104 438 346 +585 2 2 12701 20 346 438 57 +586 2 2 12701 20 92 440 347 +587 2 2 12701 20 347 440 93 +588 2 2 12701 20 329 375 350 +589 2 2 12701 20 350 375 316 +590 2 2 12701 20 351 374 317 +591 2 2 12701 20 328 374 351 +592 2 2 12701 20 80 445 349 +593 2 2 12701 20 349 445 81 +594 2 2 12701 20 330 390 306 +595 2 2 12701 20 331 387 307 +596 2 2 12701 20 332 386 308 +597 2 2 12701 20 308 391 332 +598 2 2 12701 20 333 388 309 +599 2 2 12701 20 309 389 333 +600 2 2 12701 20 306 404 330 +601 2 2 12701 20 307 405 331 +602 2 2 12701 20 324 389 353 +603 2 2 12701 20 322 391 352 +604 2 2 12701 20 326 376 352 +605 2 2 12701 20 352 376 303 +606 2 2 12701 20 327 377 353 +607 2 2 12701 20 353 377 305 +608 2 2 12701 20 343 447 315 +609 2 2 12701 20 317 446 344 +610 2 2 12701 20 345 415 304 +611 2 2 12701 20 389 412 353 +612 2 2 12701 20 391 411 352 +613 2 2 12701 20 325 396 334 +614 2 2 12701 20 319 400 335 +615 2 2 12701 20 321 397 336 +616 2 2 12701 20 323 399 337 +617 2 2 12701 20 303 360 354 +618 2 2 12701 20 302 358 355 +619 2 2 12701 20 305 359 357 +620 2 2 12701 20 304 361 356 +621 2 2 12701 20 342 417 302 +622 2 2 12701 20 344 418 305 +623 2 2 12701 20 355 443 313 +624 2 2 12701 20 354 442 312 +625 2 2 12701 20 356 441 311 +626 2 2 12701 20 357 439 310 +627 2 2 12701 20 346 381 312 +628 2 2 12701 20 310 384 347 +629 2 2 12701 20 312 380 346 +630 2 2 12701 20 347 378 310 +631 2 2 12701 20 313 382 348 +632 2 2 12701 20 348 383 313 +633 2 2 12701 20 349 385 311 +634 2 2 12701 20 311 379 349 +635 2 2 12701 20 358 443 355 +636 2 2 12701 20 360 442 354 +637 2 2 12701 20 361 441 356 +638 2 2 12701 20 359 439 357 +639 2 2 12701 20 344 446 390 +640 2 2 12701 20 309 412 389 +641 2 2 12701 20 308 411 391 +642 2 2 12701 20 315 447 376 +643 2 2 12701 20 374 446 317 +644 2 2 12701 20 351 408 301 +645 2 2 12701 20 350 409 301 +646 2 2 12701 20 301 409 351 +647 2 2 12701 20 86 366 85 +648 2 2 12701 20 62 372 61 +649 2 2 12701 20 74 373 73 +650 2 2 12701 20 76 368 75 +651 2 2 12701 20 64 367 63 +652 2 2 12701 20 88 369 87 +653 2 2 12701 20 98 370 97 +654 2 2 12701 20 100 371 99 +655 2 2 12701 20 303 420 352 +656 2 2 12701 20 305 419 353 +657 2 2 12701 20 301 424 350 +658 2 2 12701 20 317 408 351 +659 2 2 12701 20 366 398 85 +660 2 2 12701 20 88 400 369 +661 2 2 12701 20 64 397 367 +662 2 2 12701 20 100 399 371 +663 2 2 12701 20 350 414 329 +664 2 2 12701 20 76 396 368 +665 2 2 12701 20 351 413 328 +666 2 2 12701 20 372 403 61 +667 2 2 12701 20 373 402 73 +668 2 2 12701 20 370 401 97 +669 2 2 12701 20 316 409 350 +670 2 2 12701 20 352 420 322 +671 2 2 12701 20 353 419 324 +672 2 2 12701 20 352 411 326 +673 2 2 12701 20 353 412 327 +674 2 2 12701 20 380 432 102 +675 2 2 12701 20 382 430 66 +676 2 2 12701 20 71 434 383 +677 2 2 12701 20 384 431 90 +678 2 2 12701 20 83 433 385 +679 2 2 12701 20 379 435 78 +680 2 2 12701 20 95 437 378 +681 2 2 12701 20 59 436 381 +682 2 2 12701 20 354 420 303 +683 2 2 12701 20 357 419 305 +684 2 2 12701 20 103 380 102 +685 2 2 12701 20 79 379 78 +686 2 2 12701 20 67 382 66 +687 2 2 12701 20 95 378 94 +688 2 2 12701 20 71 383 70 +689 2 2 12701 20 91 384 90 +690 2 2 12701 20 83 385 82 +691 2 2 12701 20 59 381 58 +692 2 2 12701 20 305 418 359 +693 2 2 12701 20 302 417 358 +694 2 2 12701 20 340 429 354 +695 2 2 12701 20 303 416 360 +696 2 2 12701 20 338 428 355 +697 2 2 12701 20 304 415 361 +698 2 2 12701 20 339 426 356 +699 2 2 12701 20 341 427 357 +700 2 2 12701 20 390 446 306 +701 2 2 12701 20 365 405 307 +702 2 2 12701 20 364 404 306 +703 2 2 12701 20 310 439 384 +704 2 2 12701 20 311 441 379 +705 2 2 12701 20 312 442 380 +706 2 2 12701 20 313 443 382 +707 2 2 12701 20 356 406 304 +708 2 2 12701 20 355 407 302 +709 2 2 12701 20 315 425 363 +710 2 2 12701 20 358 417 321 +711 2 2 12701 20 336 443 358 +712 2 2 12701 20 337 442 360 +713 2 2 12701 20 359 418 319 +714 2 2 12701 20 335 439 359 +715 2 2 12701 20 334 441 361 +716 2 2 12701 20 361 415 325 +717 2 2 12701 20 360 416 323 +718 2 2 12701 20 318 404 364 +719 2 2 12701 20 320 405 365 +720 2 2 12701 20 319 390 369 +721 2 2 12701 20 369 390 330 +722 2 2 12701 20 367 386 332 +723 2 2 12701 20 321 386 367 +724 2 2 12701 20 372 391 322 +725 2 2 12701 20 332 391 372 +726 2 2 12701 20 370 389 324 +727 2 2 12701 20 333 389 370 +728 2 2 12701 20 371 388 333 +729 2 2 12701 20 323 388 371 +730 2 2 12701 20 325 387 368 +731 2 2 12701 20 368 387 331 +732 2 2 12701 20 301 408 363 +733 2 2 12701 20 85 398 84 +734 2 2 12701 20 101 399 100 +735 2 2 12701 20 89 400 88 +736 2 2 12701 20 77 396 76 +737 2 2 12701 20 368 396 325 +738 2 2 12701 20 73 402 72 +739 2 2 12701 20 65 397 64 +740 2 2 12701 20 367 397 321 +741 2 2 12701 20 61 403 60 +742 2 2 12701 20 97 401 96 +743 2 2 12701 20 320 402 373 +744 2 2 12701 20 371 399 323 +745 2 2 12701 20 322 403 372 +746 2 2 12701 20 324 401 370 +747 2 2 12701 20 318 398 366 +748 2 2 12701 20 369 400 319 +749 2 2 12701 20 366 404 318 +750 2 2 12701 20 373 405 320 +751 2 2 12701 20 364 406 318 +752 2 2 12701 20 365 407 320 +753 2 2 12701 20 362 424 301 +754 2 2 12701 20 337 432 380 +755 2 2 12701 20 336 430 382 +756 2 2 12701 20 378 437 341 +757 2 2 12701 20 385 433 339 +758 2 2 12701 20 383 434 338 +759 2 2 12701 20 335 431 384 +760 2 2 12701 20 334 435 379 +761 2 2 12701 20 381 436 340 +762 2 2 12701 20 330 404 366 +763 2 2 12701 20 384 439 335 +764 2 2 12701 20 379 441 334 +765 2 2 12701 20 380 442 337 +766 2 2 12701 20 331 405 373 +767 2 2 12701 20 382 443 336 +768 2 2 12701 20 363 423 327 +769 2 2 12701 20 328 421 364 +770 2 2 12701 20 329 422 365 +771 2 2 12701 20 362 410 326 +772 2 2 12701 20 314 424 362 +773 2 2 12701 20 301 425 362 +774 2 2 12701 20 363 425 301 +775 2 2 12701 20 410 425 315 +776 2 2 12701 20 376 410 315 +777 2 2 12701 20 326 410 376 +778 2 2 12701 20 303 447 416 +779 2 2 12701 20 320 428 402 +780 2 2 12701 20 322 429 403 +781 2 2 12701 20 324 427 401 +782 2 2 12701 20 318 426 398 +783 2 2 12701 20 402 428 338 +784 2 2 12701 20 401 427 341 +785 2 2 12701 20 403 429 340 +786 2 2 12701 20 398 426 339 +787 2 2 12701 20 407 428 320 +788 2 2 12701 20 406 426 318 +789 2 2 12701 20 377 423 317 +790 2 2 12701 20 327 423 377 +791 2 2 12701 20 355 428 407 +792 2 2 12701 20 356 426 406 +793 2 2 12701 20 408 423 363 +794 2 2 12701 20 326 411 392 +795 2 2 12701 20 392 411 308 +796 2 2 12701 20 394 412 309 +797 2 2 12701 20 327 412 394 +798 2 2 12701 20 328 413 395 +799 2 2 12701 20 395 413 316 +800 2 2 12701 20 329 414 393 +801 2 2 12701 20 393 414 314 +802 2 2 12701 20 364 421 406 +803 2 2 12701 20 365 422 407 +804 2 2 12701 20 5 438 104 +805 2 2 12701 20 7 445 80 +806 2 2 12701 20 57 438 5 +807 2 2 12701 20 6 444 68 +808 2 2 12701 20 8 440 92 +809 2 2 12701 20 81 445 7 +810 2 2 12701 20 69 444 6 +811 2 2 12701 20 93 440 8 +812 2 2 12701 20 306 446 374 +813 2 2 12701 20 376 447 303 +814 2 2 12701 20 304 421 395 +815 2 2 12701 20 302 422 393 +816 2 2 12701 20 393 422 329 +817 2 2 12701 20 395 421 328 +818 2 2 12701 20 396 435 334 +819 2 2 12701 20 77 435 396 +820 2 2 12701 20 398 433 84 +821 2 2 12701 20 339 433 398 +822 2 2 12701 20 65 430 397 +823 2 2 12701 20 397 430 336 +824 2 2 12701 20 400 431 335 +825 2 2 12701 20 89 431 400 +826 2 2 12701 20 399 432 337 +827 2 2 12701 20 101 432 399 +828 2 2 12701 20 401 437 96 +829 2 2 12701 20 341 437 401 +830 2 2 12701 20 340 436 403 +831 2 2 12701 20 403 436 60 +832 2 2 12701 20 402 434 72 +833 2 2 12701 20 338 434 402 +834 2 2 12701 20 409 413 351 +835 2 2 12701 20 316 413 409 +836 2 2 12701 20 406 421 304 +837 2 2 12701 20 407 422 302 +838 2 2 12701 20 416 447 343 +839 2 2 12701 20 317 423 408 +840 2 2 12701 20 414 424 314 +841 2 2 12701 20 90 431 89 +842 2 2 12701 20 66 430 65 +843 2 2 12701 20 84 433 83 +844 2 2 12701 20 96 437 95 +845 2 2 12701 20 72 434 71 +846 2 2 12701 20 60 436 59 +847 2 2 12701 20 102 432 101 +848 2 2 12701 20 78 435 77 +849 2 2 12701 20 362 425 410 +850 2 2 12701 20 350 424 414 +851 2 2 12701 20 420 429 322 +852 2 2 12701 20 354 429 420 +853 2 2 12701 20 419 427 324 +854 2 2 12701 20 357 427 419 +855 2 2 12701 21 509 521 461 +856 2 2 12701 21 474 521 509 +857 2 2 12701 21 110 477 111 +858 2 2 12701 21 15 478 14 +859 2 2 12701 21 62 479 63 +860 2 2 12701 21 123 480 122 +861 2 2 12701 21 456 524 489 +862 2 2 12701 21 489 524 461 +863 2 2 12701 21 476 524 511 +864 2 2 12701 21 511 524 456 +865 2 2 12701 21 464 522 492 +866 2 2 12701 21 492 522 452 +867 2 2 12701 21 512 523 454 +868 2 2 12701 21 475 523 512 +869 2 2 12701 21 497 509 461 +870 2 2 12701 21 448 509 497 +871 2 2 12701 21 484 506 466 +872 2 2 12701 21 467 507 482 +873 2 2 12701 21 486 508 471 +874 2 2 12701 21 485 505 468 +875 2 2 12701 21 481 502 458 +876 2 2 12701 21 488 501 457 +877 2 2 12701 21 459 503 483 +878 2 2 12701 21 487 504 460 +879 2 2 12701 21 490 536 455 +880 2 2 12701 21 477 519 111 +881 2 2 12701 21 110 514 477 +882 2 2 12701 21 478 516 14 +883 2 2 12701 21 15 515 478 +884 2 2 12701 21 479 513 63 +885 2 2 12701 21 480 517 122 +886 2 2 12701 21 62 520 479 +887 2 2 12701 21 128 493 127 +888 2 2 12701 21 123 518 480 +889 2 2 12701 21 115 494 116 +890 2 2 12701 21 10 495 9 +891 2 2 12701 21 67 493 68 +892 2 2 12701 21 118 496 117 +893 2 2 12701 21 20 496 19 +894 2 2 12701 21 105 495 106 +895 2 2 12701 21 57 494 58 +896 2 2 12701 21 470 536 490 +897 2 2 12701 21 467 535 492 +898 2 2 12701 21 489 533 456 +899 2 2 12701 21 465 533 489 +900 2 2 12701 21 491 538 453 +901 2 2 12701 21 469 538 491 +902 2 2 12701 21 491 540 450 +903 2 2 12701 21 455 541 490 +904 2 2 12701 21 462 539 510 +905 2 2 12701 21 510 539 473 +906 2 2 12701 21 492 565 467 +907 2 2 12701 21 462 540 491 +908 2 2 12701 21 490 541 463 +909 2 2 12701 21 490 542 451 +910 2 2 12701 21 463 542 490 +911 2 2 12701 21 491 539 462 +912 2 2 12701 21 453 539 491 +913 2 2 12701 21 493 525 127 +914 2 2 12701 21 115 528 494 +915 2 2 12701 21 118 529 496 +916 2 2 12701 21 496 530 19 +917 2 2 12701 21 10 531 495 +918 2 2 12701 21 495 527 106 +919 2 2 12701 21 67 532 493 +920 2 2 12701 21 494 526 58 +921 2 2 12701 21 458 528 481 +922 2 2 12701 21 483 527 459 +923 2 2 12701 21 457 532 488 +924 2 2 12701 21 460 529 487 +925 2 2 12701 21 494 589 116 +926 2 2 12701 21 57 589 494 +927 2 2 12701 21 493 588 68 +928 2 2 12701 21 128 588 493 +929 2 2 12701 21 461 524 497 +930 2 2 12701 21 497 524 476 +931 2 2 12701 21 105 590 495 +932 2 2 12701 21 495 590 9 +933 2 2 12701 21 20 591 496 +934 2 2 12701 21 496 591 117 +935 2 2 12701 21 464 523 498 +936 2 2 12701 21 498 523 475 +937 2 2 12701 21 477 534 453 +938 2 2 12701 21 453 538 477 +939 2 2 12701 21 456 533 479 +940 2 2 12701 21 454 535 478 +941 2 2 12701 21 455 536 480 +942 2 2 12701 21 480 537 455 +943 2 2 12701 21 479 552 456 +944 2 2 12701 21 478 551 454 +945 2 2 12701 21 500 534 472 +946 2 2 12701 21 499 537 466 +947 2 2 12701 21 499 521 474 +948 2 2 12701 21 449 521 499 +949 2 2 12701 21 500 522 473 +950 2 2 12701 21 452 522 500 +951 2 2 12701 21 461 593 489 +952 2 2 12701 21 492 592 464 +953 2 2 12701 21 450 555 491 +954 2 2 12701 21 500 560 534 +955 2 2 12701 21 499 561 537 +956 2 2 12701 21 490 557 470 +957 2 2 12701 21 489 556 465 +958 2 2 12701 21 491 555 469 +959 2 2 12701 21 466 545 484 +960 2 2 12701 21 482 547 467 +961 2 2 12701 21 468 550 485 +962 2 2 12701 21 471 544 486 +963 2 2 12701 21 449 506 501 +964 2 2 12701 21 450 505 502 +965 2 2 12701 21 503 507 452 +966 2 2 12701 21 451 508 504 +967 2 2 12701 21 452 565 492 +968 2 2 12701 21 451 557 490 +969 2 2 12701 21 501 586 457 +970 2 2 12701 21 459 585 503 +971 2 2 12701 21 502 584 458 +972 2 2 12701 21 493 532 457 +973 2 2 12701 21 458 526 494 +974 2 2 12701 21 457 525 493 +975 2 2 12701 21 504 587 460 +976 2 2 12701 21 494 528 458 +977 2 2 12701 21 459 527 495 +978 2 2 12701 21 495 531 459 +979 2 2 12701 21 460 530 496 +980 2 2 12701 21 496 529 460 +981 2 2 12701 21 506 586 501 +982 2 2 12701 21 503 585 507 +983 2 2 12701 21 505 584 502 +984 2 2 12701 21 508 587 504 +985 2 2 12701 21 535 592 492 +986 2 2 12701 21 466 571 499 +987 2 2 12701 21 534 560 453 +988 2 2 12701 21 498 553 448 +989 2 2 12701 21 537 561 455 +990 2 2 12701 21 521 593 461 +991 2 2 12701 21 464 592 523 +992 2 2 12701 21 448 554 498 +993 2 2 12701 21 499 571 449 +994 2 2 12701 21 111 519 112 +995 2 2 12701 21 109 514 110 +996 2 2 12701 21 14 516 13 +997 2 2 12701 21 16 515 15 +998 2 2 12701 21 122 517 121 +999 2 2 12701 21 61 520 62 +1000 2 2 12701 21 63 513 64 +1001 2 2 12701 21 124 518 123 +1002 2 2 12701 21 500 566 452 +1003 2 2 12701 21 497 568 448 +1004 2 2 12701 21 498 554 464 +1005 2 2 12701 21 508 558 471 +1006 2 2 12701 21 505 559 468 +1007 2 2 12701 21 506 571 466 +1008 2 2 12701 21 513 543 64 +1009 2 2 12701 21 516 547 13 +1010 2 2 12701 21 476 563 497 +1011 2 2 12701 21 124 545 518 +1012 2 2 12701 21 517 546 121 +1013 2 2 12701 21 475 562 498 +1014 2 2 12701 21 109 548 514 +1015 2 2 12701 21 16 544 515 +1016 2 2 12701 21 519 549 112 +1017 2 2 12701 21 61 550 520 +1018 2 2 12701 21 472 566 500 +1019 2 2 12701 21 474 561 499 +1020 2 2 12701 21 473 560 500 +1021 2 2 12701 21 114 576 528 +1022 2 2 12701 21 525 578 126 +1023 2 2 12701 21 530 577 18 +1024 2 2 12701 21 119 579 529 +1025 2 2 12701 21 11 580 531 +1026 2 2 12701 21 449 571 506 +1027 2 2 12701 21 66 583 532 +1028 2 2 12701 21 527 582 107 +1029 2 2 12701 21 526 581 59 +1030 2 2 12701 21 452 566 503 +1031 2 2 12701 21 114 528 115 +1032 2 2 12701 21 127 525 126 +1033 2 2 12701 21 19 530 18 +1034 2 2 12701 21 119 529 118 +1035 2 2 12701 21 11 531 10 +1036 2 2 12701 21 66 532 67 +1037 2 2 12701 21 106 527 107 +1038 2 2 12701 21 58 526 59 +1039 2 2 12701 21 488 575 501 +1040 2 2 12701 21 507 565 452 +1041 2 2 12701 21 501 556 449 +1042 2 2 12701 21 503 573 483 +1043 2 2 12701 21 481 572 502 +1044 2 2 12701 21 502 555 450 +1045 2 2 12701 21 487 574 504 +1046 2 2 12701 21 504 557 451 +1047 2 2 12701 21 454 592 535 +1048 2 2 12701 21 456 552 511 +1049 2 2 12701 21 454 551 512 +1050 2 2 12701 21 458 584 526 +1051 2 2 12701 21 460 587 530 +1052 2 2 12701 21 531 585 459 +1053 2 2 12701 21 457 586 525 +1054 2 2 12701 21 485 584 505 +1055 2 2 12701 21 484 586 506 +1056 2 2 12701 21 467 565 507 +1057 2 2 12701 21 507 585 482 +1058 2 2 12701 21 486 587 508 +1059 2 2 12701 21 512 551 471 +1060 2 2 12701 21 511 552 468 +1061 2 2 12701 21 466 537 518 +1062 2 2 12701 21 518 537 480 +1063 2 2 12701 21 513 533 465 +1064 2 2 12701 21 479 533 513 +1065 2 2 12701 21 516 535 467 +1066 2 2 12701 21 478 535 516 +1067 2 2 12701 21 519 538 469 +1068 2 2 12701 21 477 538 519 +1069 2 2 12701 21 517 536 470 +1070 2 2 12701 21 480 536 517 +1071 2 2 12701 21 472 534 514 +1072 2 2 12701 21 514 534 477 +1073 2 2 12701 21 510 554 448 +1074 2 2 12701 21 468 559 511 +1075 2 2 12701 21 471 558 512 +1076 2 2 12701 21 448 553 509 +1077 2 2 12701 21 64 543 65 +1078 2 2 12701 21 13 547 12 +1079 2 2 12701 21 125 545 124 +1080 2 2 12701 21 121 546 120 +1081 2 2 12701 21 518 545 466 +1082 2 2 12701 21 112 549 113 +1083 2 2 12701 21 515 544 471 +1084 2 2 12701 21 17 544 16 +1085 2 2 12701 21 514 548 472 +1086 2 2 12701 21 465 543 513 +1087 2 2 12701 21 520 550 468 +1088 2 2 12701 21 470 546 517 +1089 2 2 12701 21 60 550 61 +1090 2 2 12701 21 108 548 109 +1091 2 2 12701 21 469 549 519 +1092 2 2 12701 21 467 547 516 +1093 2 2 12701 21 471 551 515 +1094 2 2 12701 21 468 552 520 +1095 2 2 12701 21 448 568 510 +1096 2 2 12701 21 528 576 481 +1097 2 2 12701 21 484 578 525 +1098 2 2 12701 21 486 577 530 +1099 2 2 12701 21 529 579 487 +1100 2 2 12701 21 531 580 482 +1101 2 2 12701 21 483 582 527 +1102 2 2 12701 21 532 583 488 +1103 2 2 12701 21 485 581 526 +1104 2 2 12701 21 450 559 505 +1105 2 2 12701 21 451 558 508 +1106 2 2 12701 21 526 584 485 +1107 2 2 12701 21 525 586 484 +1108 2 2 12701 21 530 587 486 +1109 2 2 12701 21 482 585 531 +1110 2 2 12701 21 515 551 478 +1111 2 2 12701 21 520 552 479 +1112 2 2 12701 21 473 567 510 +1113 2 2 12701 21 498 562 553 +1114 2 2 12701 21 509 564 474 +1115 2 2 12701 21 511 569 476 +1116 2 2 12701 21 512 570 475 +1117 2 2 12701 21 510 568 462 +1118 2 2 12701 21 553 562 463 +1119 2 2 12701 21 469 572 549 +1120 2 2 12701 21 470 574 546 +1121 2 2 12701 21 548 573 472 +1122 2 2 12701 21 465 575 543 +1123 2 2 12701 21 546 574 487 +1124 2 2 12701 21 549 572 481 +1125 2 2 12701 21 543 575 488 +1126 2 2 12701 21 483 573 548 +1127 2 2 12701 21 464 567 522 +1128 2 2 12701 21 522 567 473 +1129 2 2 12701 21 510 567 554 +1130 2 2 12701 21 556 593 449 +1131 2 2 12701 21 453 560 539 +1132 2 2 12701 21 539 560 473 +1133 2 2 12701 21 541 561 474 +1134 2 2 12701 21 455 561 541 +1135 2 2 12701 21 463 562 542 +1136 2 2 12701 21 542 562 475 +1137 2 2 12701 21 462 563 540 +1138 2 2 12701 21 540 563 476 +1139 2 2 12701 21 553 564 509 +1140 2 2 12701 21 474 564 541 +1141 2 2 12701 21 541 564 463 +1142 2 2 12701 21 2 591 20 +1143 2 2 12701 21 117 591 2 +1144 2 2 12701 21 1 590 105 +1145 2 2 12701 21 6 588 128 +1146 2 2 12701 21 5 589 57 +1147 2 2 12701 21 68 588 6 +1148 2 2 12701 21 9 590 1 +1149 2 2 12701 21 116 589 5 +1150 2 2 12701 21 449 593 521 +1151 2 2 12701 21 523 592 454 +1152 2 2 12701 21 540 569 450 +1153 2 2 12701 21 542 570 451 +1154 2 2 12701 21 558 570 512 +1155 2 2 12701 21 559 569 511 +1156 2 2 12701 21 108 582 548 +1157 2 2 12701 21 548 582 483 +1158 2 2 12701 21 488 583 543 +1159 2 2 12701 21 543 583 65 +1160 2 2 12701 21 482 580 547 +1161 2 2 12701 21 547 580 12 +1162 2 2 12701 21 125 578 545 +1163 2 2 12701 21 545 578 484 +1164 2 2 12701 21 546 579 120 +1165 2 2 12701 21 487 579 546 +1166 2 2 12701 21 544 577 486 +1167 2 2 12701 21 17 577 544 +1168 2 2 12701 21 550 581 485 +1169 2 2 12701 21 60 581 550 +1170 2 2 12701 21 481 576 549 +1171 2 2 12701 21 549 576 113 +1172 2 2 12701 21 463 564 553 +1173 2 2 12701 21 476 569 540 +1174 2 2 12701 21 475 570 542 +1175 2 2 12701 21 489 593 556 +1176 2 2 12701 21 502 572 555 +1177 2 2 12701 21 555 572 469 +1178 2 2 12701 21 501 575 556 +1179 2 2 12701 21 556 575 465 +1180 2 2 12701 21 557 574 470 +1181 2 2 12701 21 504 574 557 +1182 2 2 12701 21 554 567 464 +1183 2 2 12701 21 462 568 563 +1184 2 2 12701 21 451 570 558 +1185 2 2 12701 21 450 569 559 +1186 2 2 12701 21 107 582 108 +1187 2 2 12701 21 12 580 11 +1188 2 2 12701 21 59 581 60 +1189 2 2 12701 21 120 579 119 +1190 2 2 12701 21 113 576 114 +1191 2 2 12701 21 126 578 125 +1192 2 2 12701 21 18 577 17 +1193 2 2 12701 21 65 583 66 +1194 2 2 12701 21 563 568 497 +1195 2 2 12701 21 566 573 503 +1196 2 2 12701 21 472 573 566 +1197 2 2 12701 22 135 624 134 +1198 2 2 12701 22 74 625 75 +1199 2 2 12701 22 27 626 26 +1200 2 2 12701 22 122 627 123 +1201 2 2 12701 22 609 670 639 +1202 2 2 12701 22 639 670 597 +1203 2 2 12701 22 594 665 644 +1204 2 2 12701 22 644 665 618 +1205 2 2 12701 22 619 701 623 +1206 2 2 12701 22 623 701 599 +1207 2 2 12701 22 616 651 630 +1208 2 2 12701 22 614 650 634 +1209 2 2 12701 22 636 653 613 +1210 2 2 12701 22 617 652 635 +1211 2 2 12701 22 603 646 631 +1212 2 2 12701 22 605 647 632 +1213 2 2 12701 22 629 649 606 +1214 2 2 12701 22 604 648 633 +1215 2 2 12701 22 618 654 628 +1216 2 2 12701 22 628 654 600 +1217 2 2 12701 22 596 680 637 +1218 2 2 12701 22 624 662 134 +1219 2 2 12701 22 135 657 624 +1220 2 2 12701 22 626 663 26 +1221 2 2 12701 22 122 661 627 +1222 2 2 12701 22 27 659 626 +1223 2 2 12701 22 627 660 123 +1224 2 2 12701 22 625 664 75 +1225 2 2 12701 22 74 658 625 +1226 2 2 12701 22 127 640 128 +1227 2 2 12701 22 22 642 21 +1228 2 2 12701 22 79 643 80 +1229 2 2 12701 22 117 642 118 +1230 2 2 12701 22 130 641 129 +1231 2 2 12701 22 140 643 139 +1232 2 2 12701 22 69 640 70 +1233 2 2 12701 22 614 685 639 +1234 2 2 12701 22 32 641 31 +1235 2 2 12701 22 601 683 637 +1236 2 2 12701 22 637 683 613 +1237 2 2 12701 22 638 687 602 +1238 2 2 12701 22 616 687 638 +1239 2 2 12701 22 607 688 656 +1240 2 2 12701 22 656 688 620 +1241 2 2 12701 22 639 708 614 +1242 2 2 12701 22 685 709 639 +1243 2 2 12701 22 628 699 618 +1244 2 2 12701 22 598 699 628 +1245 2 2 12701 22 602 688 638 +1246 2 2 12701 22 638 688 607 +1247 2 2 12701 22 613 707 637 +1248 2 2 12701 22 638 706 616 +1249 2 2 12701 22 127 672 640 +1250 2 2 12701 22 79 673 643 +1251 2 2 12701 22 22 674 642 +1252 2 2 12701 22 642 677 118 +1253 2 2 12701 22 595 667 623 +1254 2 2 12701 22 130 675 641 +1255 2 2 12701 22 643 678 139 +1256 2 2 12701 22 641 676 31 +1257 2 2 12701 22 640 679 70 +1258 2 2 12701 22 600 715 628 +1259 2 2 12701 22 623 713 619 +1260 2 2 12701 22 599 714 623 +1261 2 2 12701 22 631 679 603 +1262 2 2 12701 22 606 675 629 +1263 2 2 12701 22 632 678 605 +1264 2 2 12701 22 633 677 604 +1265 2 2 12701 22 600 709 685 +1266 2 2 12701 22 69 737 640 +1267 2 2 12701 22 640 737 128 +1268 2 2 12701 22 642 740 21 +1269 2 2 12701 22 117 740 642 +1270 2 2 12701 22 32 738 641 +1271 2 2 12701 22 641 738 129 +1272 2 2 12701 22 643 741 80 +1273 2 2 12701 22 140 741 643 +1274 2 2 12701 22 623 697 595 +1275 2 2 12701 22 624 681 599 +1276 2 2 12701 22 655 671 594 +1277 2 2 12701 22 625 682 602 +1278 2 2 12701 22 626 683 601 +1279 2 2 12701 22 602 687 625 +1280 2 2 12701 22 601 686 626 +1281 2 2 12701 22 627 684 600 +1282 2 2 12701 22 600 685 627 +1283 2 2 12701 22 645 682 611 +1284 2 2 12701 22 599 702 624 +1285 2 2 12701 22 644 666 608 +1286 2 2 12701 22 597 670 645 +1287 2 2 12701 22 645 670 620 +1288 2 2 12701 22 619 671 655 +1289 2 2 12701 22 637 707 596 +1290 2 2 12701 22 607 723 638 +1291 2 2 12701 22 628 700 598 +1292 2 2 12701 22 637 724 601 +1293 2 2 12701 22 645 705 682 +1294 2 2 12701 22 654 665 609 +1295 2 2 12701 22 618 665 654 +1296 2 2 12701 22 630 694 616 +1297 2 2 12701 22 634 693 614 +1298 2 2 12701 22 635 695 617 +1299 2 2 12701 22 613 689 636 +1300 2 2 12701 22 608 734 644 +1301 2 2 12701 22 646 650 597 +1302 2 2 12701 22 647 651 595 +1303 2 2 12701 22 648 652 598 +1304 2 2 12701 22 596 653 649 +1305 2 2 12701 22 639 709 609 +1306 2 2 12701 22 597 708 639 +1307 2 2 12701 22 644 712 666 +1308 2 2 12701 22 621 699 668 +1309 2 2 12701 22 668 699 598 +1310 2 2 12701 22 603 733 646 +1311 2 2 12701 22 605 735 647 +1312 2 2 12701 22 649 739 606 +1313 2 2 12701 22 604 736 648 +1314 2 2 12701 22 603 679 640 +1315 2 2 12701 22 640 672 603 +1316 2 2 12701 22 642 674 604 +1317 2 2 12701 22 605 678 643 +1318 2 2 12701 22 604 677 642 +1319 2 2 12701 22 606 676 641 +1320 2 2 12701 22 641 675 606 +1321 2 2 12701 22 643 673 605 +1322 2 2 12701 22 646 733 650 +1323 2 2 12701 22 647 735 651 +1324 2 2 12701 22 653 739 649 +1325 2 2 12701 22 648 736 652 +1326 2 2 12701 22 680 724 637 +1327 2 2 12701 22 617 703 668 +1328 2 2 12701 22 617 668 652 +1329 2 2 12701 22 686 703 617 +1330 2 2 12701 22 684 715 600 +1331 2 2 12701 22 669 701 622 +1332 2 2 12701 22 599 701 669 +1333 2 2 12701 22 652 668 598 +1334 2 2 12701 22 666 712 621 +1335 2 2 12701 22 644 734 594 +1336 2 2 12701 22 682 705 602 +1337 2 2 12701 22 618 712 644 +1338 2 2 12701 22 621 703 666 +1339 2 2 12701 22 666 703 601 +1340 2 2 12701 22 134 662 133 +1341 2 2 12701 22 123 660 124 +1342 2 2 12701 22 121 661 122 +1343 2 2 12701 22 28 659 27 +1344 2 2 12701 22 26 663 25 +1345 2 2 12701 22 136 657 135 +1346 2 2 12701 22 75 664 76 +1347 2 2 12701 22 73 658 74 +1348 2 2 12701 22 645 710 597 +1349 2 2 12701 22 594 671 656 +1350 2 2 12701 22 667 723 607 +1351 2 2 12701 22 601 724 666 +1352 2 2 12701 22 667 713 623 +1353 2 2 12701 22 608 724 680 +1354 2 2 12701 22 73 691 658 +1355 2 2 12701 22 136 690 657 +1356 2 2 12701 22 28 689 659 +1357 2 2 12701 22 121 692 661 +1358 2 2 12701 22 660 693 124 +1359 2 2 12701 22 656 671 607 +1360 2 2 12701 22 595 697 647 +1361 2 2 12701 22 663 695 25 +1362 2 2 12701 22 664 694 76 +1363 2 2 12701 22 662 696 133 +1364 2 2 12701 22 611 710 645 +1365 2 2 12701 22 665 718 609 +1366 2 2 12701 22 594 734 655 +1367 2 2 12701 22 620 705 645 +1368 2 2 12701 22 78 725 673 +1369 2 2 12701 22 126 732 672 +1370 2 2 12701 22 677 731 119 +1371 2 2 12701 22 649 698 596 +1372 2 2 12701 22 131 729 675 +1373 2 2 12701 22 679 730 71 +1374 2 2 12701 22 678 726 138 +1375 2 2 12701 22 676 727 30 +1376 2 2 12701 22 609 709 654 +1377 2 2 12701 22 23 728 674 +1378 2 2 12701 22 597 710 646 +1379 2 2 12701 22 681 714 599 +1380 2 2 12701 22 609 718 704 +1381 2 2 12701 22 126 672 127 +1382 2 2 12701 22 78 673 79 +1383 2 2 12701 22 118 677 119 +1384 2 2 12701 22 131 675 130 +1385 2 2 12701 22 70 679 71 +1386 2 2 12701 22 31 676 30 +1387 2 2 12701 22 139 678 138 +1388 2 2 12701 22 23 674 22 +1389 2 2 12701 22 598 700 648 +1390 2 2 12701 22 650 708 597 +1391 2 2 12701 22 646 721 631 +1392 2 2 12701 22 651 706 595 +1393 2 2 12701 22 596 707 653 +1394 2 2 12701 22 648 722 633 +1395 2 2 12701 22 647 720 632 +1396 2 2 12701 22 629 719 649 +1397 2 2 12701 22 674 736 604 +1398 2 2 12701 22 606 739 676 +1399 2 2 12701 22 672 733 603 +1400 2 2 12701 22 673 735 605 +1401 2 2 12701 22 650 733 634 +1402 2 2 12701 22 651 735 630 +1403 2 2 12701 22 652 736 635 +1404 2 2 12701 22 653 707 613 +1405 2 2 12701 22 636 739 653 +1406 2 2 12701 22 616 706 651 +1407 2 2 12701 22 614 708 650 +1408 2 2 12701 22 657 681 624 +1409 2 2 12701 22 610 681 657 +1410 2 2 12701 22 627 685 660 +1411 2 2 12701 22 660 685 614 +1412 2 2 12701 22 661 684 627 +1413 2 2 12701 22 612 684 661 +1414 2 2 12701 22 659 683 626 +1415 2 2 12701 22 613 683 659 +1416 2 2 12701 22 658 682 625 +1417 2 2 12701 22 611 682 658 +1418 2 2 12701 22 664 687 616 +1419 2 2 12701 22 625 687 664 +1420 2 2 12701 22 626 686 663 +1421 2 2 12701 22 663 686 617 +1422 2 2 12701 22 72 691 73 +1423 2 2 12701 22 120 692 121 +1424 2 2 12701 22 29 689 28 +1425 2 2 12701 22 137 690 136 +1426 2 2 12701 22 25 695 24 +1427 2 2 12701 22 76 694 77 +1428 2 2 12701 22 659 689 613 +1429 2 2 12701 22 657 690 610 +1430 2 2 12701 22 124 693 125 +1431 2 2 12701 22 133 696 132 +1432 2 2 12701 22 614 693 660 +1433 2 2 12701 22 615 696 662 +1434 2 2 12701 22 616 694 664 +1435 2 2 12701 22 658 691 611 +1436 2 2 12701 22 661 692 612 +1437 2 2 12701 22 617 695 663 +1438 2 2 12701 22 673 725 630 +1439 2 2 12701 22 672 732 634 +1440 2 2 12701 22 636 727 676 +1441 2 2 12701 22 633 731 677 +1442 2 2 12701 22 675 729 629 +1443 2 2 12701 22 674 728 635 +1444 2 2 12701 22 632 726 678 +1445 2 2 12701 22 631 730 679 +1446 2 2 12701 22 622 717 669 +1447 2 2 12701 22 669 702 599 +1448 2 2 12701 22 662 702 615 +1449 2 2 12701 22 634 733 672 +1450 2 2 12701 22 635 736 674 +1451 2 2 12701 22 630 735 673 +1452 2 2 12701 22 676 739 636 +1453 2 2 12701 22 669 717 698 +1454 2 2 12701 22 654 709 600 +1455 2 2 12701 22 615 702 669 +1456 2 2 12701 22 669 698 615 +1457 2 2 12701 22 655 711 619 +1458 2 2 12701 22 620 704 656 +1459 2 2 12701 22 656 718 594 +1460 2 2 12701 22 607 713 667 +1461 2 2 12701 22 624 702 662 +1462 2 2 12701 22 609 704 670 +1463 2 2 12701 22 670 704 620 +1464 2 2 12701 22 697 720 647 +1465 2 2 12701 22 671 713 607 +1466 2 2 12701 22 706 723 595 +1467 2 2 12701 22 610 720 697 +1468 2 2 12701 22 622 716 680 +1469 2 2 12701 22 615 719 696 +1470 2 2 12701 22 692 722 612 +1471 2 2 12701 22 690 720 610 +1472 2 2 12701 22 691 721 611 +1473 2 2 12701 22 668 703 621 +1474 2 2 12701 22 632 720 690 +1475 2 2 12701 22 696 719 629 +1476 2 2 12701 22 633 722 692 +1477 2 2 12701 22 631 721 691 +1478 2 2 12701 22 649 719 698 +1479 2 2 12701 22 698 719 615 +1480 2 2 12701 22 594 718 665 +1481 2 2 12701 22 601 703 686 +1482 2 2 12701 22 666 724 608 +1483 2 2 12701 22 602 705 688 +1484 2 2 12701 22 688 705 620 +1485 2 2 12701 22 595 723 667 +1486 2 2 12701 22 700 722 648 +1487 2 2 12701 22 612 722 700 +1488 2 2 12701 22 610 714 681 +1489 2 2 12701 22 711 716 622 +1490 2 2 12701 22 619 713 671 +1491 2 2 12701 22 3 738 32 +1492 2 2 12701 22 129 738 3 +1493 2 2 12701 22 7 741 140 +1494 2 2 12701 22 80 741 7 +1495 2 2 12701 22 2 740 117 +1496 2 2 12701 22 128 737 6 +1497 2 2 12701 22 21 740 2 +1498 2 2 12701 22 6 737 69 +1499 2 2 12701 22 697 714 610 +1500 2 2 12701 22 699 712 618 +1501 2 2 12701 22 621 712 699 +1502 2 2 12701 22 690 726 632 +1503 2 2 12701 22 137 726 690 +1504 2 2 12701 22 691 730 631 +1505 2 2 12701 22 72 730 691 +1506 2 2 12701 22 689 727 636 +1507 2 2 12701 22 29 727 689 +1508 2 2 12701 22 120 731 692 +1509 2 2 12701 22 692 731 633 +1510 2 2 12701 22 634 732 693 +1511 2 2 12701 22 693 732 125 +1512 2 2 12701 22 696 729 132 +1513 2 2 12701 22 629 729 696 +1514 2 2 12701 22 630 725 694 +1515 2 2 12701 22 694 725 77 +1516 2 2 12701 22 635 728 695 +1517 2 2 12701 22 695 728 24 +1518 2 2 12701 22 680 717 622 +1519 2 2 12701 22 596 717 680 +1520 2 2 12701 22 680 716 608 +1521 2 2 12701 22 612 715 684 +1522 2 2 12701 22 638 723 706 +1523 2 2 12701 22 619 711 701 +1524 2 2 12701 22 701 711 622 +1525 2 2 12701 22 716 734 608 +1526 2 2 12701 22 623 714 697 +1527 2 2 12701 22 655 734 716 +1528 2 2 12701 22 698 717 596 +1529 2 2 12701 22 700 715 612 +1530 2 2 12701 22 628 715 700 +1531 2 2 12701 22 138 726 137 +1532 2 2 12701 22 24 728 23 +1533 2 2 12701 22 132 729 131 +1534 2 2 12701 22 77 725 78 +1535 2 2 12701 22 119 731 120 +1536 2 2 12701 22 71 730 72 +1537 2 2 12701 22 30 727 29 +1538 2 2 12701 22 125 732 126 +1539 2 2 12701 22 704 718 656 +1540 2 2 12701 22 611 721 710 +1541 2 2 12701 22 710 721 646 +1542 2 2 12701 22 655 716 711 +1543 2 2 12701 23 38 39 771 +1544 2 2 12701 23 87 86 773 +1545 2 2 12701 23 135 134 772 +1546 2 2 12701 23 146 147 774 +1547 2 2 12701 23 758 784 818 +1548 2 2 12701 23 784 746 818 +1549 2 2 12701 23 748 786 816 +1550 2 2 12701 23 786 757 816 +1551 2 2 12701 23 780 762 866 +1552 2 2 12701 23 777 760 865 +1553 2 2 12701 23 765 775 799 +1554 2 2 12701 23 766 776 801 +1555 2 2 12701 23 763 778 800 +1556 2 2 12701 23 779 764 802 +1557 2 2 12701 23 754 777 798 +1558 2 2 12701 23 753 780 796 +1559 2 2 12701 23 752 782 795 +1560 2 2 12701 23 781 751 797 +1561 2 2 12701 23 135 772 813 +1562 2 2 12701 23 771 39 808 +1563 2 2 12701 23 87 773 809 +1564 2 2 12701 23 38 771 810 +1565 2 2 12701 23 774 147 812 +1566 2 2 12701 23 773 86 814 +1567 2 2 12701 23 772 134 807 +1568 2 2 12701 23 146 774 811 +1569 2 2 12701 23 82 81 787 +1570 2 2 12701 23 43 44 790 +1571 2 2 12701 23 140 139 787 +1572 2 2 12701 23 141 142 790 +1573 2 2 12701 23 130 129 789 +1574 2 2 12701 23 151 152 788 +1575 2 2 12701 23 92 91 788 +1576 2 2 12701 23 759 784 827 +1577 2 2 12701 23 33 34 789 +1578 2 2 12701 23 796 780 866 +1579 2 2 12701 23 798 777 865 +1580 2 2 12701 23 783 749 828 +1581 2 2 12701 23 763 783 828 +1582 2 2 12701 23 766 785 831 +1583 2 2 12701 23 785 750 831 +1584 2 2 12701 23 786 748 834 +1585 2 2 12701 23 765 786 834 +1586 2 2 12701 23 785 744 838 +1587 2 2 12701 23 783 743 837 +1588 2 2 12701 23 756 803 836 +1589 2 2 12701 23 803 768 836 +1590 2 2 12701 23 755 804 835 +1591 2 2 12701 23 804 767 835 +1592 2 2 12701 23 755 783 837 +1593 2 2 12701 23 756 785 838 +1594 2 2 12701 23 749 783 835 +1595 2 2 12701 23 783 755 835 +1596 2 2 12701 23 743 805 837 +1597 2 2 12701 23 805 769 837 +1598 2 2 12701 23 806 770 838 +1599 2 2 12701 23 744 806 838 +1600 2 2 12701 23 750 785 836 +1601 2 2 12701 23 785 756 836 +1602 2 2 12701 23 783 763 858 +1603 2 2 12701 23 785 766 857 +1604 2 2 12701 23 786 765 856 +1605 2 2 12701 23 82 787 819 +1606 2 2 12701 23 43 790 823 +1607 2 2 12701 23 790 142 820 +1608 2 2 12701 23 788 91 821 +1609 2 2 12701 23 130 789 822 +1610 2 2 12701 23 787 139 825 +1611 2 2 12701 23 151 788 824 +1612 2 2 12701 23 789 34 826 +1613 2 2 12701 23 777 754 826 +1614 2 2 12701 23 751 781 823 +1615 2 2 12701 23 780 753 821 +1616 2 2 12701 23 782 752 825 +1617 2 2 12701 23 787 81 882 +1618 2 2 12701 23 140 787 882 +1619 2 2 12701 23 789 129 883 +1620 2 2 12701 23 33 789 883 +1621 2 2 12701 23 790 44 884 +1622 2 2 12701 23 141 790 884 +1623 2 2 12701 23 92 788 879 +1624 2 2 12701 23 788 152 879 +1625 2 2 12701 23 792 770 816 +1626 2 2 12701 23 757 792 816 +1627 2 2 12701 23 758 791 815 +1628 2 2 12701 23 791 769 815 +1629 2 2 12701 23 747 771 827 +1630 2 2 12701 23 771 747 830 +1631 2 2 12701 23 749 772 828 +1632 2 2 12701 23 772 749 832 +1633 2 2 12701 23 773 748 829 +1634 2 2 12701 23 748 773 834 +1635 2 2 12701 23 750 774 831 +1636 2 2 12701 23 774 750 833 +1637 2 2 12701 23 794 764 833 +1638 2 2 12701 23 793 761 832 +1639 2 2 12701 23 793 767 817 +1640 2 2 12701 23 745 793 817 +1641 2 2 12701 23 794 768 818 +1642 2 2 12701 23 746 794 818 +1643 2 2 12701 23 784 758 885 +1644 2 2 12701 23 757 786 886 +1645 2 2 12701 23 806 762 829 +1646 2 2 12701 23 805 760 830 +1647 2 2 12701 23 744 785 857 +1648 2 2 12701 23 743 783 858 +1649 2 2 12701 23 794 833 853 +1650 2 2 12701 23 793 832 852 +1651 2 2 12701 23 784 759 849 +1652 2 2 12701 23 775 765 844 +1653 2 2 12701 23 776 766 840 +1654 2 2 12701 23 760 777 845 +1655 2 2 12701 23 778 763 839 +1656 2 2 12701 23 764 779 841 +1657 2 2 12701 23 762 780 843 +1658 2 2 12701 23 795 745 799 +1659 2 2 12701 23 798 743 800 +1660 2 2 12701 23 796 744 801 +1661 2 2 12701 23 746 797 802 +1662 2 2 12701 23 746 784 849 +1663 2 2 12701 23 806 829 851 +1664 2 2 12701 23 805 830 850 +1665 2 2 12701 23 752 795 878 +1666 2 2 12701 23 754 798 881 +1667 2 2 12701 23 753 796 880 +1668 2 2 12701 23 797 751 877 +1669 2 2 12701 23 752 787 825 +1670 2 2 12701 23 787 752 819 +1671 2 2 12701 23 751 790 820 +1672 2 2 12701 23 788 753 824 +1673 2 2 12701 23 790 751 823 +1674 2 2 12701 23 754 789 826 +1675 2 2 12701 23 753 788 821 +1676 2 2 12701 23 789 754 822 +1677 2 2 12701 23 795 799 878 +1678 2 2 12701 23 798 800 881 +1679 2 2 12701 23 796 801 880 +1680 2 2 12701 23 802 797 877 +1681 2 2 12701 23 827 784 885 +1682 2 2 12701 23 764 794 864 +1683 2 2 12701 23 833 750 853 +1684 2 2 12701 23 832 749 852 +1685 2 2 12701 23 817 757 886 +1686 2 2 12701 23 758 815 885 +1687 2 2 12701 23 742 791 848 +1688 2 2 12701 23 742 792 847 +1689 2 2 12701 23 794 746 864 +1690 2 2 12701 23 136 135 813 +1691 2 2 12701 23 147 148 812 +1692 2 2 12701 23 145 146 811 +1693 2 2 12701 23 88 87 809 +1694 2 2 12701 23 39 40 808 +1695 2 2 12701 23 37 38 810 +1696 2 2 12701 23 134 133 807 +1697 2 2 12701 23 86 85 814 +1698 2 2 12701 23 793 745 859 +1699 2 2 12701 23 792 742 863 +1700 2 2 12701 23 791 742 862 +1701 2 2 12701 23 743 798 865 +1702 2 2 12701 23 744 796 866 +1703 2 2 12701 23 791 758 848 +1704 2 2 12701 23 792 757 847 +1705 2 2 12701 23 802 764 864 +1706 2 2 12701 23 808 40 842 +1707 2 2 12701 23 769 791 854 +1708 2 2 12701 23 770 792 855 +1709 2 2 12701 23 807 133 839 +1710 2 2 12701 23 88 809 843 +1711 2 2 12701 23 812 148 840 +1712 2 2 12701 23 145 811 841 +1713 2 2 12701 23 136 813 846 +1714 2 2 12701 23 37 810 845 +1715 2 2 12701 23 814 85 844 +1716 2 2 12701 23 761 793 859 +1717 2 2 12701 23 767 793 852 +1718 2 2 12701 23 768 794 853 +1719 2 2 12701 23 83 819 870 +1720 2 2 12701 23 131 822 872 +1721 2 2 12701 23 150 824 869 +1722 2 2 12701 23 821 90 873 +1723 2 2 12701 23 820 143 871 +1724 2 2 12701 23 825 138 875 +1725 2 2 12701 23 826 35 874 +1726 2 2 12701 23 746 802 864 +1727 2 2 12701 23 42 823 876 +1728 2 2 12701 23 745 795 859 +1729 2 2 12701 23 83 82 819 +1730 2 2 12701 23 131 130 822 +1731 2 2 12701 23 91 90 821 +1732 2 2 12701 23 34 35 826 +1733 2 2 12701 23 142 143 820 +1734 2 2 12701 23 139 138 825 +1735 2 2 12701 23 42 43 823 +1736 2 2 12701 23 150 151 824 +1737 2 2 12701 23 795 782 868 +1738 2 2 12701 23 800 743 858 +1739 2 2 12701 23 799 745 856 +1740 2 2 12701 23 801 744 857 +1741 2 2 12701 23 781 797 867 +1742 2 2 12701 23 797 746 849 +1743 2 2 12701 23 805 743 865 +1744 2 2 12701 23 806 744 866 +1745 2 2 12701 23 747 827 885 +1746 2 2 12701 23 751 820 877 +1747 2 2 12701 23 824 753 880 +1748 2 2 12701 23 822 754 881 +1749 2 2 12701 23 819 752 878 +1750 2 2 12701 23 765 799 856 +1751 2 2 12701 23 766 801 857 +1752 2 2 12701 23 763 800 858 +1753 2 2 12701 23 800 778 881 +1754 2 2 12701 23 799 775 878 +1755 2 2 12701 23 801 776 880 +1756 2 2 12701 23 779 802 877 +1757 2 2 12701 23 810 771 830 +1758 2 2 12701 23 760 810 830 +1759 2 2 12701 23 764 811 833 +1760 2 2 12701 23 811 774 833 +1761 2 2 12701 23 813 772 832 +1762 2 2 12701 23 761 813 832 +1763 2 2 12701 23 807 763 828 +1764 2 2 12701 23 772 807 828 +1765 2 2 12701 23 771 808 827 +1766 2 2 12701 23 808 759 827 +1767 2 2 12701 23 773 814 834 +1768 2 2 12701 23 814 765 834 +1769 2 2 12701 23 809 773 829 +1770 2 2 12701 23 762 809 829 +1771 2 2 12701 23 812 766 831 +1772 2 2 12701 23 774 812 831 +1773 2 2 12701 23 804 742 847 +1774 2 2 12701 23 803 742 848 +1775 2 2 12701 23 40 41 842 +1776 2 2 12701 23 148 149 840 +1777 2 2 12701 23 89 88 843 +1778 2 2 12701 23 137 136 846 +1779 2 2 12701 23 36 37 845 +1780 2 2 12701 23 133 132 839 +1781 2 2 12701 23 144 145 841 +1782 2 2 12701 23 763 807 839 +1783 2 2 12701 23 85 84 844 +1784 2 2 12701 23 810 760 845 +1785 2 2 12701 23 766 812 840 +1786 2 2 12701 23 811 764 841 +1787 2 2 12701 23 759 808 842 +1788 2 2 12701 23 809 762 843 +1789 2 2 12701 23 765 814 844 +1790 2 2 12701 23 813 761 846 +1791 2 2 12701 23 742 803 863 +1792 2 2 12701 23 742 804 862 +1793 2 2 12701 23 819 775 870 +1794 2 2 12701 23 824 776 869 +1795 2 2 12701 23 822 778 872 +1796 2 2 12701 23 780 821 873 +1797 2 2 12701 23 779 820 871 +1798 2 2 12701 23 782 825 875 +1799 2 2 12701 23 777 826 874 +1800 2 2 12701 23 823 781 876 +1801 2 2 12701 23 820 779 877 +1802 2 2 12701 23 778 822 881 +1803 2 2 12701 23 829 748 851 +1804 2 2 12701 23 775 819 878 +1805 2 2 12701 23 776 824 880 +1806 2 2 12701 23 830 747 850 +1807 2 2 12701 23 767 804 861 +1808 2 2 12701 23 768 803 860 +1809 2 2 12701 23 804 755 862 +1810 2 2 12701 23 803 756 863 +1811 2 2 12701 23 769 805 850 +1812 2 2 12701 23 770 806 851 +1813 2 2 12701 23 760 805 865 +1814 2 2 12701 23 762 806 866 +1815 2 2 12701 23 747 815 850 +1816 2 2 12701 23 815 769 850 +1817 2 2 12701 23 816 770 851 +1818 2 2 12701 23 748 816 851 +1819 2 2 12701 23 856 745 886 +1820 2 2 12701 23 759 842 867 +1821 2 2 12701 23 846 761 868 +1822 2 2 12701 23 842 781 867 +1823 2 2 12701 23 782 846 868 +1824 2 2 12701 23 757 817 861 +1825 2 2 12701 23 817 767 861 +1826 2 2 12701 23 758 818 860 +1827 2 2 12701 23 818 768 860 +1828 2 2 12701 23 804 847 861 +1829 2 2 12701 23 803 848 860 +1830 2 2 12701 23 835 767 852 +1831 2 2 12701 23 749 835 852 +1832 2 2 12701 23 750 836 853 +1833 2 2 12701 23 836 768 853 +1834 2 2 12701 23 755 837 854 +1835 2 2 12701 23 837 769 854 +1836 2 2 12701 23 756 838 855 +1837 2 2 12701 23 838 770 855 +1838 2 2 12701 23 129 3 883 +1839 2 2 12701 23 4 141 884 +1840 2 2 12701 23 44 4 884 +1841 2 2 12701 23 8 92 879 +1842 2 2 12701 23 3 33 883 +1843 2 2 12701 23 152 8 879 +1844 2 2 12701 23 81 7 882 +1845 2 2 12701 23 7 140 882 +1846 2 2 12701 23 815 747 885 +1847 2 2 12701 23 745 817 886 +1848 2 2 12701 23 839 132 872 +1849 2 2 12701 23 778 839 872 +1850 2 2 12701 23 89 843 873 +1851 2 2 12701 23 843 780 873 +1852 2 2 12701 23 776 840 869 +1853 2 2 12701 23 840 149 869 +1854 2 2 12701 23 842 41 876 +1855 2 2 12701 23 781 842 876 +1856 2 2 12701 23 845 777 874 +1857 2 2 12701 23 36 845 874 +1858 2 2 12701 23 775 844 870 +1859 2 2 12701 23 844 84 870 +1860 2 2 12701 23 144 841 871 +1861 2 2 12701 23 841 779 871 +1862 2 2 12701 23 846 782 875 +1863 2 2 12701 23 137 846 875 +1864 2 2 12701 23 849 759 867 +1865 2 2 12701 23 797 849 867 +1866 2 2 12701 23 786 856 886 +1867 2 2 12701 23 848 758 860 +1868 2 2 12701 23 847 757 861 +1869 2 2 12701 23 755 854 862 +1870 2 2 12701 23 756 855 863 +1871 2 2 12701 23 149 150 869 +1872 2 2 12701 23 90 89 873 +1873 2 2 12701 23 84 83 870 +1874 2 2 12701 23 138 137 875 +1875 2 2 12701 23 143 144 871 +1876 2 2 12701 23 35 36 874 +1877 2 2 12701 23 132 131 872 +1878 2 2 12701 23 41 42 876 +1879 2 2 12701 23 854 791 862 +1880 2 2 12701 23 855 792 863 +1881 2 2 12701 23 761 859 868 +1882 2 2 12701 23 859 795 868 +1883 2 2 12701 24 147 146 916 +1884 2 2 12701 24 110 111 918 +1885 2 2 12701 24 50 51 917 +1886 2 2 12701 24 99 98 919 +1887 2 2 12701 24 949 894 961 +1888 2 2 12701 24 914 949 961 +1889 2 2 12701 24 894 929 961 +1890 2 2 12701 24 929 901 961 +1891 2 2 12701 24 913 950 962 +1892 2 2 12701 24 950 893 962 +1893 2 2 12701 24 902 931 963 +1894 2 2 12701 24 931 890 963 +1895 2 2 12701 24 921 911 944 +1896 2 2 12701 24 923 909 946 +1897 2 2 12701 24 906 926 945 +1898 2 2 12701 24 927 908 947 +1899 2 2 12701 24 920 897 940 +1900 2 2 12701 24 922 898 943 +1901 2 2 12701 24 899 924 941 +1902 2 2 12701 24 925 896 942 +1903 2 2 12701 24 928 895 975 +1904 2 2 12701 24 50 917 959 +1905 2 2 12701 24 104 103 932 +1906 2 2 12701 24 147 916 957 +1907 2 2 12701 24 917 51 953 +1908 2 2 12701 24 142 141 934 +1909 2 2 12701 24 918 111 954 +1910 2 2 12701 24 916 146 952 +1911 2 2 12701 24 110 918 956 +1912 2 2 12701 24 99 919 958 +1913 2 2 12701 24 919 98 955 +1914 2 2 12701 24 152 151 933 +1915 2 2 12701 24 55 56 935 +1916 2 2 12701 24 905 930 972 +1917 2 2 12701 24 105 106 935 +1918 2 2 12701 24 910 931 974 +1919 2 2 12701 24 906 928 975 +1920 2 2 12701 24 45 46 934 +1921 2 2 12701 24 94 93 933 +1922 2 2 12701 24 115 116 932 +1923 2 2 12701 24 907 929 973 +1924 2 2 12701 24 929 894 973 +1925 2 2 12701 24 929 889 980 +1926 2 2 12701 24 895 928 978 +1927 2 2 12701 24 900 948 978 +1928 2 2 12701 24 948 912 978 +1929 2 2 12701 24 928 906 1005 +1930 2 2 12701 24 928 900 978 +1931 2 2 12701 24 901 929 980 +1932 2 2 12701 24 900 928 979 +1933 2 2 12701 24 928 888 979 +1934 2 2 12701 24 903 930 981 +1935 2 2 12701 24 930 891 981 +1936 2 2 12701 24 889 951 980 +1937 2 2 12701 24 951 915 980 +1938 2 2 12701 24 946 909 951 +1939 2 2 12701 24 142 934 964 +1940 2 2 12701 24 932 103 965 +1941 2 2 12701 24 933 151 967 +1942 2 2 12701 24 55 935 968 +1943 2 2 12701 24 935 106 966 +1944 2 2 12701 24 934 46 969 +1945 2 2 12701 24 115 932 970 +1946 2 2 12701 24 94 933 971 +1947 2 2 12701 24 889 946 951 +1948 2 2 12701 24 897 920 970 +1949 2 2 12701 24 896 925 968 +1950 2 2 12701 24 898 922 964 +1951 2 2 12701 24 924 899 967 +1952 2 2 12701 24 104 932 1029 +1953 2 2 12701 24 932 116 1029 +1954 2 2 12701 24 933 93 1028 +1955 2 2 12701 24 152 933 1028 +1956 2 2 12701 24 45 934 1024 +1957 2 2 12701 24 934 141 1024 +1958 2 2 12701 24 936 914 961 +1959 2 2 12701 24 901 936 961 +1960 2 2 12701 24 902 938 962 +1961 2 2 12701 24 938 913 962 +1962 2 2 12701 24 903 937 960 +1963 2 2 12701 24 937 915 960 +1964 2 2 12701 24 105 935 1030 +1965 2 2 12701 24 935 56 1030 +1966 2 2 12701 24 894 916 973 +1967 2 2 12701 24 892 917 972 +1968 2 2 12701 24 917 892 976 +1969 2 2 12701 24 893 918 974 +1970 2 2 12701 24 895 919 975 +1971 2 2 12701 24 919 895 977 +1972 2 2 12701 24 916 894 991 +1973 2 2 12701 24 918 893 990 +1974 2 2 12701 24 939 911 977 +1975 2 2 12701 24 890 939 963 +1976 2 2 12701 24 939 912 963 +1977 2 2 12701 24 930 903 1031 +1978 2 2 12701 24 931 902 1032 +1979 2 2 12701 24 951 909 976 +1980 2 2 12701 24 889 929 994 +1981 2 2 12701 24 939 977 1001 +1982 2 2 12701 24 930 905 995 +1983 2 2 12701 24 931 910 996 +1984 2 2 12701 24 929 907 994 +1985 2 2 12701 24 911 921 987 +1986 2 2 12701 24 909 923 988 +1987 2 2 12701 24 926 906 984 +1988 2 2 12701 24 908 927 986 +1989 2 2 12701 24 890 940 944 +1990 2 2 12701 24 941 888 945 +1991 2 2 12701 24 889 943 946 +1992 2 2 12701 24 891 942 947 +1993 2 2 12701 24 888 928 1005 +1994 2 2 12701 24 891 930 995 +1995 2 2 12701 24 890 931 996 +1996 2 2 12701 24 951 976 1000 +1997 2 2 12701 24 940 897 1026 +1998 2 2 12701 24 899 941 1027 +1999 2 2 12701 24 943 898 1023 +2000 2 2 12701 24 942 896 1025 +2001 2 2 12701 24 932 897 970 +2002 2 2 12701 24 898 934 969 +2003 2 2 12701 24 933 899 971 +2004 2 2 12701 24 896 935 966 +2005 2 2 12701 24 935 896 968 +2006 2 2 12701 24 897 932 965 +2007 2 2 12701 24 934 898 964 +2008 2 2 12701 24 899 933 967 +2009 2 2 12701 24 944 940 1026 +2010 2 2 12701 24 941 945 1027 +2011 2 2 12701 24 946 943 1023 +2012 2 2 12701 24 947 942 1025 +2013 2 2 12701 24 972 930 1031 +2014 2 2 12701 24 974 931 1032 +2015 2 2 12701 24 911 939 1010 +2016 2 2 12701 24 977 895 1001 +2017 2 2 12701 24 902 962 1032 +2018 2 2 12701 24 903 960 1031 +2019 2 2 12701 24 887 938 993 +2020 2 2 12701 24 887 936 999 +2021 2 2 12701 24 937 887 999 +2022 2 2 12701 24 887 937 998 +2023 2 2 12701 24 938 887 998 +2024 2 2 12701 24 939 890 1010 +2025 2 2 12701 24 51 52 953 +2026 2 2 12701 24 148 147 957 +2027 2 2 12701 24 49 50 959 +2028 2 2 12701 24 111 112 954 +2029 2 2 12701 24 109 110 956 +2030 2 2 12701 24 100 99 958 +2031 2 2 12701 24 98 97 955 +2032 2 2 12701 24 146 145 952 +2033 2 2 12701 24 936 887 1008 +2034 2 2 12701 24 938 902 993 +2035 2 2 12701 24 947 908 997 +2036 2 2 12701 24 944 911 1010 +2037 2 2 12701 24 914 936 1004 +2038 2 2 12701 24 953 52 983 +2039 2 2 12701 24 915 937 1003 +2040 2 2 12701 24 955 97 984 +2041 2 2 12701 24 952 145 982 +2042 2 2 12701 24 913 938 1002 +2043 2 2 12701 24 109 956 986 +2044 2 2 12701 24 954 112 985 +2045 2 2 12701 24 148 957 989 +2046 2 2 12701 24 49 959 988 +2047 2 2 12701 24 100 958 987 +2048 2 2 12701 24 936 901 999 +2049 2 2 12701 24 937 903 998 +2050 2 2 12701 24 912 939 1001 +2051 2 2 12701 24 143 964 1018 +2052 2 2 12701 24 967 150 1020 +2053 2 2 12701 24 965 102 1019 +2054 2 2 12701 24 95 971 1017 +2055 2 2 12701 24 966 107 1016 +2056 2 2 12701 24 969 47 1015 +2057 2 2 12701 24 54 968 1022 +2058 2 2 12701 24 890 944 1010 +2059 2 2 12701 24 114 970 1021 +2060 2 2 12701 24 143 142 964 +2061 2 2 12701 24 151 150 967 +2062 2 2 12701 24 103 102 965 +2063 2 2 12701 24 106 107 966 +2064 2 2 12701 24 95 94 971 +2065 2 2 12701 24 54 55 968 +2066 2 2 12701 24 114 115 970 +2067 2 2 12701 24 46 47 969 +2068 2 2 12701 24 945 888 1005 +2069 2 2 12701 24 920 940 1013 +2070 2 2 12701 24 941 924 1014 +2071 2 2 12701 24 925 942 1012 +2072 2 2 12701 24 940 890 996 +2073 2 2 12701 24 942 891 995 +2074 2 2 12701 24 922 943 1011 +2075 2 2 12701 24 943 889 994 +2076 2 2 12701 24 892 972 1031 +2077 2 2 12701 24 893 974 1032 +2078 2 2 12701 24 894 949 991 +2079 2 2 12701 24 893 950 990 +2080 2 2 12701 24 896 966 1025 +2081 2 2 12701 24 898 969 1023 +2082 2 2 12701 24 971 899 1027 +2083 2 2 12701 24 897 965 1026 +2084 2 2 12701 24 888 941 992 +2085 2 2 12701 24 906 945 1005 +2086 2 2 12701 24 921 944 1026 +2087 2 2 12701 24 945 926 1027 +2088 2 2 12701 24 923 946 1023 +2089 2 2 12701 24 927 947 1025 +2090 2 2 12701 24 950 908 990 +2091 2 2 12701 24 949 904 991 +2092 2 2 12701 24 916 952 973 +2093 2 2 12701 24 952 907 973 +2094 2 2 12701 24 953 905 972 +2095 2 2 12701 24 917 953 972 +2096 2 2 12701 24 955 906 975 +2097 2 2 12701 24 919 955 975 +2098 2 2 12701 24 909 959 976 +2099 2 2 12701 24 959 917 976 +2100 2 2 12701 24 918 954 974 +2101 2 2 12701 24 954 910 974 +2102 2 2 12701 24 911 958 977 +2103 2 2 12701 24 958 919 977 +2104 2 2 12701 24 948 887 993 +2105 2 2 12701 24 908 950 997 +2106 2 2 12701 24 52 53 983 +2107 2 2 12701 24 97 96 984 +2108 2 2 12701 24 48 49 988 +2109 2 2 12701 24 907 952 982 +2110 2 2 12701 24 905 953 983 +2111 2 2 12701 24 108 109 986 +2112 2 2 12701 24 906 955 984 +2113 2 2 12701 24 149 148 989 +2114 2 2 12701 24 145 144 982 +2115 2 2 12701 24 910 954 985 +2116 2 2 12701 24 112 113 985 +2117 2 2 12701 24 958 911 987 +2118 2 2 12701 24 956 908 986 +2119 2 2 12701 24 101 100 987 +2120 2 2 12701 24 957 904 989 +2121 2 2 12701 24 959 909 988 +2122 2 2 12701 24 908 956 990 +2123 2 2 12701 24 904 957 991 +2124 2 2 12701 24 904 949 992 +2125 2 2 12701 24 887 948 1008 +2126 2 2 12701 24 964 922 1018 +2127 2 2 12701 24 924 967 1020 +2128 2 2 12701 24 921 965 1019 +2129 2 2 12701 24 927 966 1016 +2130 2 2 12701 24 971 926 1017 +2131 2 2 12701 24 923 969 1015 +2132 2 2 12701 24 968 925 1022 +2133 2 2 12701 24 970 920 1021 +2134 2 2 12701 24 891 947 997 +2135 2 2 12701 24 966 927 1025 +2136 2 2 12701 24 969 923 1023 +2137 2 2 12701 24 956 918 990 +2138 2 2 12701 24 965 921 1026 +2139 2 2 12701 24 926 971 1027 +2140 2 2 12701 24 957 916 991 +2141 2 2 12701 24 976 892 1000 +2142 2 2 12701 24 912 948 1007 +2143 2 2 12701 24 949 914 1006 +2144 2 2 12701 24 950 913 1009 +2145 2 2 12701 24 948 900 1008 +2146 2 2 12701 24 915 951 1000 +2147 2 2 12701 24 892 960 1000 +2148 2 2 12701 24 960 915 1000 +2149 2 2 12701 24 907 982 1011 +2150 2 2 12701 24 989 904 1014 +2151 2 2 12701 24 905 983 1012 +2152 2 2 12701 24 910 985 1013 +2153 2 2 12701 24 982 922 1011 +2154 2 2 12701 24 983 925 1012 +2155 2 2 12701 24 985 920 1013 +2156 2 2 12701 24 924 989 1014 +2157 2 2 12701 24 904 992 1014 +2158 2 2 12701 24 902 963 1007 +2159 2 2 12701 24 963 912 1007 +2160 2 2 12701 24 992 941 1014 +2161 2 2 12701 24 948 993 1007 +2162 2 2 12701 24 978 912 1001 +2163 2 2 12701 24 895 978 1001 +2164 2 2 12701 24 980 915 1003 +2165 2 2 12701 24 901 980 1003 +2166 2 2 12701 24 900 979 1004 +2167 2 2 12701 24 979 914 1004 +2168 2 2 12701 24 981 913 1002 +2169 2 2 12701 24 903 981 1002 +2170 2 2 12701 24 992 949 1006 +2171 2 2 12701 24 56 1 1030 +2172 2 2 12701 24 116 5 1029 +2173 2 2 12701 24 4 45 1024 +2174 2 2 12701 24 8 152 1028 +2175 2 2 12701 24 141 4 1024 +2176 2 2 12701 24 93 8 1028 +2177 2 2 12701 24 1 105 1030 +2178 2 2 12701 24 5 104 1029 +2179 2 2 12701 24 960 892 1031 +2180 2 2 12701 24 962 893 1032 +2181 2 2 12701 24 979 888 1006 +2182 2 2 12701 24 981 891 1009 +2183 2 2 12701 24 914 979 1006 +2184 2 2 12701 24 997 950 1009 +2185 2 2 12701 24 982 144 1018 +2186 2 2 12701 24 922 982 1018 +2187 2 2 12701 24 925 983 1022 +2188 2 2 12701 24 983 53 1022 +2189 2 2 12701 24 985 113 1021 +2190 2 2 12701 24 920 985 1021 +2191 2 2 12701 24 926 984 1017 +2192 2 2 12701 24 984 96 1017 +2193 2 2 12701 24 987 921 1019 +2194 2 2 12701 24 101 987 1019 +2195 2 2 12701 24 108 986 1016 +2196 2 2 12701 24 986 927 1016 +2197 2 2 12701 24 988 923 1015 +2198 2 2 12701 24 48 988 1015 +2199 2 2 12701 24 149 989 1020 +2200 2 2 12701 24 989 924 1020 +2201 2 2 12701 24 913 981 1009 +2202 2 2 12701 24 943 994 1011 +2203 2 2 12701 24 994 907 1011 +2204 2 2 12701 24 999 901 1003 +2205 2 2 12701 24 937 999 1003 +2206 2 2 12701 24 938 998 1002 +2207 2 2 12701 24 998 903 1002 +2208 2 2 12701 24 888 992 1006 +2209 2 2 12701 24 940 996 1013 +2210 2 2 12701 24 996 910 1013 +2211 2 2 12701 24 995 905 1012 +2212 2 2 12701 24 942 995 1012 +2213 2 2 12701 24 993 902 1007 +2214 2 2 12701 24 900 1004 1008 +2215 2 2 12701 24 891 997 1009 +2216 2 2 12701 24 47 48 1015 +2217 2 2 12701 24 102 101 1019 +2218 2 2 12701 24 113 114 1021 +2219 2 2 12701 24 150 149 1020 +2220 2 2 12701 24 144 143 1018 +2221 2 2 12701 24 107 108 1016 +2222 2 2 12701 24 96 95 1017 +2223 2 2 12701 24 53 54 1022 +2224 2 2 12701 24 1004 936 1008 +2225 4 2 709 26 4232 5919 5854 6040 +2226 4 2 709 26 6008 4477 5126 5598 +2227 4 2 709 26 4279 5896 5198 5334 +2228 4 2 709 26 3921 5768 5196 5728 +2229 4 2 709 26 5768 3921 5449 5728 +2230 4 2 709 26 6019 4492 5580 5738 +2231 4 2 709 26 4220 6029 5314 5432 +2232 4 2 709 26 6033 4114 5370 5720 +2233 4 2 709 26 4308 5915 5538 5688 +2234 4 2 709 26 6059 4210 5450 5825 +2235 4 2 709 26 4267 3922 5261 5849 +2236 4 2 709 26 4267 3922 5609 5261 +2237 4 2 709 26 4062 5896 5334 5557 +2238 4 2 709 26 4043 6028 5122 5199 +2239 4 2 709 26 3922 5609 5261 5272 +2240 4 2 709 26 4232 5919 6040 5119 +2241 4 2 709 26 5041 6057 5480 5846 +2242 4 2 709 26 6006 4180 5422 5680 +2243 4 2 709 26 5915 4643 5688 5784 +2244 4 2 709 26 6017 4146 5154 5855 +2245 4 2 709 26 5993 4506 5611 5618 +2246 4 2 709 26 5933 3943 4973 5810 +2247 4 2 709 26 4492 6019 5553 5738 +2248 4 2 709 26 4308 5915 4803 5538 +2249 4 2 709 26 4308 5915 5688 5784 +2250 4 2 709 26 4283 5810 4887 5683 +2251 4 2 709 26 6019 4378 4492 5717 +2252 4 2 709 26 4043 6028 4656 5568 +2253 4 2 709 26 3923 6068 5331 5915 +2254 4 2 709 26 4114 5720 4757 5370 +2255 4 2 709 26 5906 4031 4622 5540 +2256 4 2 709 26 5973 4360 5210 5901 +2257 4 2 709 26 4040 5869 5246 5392 +2258 4 2 709 26 5937 4017 4887 5683 +2259 4 2 709 26 4698 5828 5191 5387 +2260 4 2 709 26 4907 5927 5555 5773 +2261 4 2 709 26 3893 6053 5198 5716 +2262 4 2 709 26 6065 4223 5306 5315 +2263 4 2 709 26 5938 4166 5363 5701 +2264 4 2 709 26 3923 6068 4618 5331 +2265 4 2 709 26 5649 4641 5187 5640 +2266 4 2 709 26 5649 3869 4641 5640 +2267 4 2 709 26 4101 5981 4648 5694 +2268 4 2 709 26 5868 3922 5272 5609 +2269 4 2 709 26 5974 4907 5773 5927 +2270 4 2 709 26 5984 4075 5707 5905 +2271 4 2 709 26 4283 5953 4887 5810 +2272 4 2 709 26 5896 3893 5334 5557 +2273 4 2 709 26 6018 4134 4986 5544 +2274 4 2 709 26 5136 5970 4761 5869 +2275 4 2 709 26 4161 5856 4455 5729 +2276 4 2 709 26 4198 6024 5507 5877 +2277 4 2 709 26 6047 5715 4894 4099 +2278 4 2 709 26 5306 6065 5315 5689 +2279 4 2 709 26 5036 5984 5707 5905 +2280 4 2 709 26 4082 5859 4554 5831 +2281 4 2 709 26 6029 4220 4666 5432 +2282 4 2 709 26 4648 5893 5694 5194 +2283 4 2 709 26 5977 4257 4994 5622 +2284 4 2 709 26 5554 5944 4278 4521 +2285 4 2 709 26 5970 4040 4761 5869 +2286 4 2 709 26 4120 5660 5146 5191 +2287 4 2 709 26 6046 4278 4862 5826 +2288 4 2 709 26 5916 4370 5022 5118 +2289 4 2 709 26 6025 4312 5282 6009 +2290 4 2 709 26 6047 5228 4099 4894 +2291 4 2 709 26 6034 3903 4482 5624 +2292 4 2 709 26 5916 3988 4370 5118 +2293 4 2 709 26 5679 5522 4092 5009 +2294 4 2 709 26 6025 5983 5282 4623 +2295 4 2 709 26 3893 5896 4707 5557 +2296 4 2 709 26 4337 6025 5282 6009 +2297 4 2 709 26 4279 5836 5583 5763 +2298 4 2 709 26 6007 4261 5328 5828 +2299 4 2 709 26 4209 5991 4465 5312 +2300 4 2 709 26 5975 3931 4537 5352 +2301 4 2 709 26 4099 5715 4894 5323 +2302 4 2 709 26 4260 5934 5519 5809 +2303 4 2 709 26 5856 4161 4907 5729 +2304 4 2 709 26 4188 5913 4613 5652 +2305 4 2 709 26 4648 5981 5194 5694 +2306 4 2 709 26 5786 3893 4707 5203 +2307 4 2 709 26 3961 6040 5854 5919 +2308 4 2 709 26 4040 5970 5246 5869 +2309 4 2 709 26 4209 5991 5312 5353 +2310 4 2 709 26 5639 4134 4647 5544 +2311 4 2 709 26 5810 4185 4887 5683 +2312 4 2 709 26 5779 3867 5227 5344 +2313 4 2 709 26 5869 3885 4705 5136 +2314 4 2 709 26 3943 5933 4283 5810 +2315 4 2 709 26 6065 4223 5056 5306 +2316 4 2 709 26 4227 5743 4615 5721 +2317 4 2 709 26 4257 5977 5466 5622 +2318 4 2 709 26 3923 5915 5138 5784 +2319 4 2 709 26 6013 5539 5831 4082 +2320 4 2 709 26 4298 5779 5227 5344 +2321 4 2 709 26 5915 4158 5538 5688 +2322 4 2 709 26 4648 6014 5572 5981 +2323 4 2 709 26 4180 5680 4610 5422 +2324 4 2 709 26 5927 4629 5555 5773 +2325 4 2 709 26 5943 4182 4885 5325 +2326 4 2 709 26 5741 4024 4566 5737 +2327 4 2 709 26 4120 5387 4698 5191 +2328 4 2 709 26 5988 4466 5192 5234 +2329 4 2 709 26 6028 4043 4656 5199 +2330 4 2 709 26 3900 5893 5194 5694 +2331 4 2 709 26 5906 4622 4031 5930 +2332 4 2 709 26 5779 3867 5344 5653 +2333 4 2 709 26 4031 5930 4622 5411 +2334 4 2 709 26 4172 4622 5540 5906 +2335 4 2 709 26 5942 4120 5146 5387 +2336 4 2 709 26 5968 5366 5269 4030 +2337 4 2 709 26 4141 5924 4716 5201 +2338 4 2 709 26 5403 6017 5154 5855 +2339 4 2 709 26 4286 5847 5628 5790 +2340 4 2 709 26 3893 6048 5334 5557 +2341 4 2 709 26 5905 4725 5984 4075 +2342 4 2 709 26 5896 3893 5198 5334 +2343 4 2 709 26 6006 4645 5366 5680 +2344 4 2 709 26 5836 3977 5583 5763 +2345 4 2 709 26 3869 5649 4988 5640 +2346 4 2 709 26 6047 5715 4099 5258 +2347 4 2 709 26 3923 5784 5138 5363 +2348 4 2 709 26 5456 3922 5261 5272 +2349 4 2 709 26 5639 4647 5176 5544 +2350 4 2 709 26 4155 5583 4279 5836 +2351 4 2 709 26 4442 5922 4685 5483 +2352 4 2 709 26 4066 5688 4308 5538 +2353 4 2 709 26 5927 4097 4907 5555 +2354 4 2 709 26 5713 4024 4859 5154 +2355 4 2 709 26 4182 5930 5115 5411 +2356 4 2 709 26 5866 3903 4594 5624 +2357 4 2 709 26 5442 4130 4486 5046 +2358 4 2 709 26 3943 5810 4283 5683 +2359 4 2 709 26 4272 5930 4730 5755 +2360 4 2 709 26 5563 5796 4662 5962 +2361 4 2 709 26 5855 4323 6017 5274 +2362 4 2 709 26 4092 5798 5320 5679 +2363 4 2 709 26 5982 5913 4545 5690 +2364 4 2 709 26 5927 3941 4629 5773 +2365 4 2 709 26 5974 3989 5381 5856 +2366 4 2 709 26 3941 5974 5773 5927 +2367 4 2 709 26 6026 4098 5096 5545 +2368 4 2 709 26 4267 3922 5849 4876 +2369 4 2 709 26 4209 5991 5353 5860 +2370 4 2 709 26 5623 5489 5048 4165 +2371 4 2 709 26 6019 4492 5553 5717 +2372 4 2 709 26 5795 5928 4352 5924 +2373 4 2 709 26 4149 5689 5306 5315 +2374 4 2 709 26 5761 4480 4711 5268 +2375 4 2 709 26 3936 5948 5039 5777 +2376 4 2 709 26 4633 5854 4745 5752 +2377 4 2 709 26 5967 4213 4861 5761 +2378 4 2 709 26 4257 5977 4994 5118 +2379 4 2 709 26 5975 3931 5352 5367 +2380 4 2 709 26 6047 5228 4903 4099 +2381 4 2 709 26 4664 6057 5041 5846 +2382 4 2 709 26 5924 4141 4716 4979 +2383 4 2 709 26 4024 5741 5019 5737 +2384 4 2 709 26 4092 5850 5009 5522 +2385 4 2 709 26 4648 5893 4217 5694 +2386 4 2 709 26 6008 4178 4477 5598 +2387 4 2 709 26 6059 4450 4812 5619 +2388 4 2 709 26 5968 5269 5366 4770 +2389 4 2 709 26 5929 4161 4346 5773 +2390 4 2 709 26 6013 5831 5539 5113 +2391 4 2 709 26 4108 5880 5326 5746 +2392 4 2 709 26 4707 5786 5203 5356 +2393 4 2 709 26 6028 4043 4696 5568 +2394 4 2 709 26 4475 5945 4902 5891 +2395 4 2 709 26 5928 4716 4979 5924 +2396 4 2 709 26 5563 4098 4662 5418 +2397 4 2 709 26 4509 5935 5028 5668 +2398 4 2 709 26 4150 5658 4946 5407 +2399 4 2 709 26 4320 5962 5428 5796 +2400 4 2 709 26 4024 4734 5154 6017 +2401 4 2 709 26 4031 5906 5287 5540 +2402 4 2 709 26 5205 5975 4223 5592 +2403 4 2 709 26 4134 6018 4647 5544 +2404 4 2 709 26 5548 4196 4974 5487 +2405 4 2 709 26 4120 5660 4850 5158 +2406 4 2 709 26 5828 4261 5191 5387 +2407 4 2 709 26 4662 5962 5796 5428 +2408 4 2 709 26 4118 5909 4709 4962 +2409 4 2 709 26 5901 3919 5419 4192 +2410 4 2 709 26 5869 4705 4761 5136 +2411 4 2 709 26 4024 6017 5403 5741 +2412 4 2 709 26 4050 5551 4652 5235 +2413 4 2 709 26 4572 5846 5041 5480 +2414 4 2 709 26 4181 6053 4573 5389 +2415 4 2 709 26 4099 5323 4894 5228 +2416 4 2 709 26 5924 5254 5795 4727 +2417 4 2 709 26 5835 4288 4580 5542 +2418 4 2 709 26 4094 5681 5396 5498 +2419 4 2 709 26 4043 5568 4656 4758 +2420 4 2 709 26 5796 4079 4662 5599 +2421 4 2 709 26 5801 4092 5009 5679 +2422 4 2 709 26 5966 4016 4853 5876 +2423 4 2 709 26 5903 4339 5085 5833 +2424 4 2 709 26 5720 4410 4757 5370 +2425 4 2 709 26 3873 5538 4308 4803 +2426 4 2 709 26 5675 6033 5720 4114 +2427 4 2 709 26 3994 5757 4729 5478 +2428 4 2 709 26 5809 3873 4803 5538 +2429 4 2 709 26 5979 4279 5583 5763 +2430 4 2 709 26 5915 4308 5138 5784 +2431 4 2 709 26 4288 6021 5637 5785 +2432 4 2 709 26 4127 5700 5588 5620 +2433 4 2 709 26 5866 4159 5396 5339 +2434 4 2 709 26 4189 5956 5348 5867 +2435 4 2 709 26 4545 5913 5084 5690 +2436 4 2 709 26 5777 3936 5376 5636 +2437 4 2 709 26 5991 4209 4465 5211 +2438 4 2 709 26 5828 4261 4791 5191 +2439 4 2 709 26 4073 5949 5287 5316 +2440 4 2 709 26 5866 5396 4542 5498 +2441 4 2 709 26 6026 4098 4662 5096 +2442 4 2 709 26 6012 4269 4461 5712 +2443 4 2 709 26 4378 6019 4492 5580 +2444 4 2 709 26 3903 5866 4482 5624 +2445 4 2 709 26 5598 3901 4477 5126 +2446 4 2 709 26 4134 5639 5148 5544 +2447 4 2 709 26 6024 4421 5507 5877 +2448 4 2 709 26 5896 4000 4279 5198 +2449 4 2 709 26 5774 4086 5176 5544 +2450 4 2 709 26 4198 6024 4543 5507 +2451 4 2 709 26 4134 5523 4986 5491 +2452 4 2 709 26 5563 5796 5418 4662 +2453 4 2 709 26 4160 5786 5203 5589 +2454 4 2 709 26 4137 5943 4529 5325 +2455 4 2 709 26 5679 5522 5320 4092 +2456 4 2 709 26 3989 5974 4907 5856 +2457 4 2 709 26 5984 4463 5036 5707 +2458 4 2 709 26 5027 4137 4327 4529 +2459 4 2 709 26 5654 4228 4579 5630 +2460 4 2 709 26 4134 6018 4986 5523 +2461 4 2 709 26 3936 5636 4467 5376 +2462 4 2 709 26 4220 5877 4421 4624 +2463 4 2 709 26 4474 3921 4898 5280 +2464 4 2 709 26 6013 4877 5113 5539 +2465 4 2 709 26 5267 4284 5074 5767 +2466 4 2 709 26 4568 5935 4509 5668 +2467 4 2 709 26 4776 5625 5235 5479 +2468 4 2 709 26 4376 5964 4943 5490 +2469 4 2 709 26 5927 4417 4907 5281 +2470 4 2 709 26 4629 5805 5004 5692 +2471 4 2 709 26 4166 5938 5231 5701 +2472 4 2 709 26 5939 4216 5550 5705 +2473 4 2 709 26 4266 5920 4627 5879 +2474 4 2 709 26 4698 5828 4791 5191 +2475 4 2 709 26 5796 4662 5428 5599 +2476 4 2 709 26 6017 4024 4566 5741 +2477 4 2 709 26 5768 3921 4474 5449 +2478 4 2 709 26 5890 4071 5266 5372 +2479 4 2 709 26 5839 4075 4725 5390 +2480 4 2 709 26 4423 5531 4508 5378 +2481 4 2 709 26 5865 3907 4547 5355 +2482 4 2 709 26 4161 5773 4907 5555 +2483 4 2 709 26 4504 3959 5371 5474 +2484 4 2 709 26 5966 4228 5630 5876 +2485 4 2 709 26 5901 3919 5133 5410 +2486 4 2 709 26 3893 6053 4707 5198 +2487 4 2 709 26 3921 5938 4474 5449 +2488 4 2 709 26 5435 3922 4876 5307 +2489 4 2 709 26 5956 5858 5867 4189 +2490 4 2 709 26 6065 4223 5315 5592 +2491 4 2 709 26 5930 4272 5216 5755 +2492 4 2 709 26 5898 4115 4666 5432 +2493 4 2 709 26 5781 4892 4301 5313 +2494 4 2 709 26 5901 4165 5210 5623 +2495 4 2 709 26 6026 4662 5483 5599 +2496 4 2 709 26 5850 4092 5009 5801 +2497 4 2 709 26 5896 3893 4707 5198 +2498 4 2 709 26 5498 4482 4777 5382 +2499 4 2 709 26 5890 4071 4572 5383 +2500 4 2 709 26 4417 5927 4521 5281 +2501 4 2 709 26 5565 5438 5268 4480 +2502 4 2 709 26 4189 5867 4801 5858 +2503 4 2 709 26 5939 4216 4512 5550 +2504 4 2 709 26 4098 5563 4662 5096 +2505 4 2 709 26 5743 4410 4757 5720 +2506 4 2 709 26 6000 4250 5135 5990 +2507 4 2 709 26 4327 3972 5665 5677 +2508 4 2 709 26 5788 5474 4504 6016 +2509 4 2 709 26 4417 4366 4907 5281 +2510 4 2 709 26 6045 4428 5566 5962 +2511 4 2 709 26 5849 4267 4744 5261 +2512 4 2 709 26 4166 5963 5363 5784 +2513 4 2 709 26 5965 4017 4887 5937 +2514 4 2 709 26 4352 5924 5254 5795 +2515 4 2 709 26 5913 4188 4613 5040 +2516 4 2 709 26 5611 5987 5618 4506 +2517 4 2 709 26 5749 4046 4642 5308 +2518 4 2 709 26 4255 5914 4962 5200 +2519 4 2 709 26 4111 5693 5341 5504 +2520 4 2 709 26 3900 5694 5194 5223 +2521 4 2 709 26 4710 5725 4951 5399 +2522 4 2 709 26 6053 4584 5389 5716 +2523 4 2 709 26 5675 5720 6033 4630 +2524 4 2 709 26 5929 3941 5974 5773 +2525 4 2 709 26 4181 5730 4573 4771 +2526 4 2 709 26 4092 5798 4892 5320 +2527 4 2 709 26 5877 4198 4816 5507 +2528 4 2 709 26 5660 4120 4850 5191 +2529 4 2 709 26 5465 4168 4593 5084 +2530 4 2 709 26 5947 4040 5246 5392 +2531 4 2 709 26 4188 5082 4613 5040 +2532 4 2 709 26 4137 5325 4529 5027 +2533 4 2 709 26 4542 4057 5498 5455 +2534 4 2 709 26 5624 3903 4594 5452 +2535 4 2 709 26 5729 4161 4907 5555 +2536 4 2 709 26 6044 4220 5898 4666 +2537 4 2 709 26 6041 4348 4871 5595 +2538 4 2 709 26 4146 6017 5274 5855 +2539 4 2 709 26 4223 5205 6065 5056 +2540 4 2 709 26 5982 4545 4673 5690 +2541 4 2 709 26 5784 4166 5138 5363 +2542 4 2 709 26 4180 6006 5366 5680 +2543 4 2 709 26 5084 4168 4593 4895 +2544 4 2 709 26 5658 4186 4946 5407 +2545 4 2 709 26 5880 4186 5304 5326 +2546 4 2 709 26 5040 5982 5604 5947 +2547 4 2 709 26 5774 6060 5176 4875 +2548 4 2 709 26 3903 6034 5086 5624 +2549 4 2 709 26 4415 5974 5381 5856 +2550 4 2 709 26 4062 5896 4279 5334 +2551 4 2 709 26 5934 3987 5331 5776 +2552 4 2 709 26 4542 5254 4057 5455 +2553 4 2 709 26 5540 4031 4533 5287 +2554 4 2 709 26 4167 5681 4607 5423 +2555 4 2 709 26 5984 4075 4725 5839 +2556 4 2 709 26 5614 5801 4636 5850 +2557 4 2 709 26 5928 4048 4716 5924 +2558 4 2 709 26 5681 3871 5396 5498 +2559 4 2 709 26 5334 4279 4676 5198 +2560 4 2 709 26 4417 6004 5220 5902 +2561 4 2 709 26 4052 5690 5242 5296 +2562 4 2 709 26 5611 5987 4506 4045 +2563 4 2 709 26 4140 5587 4798 5419 +2564 4 2 709 26 4076 5806 4804 5259 +2565 4 2 709 26 5963 4166 5363 5938 +2566 4 2 709 26 5867 3973 4687 5348 +2567 4 2 709 26 6053 4081 4573 5389 +2568 4 2 709 26 6065 4238 5315 5689 +2569 4 2 709 26 4257 5977 4408 5466 +2570 4 2 709 26 4185 3943 5683 5810 +2571 4 2 709 26 4142 4065 5187 5337 +2572 4 2 709 26 5788 5474 3959 4504 +2573 4 2 709 26 3922 5868 4489 5609 +2574 4 2 709 26 5324 6054 5528 5912 +2575 4 2 709 26 5855 4323 5403 6017 +2576 4 2 709 26 4101 6014 4648 5981 +2577 4 2 709 26 6045 4213 4861 5563 +2578 4 2 709 26 4141 5924 5201 4727 +2579 4 2 709 26 4736 5933 4973 5810 +2580 4 2 709 26 5556 4486 5046 5442 +2581 4 2 709 26 5554 5944 4521 5493 +2582 4 2 709 26 4545 5982 4673 5604 +2583 4 2 709 26 5611 5987 4045 4380 +2584 4 2 709 26 4097 5927 4629 5555 +2585 4 2 709 26 6040 3961 4676 5919 +2586 4 2 709 26 4165 5901 5410 5623 +2587 4 2 709 26 4335 5934 5331 5776 +2588 4 2 709 26 4666 6044 5114 5898 +2589 4 2 709 26 5747 4011 4620 5409 +2590 4 2 709 26 4278 5902 4862 5826 +2591 4 2 709 26 3867 5653 4913 5344 +2592 4 2 709 26 5938 3921 4474 5280 +2593 4 2 709 26 4261 5828 4791 5328 +2594 4 2 709 26 5205 3994 4729 5056 +2595 4 2 709 26 4057 5498 4607 5382 +2596 4 2 709 26 5866 5396 4159 4542 +2597 4 2 709 26 4278 4605 5601 5944 +2598 4 2 709 26 5299 3910 4844 4873 +2599 4 2 709 26 3922 5703 5272 5456 +2600 4 2 709 26 4519 4854 5169 5654 +2601 4 2 709 26 4220 5898 4666 5432 +2602 4 2 709 26 6053 5786 3893 4707 +2603 4 2 709 26 4122 5978 4655 4985 +2604 4 2 709 26 5901 4176 5410 5623 +2605 4 2 709 26 5136 5970 4080 4761 +2606 4 2 709 26 4165 5901 5133 5410 +2607 4 2 709 26 4119 5512 4711 5268 +2608 4 2 709 26 5658 4150 4946 5270 +2609 4 2 709 26 4317 5911 4470 4874 +2610 4 2 709 26 4043 4758 4656 5199 +2611 4 2 709 26 4299 5719 5268 5438 +2612 4 2 709 26 5227 4141 4716 5201 +2613 4 2 709 26 4066 5538 4308 4842 +2614 4 2 709 26 4529 5325 4877 5027 +2615 4 2 709 26 5896 4279 4000 5170 +2616 4 2 709 26 5911 4874 5892 4470 +2617 4 2 709 26 5899 4090 4672 5692 +2618 4 2 709 26 4234 5754 5496 5575 +2619 4 2 709 26 4047 5863 4836 5180 +2620 4 2 709 26 5817 4180 4610 5019 +2621 4 2 709 26 4568 5935 5668 3891 +2622 4 2 709 26 5728 4224 5449 5768 +2623 4 2 709 26 4477 6008 5126 3954 +2624 4 2 709 26 5947 4859 5392 5870 +2625 4 2 709 26 4395 5700 4501 5620 +2626 4 2 709 26 5854 4232 5142 5752 +2627 4 2 709 26 5930 4182 4622 5411 +2628 4 2 709 26 5766 4164 5456 5607 +2629 4 2 709 26 4360 6062 4815 5508 +2630 4 2 709 26 5898 4220 4624 5823 +2631 4 2 709 26 5856 5252 4455 5729 +2632 4 2 709 26 6057 4451 5041 5480 +2633 4 2 709 26 4450 5693 5341 5542 +2634 4 2 709 26 3993 5163 4967 5072 +2635 4 2 709 26 5930 4031 5115 5411 +2636 4 2 709 26 4903 6008 5842 5895 +2637 4 2 709 26 5972 4240 5060 5722 +2638 4 2 709 26 6044 4220 4666 4926 +2639 4 2 709 26 4118 5909 4962 5406 +2640 4 2 709 26 5944 4278 4521 5220 +2641 4 2 709 26 5942 4120 4835 5146 +2642 4 2 709 26 4170 5793 4681 4856 +2643 4 2 709 26 5205 5975 5592 3931 +2644 4 2 709 26 4301 6027 4836 5522 +2645 4 2 709 26 5846 4078 4664 5532 +2646 4 2 709 26 5792 4138 4514 5128 +2647 4 2 709 26 4161 5974 4907 5773 +2648 4 2 709 26 4185 5937 4887 5683 +2649 4 2 709 26 3948 6019 5738 5986 +2650 4 2 709 26 5702 5825 5450 4210 +2651 4 2 709 26 4208 5270 4859 5154 +2652 4 2 709 26 5974 4417 4907 5927 +2653 4 2 709 26 4802 4366 5101 5782 +2654 4 2 709 26 4189 5816 4420 4691 +2655 4 2 709 26 3994 5757 4353 4729 +2656 4 2 709 26 5819 4019 4227 4904 +2657 4 2 709 26 5993 4506 4827 5611 +2658 4 2 709 26 4065 5649 4641 5187 +2659 4 2 709 26 6017 4323 5403 5741 +2660 4 2 709 26 4261 6007 5387 5828 +2661 4 2 709 26 5832 4038 4732 4864 +2662 4 2 709 26 5382 4057 4338 5267 +2663 4 2 709 26 5669 4209 4465 5312 +2664 4 2 709 26 5791 4405 5505 5678 +2665 4 2 709 26 4086 5774 4674 5544 +2666 4 2 709 26 4220 6029 4666 4926 +2667 4 2 709 26 4656 6028 4935 5568 +2668 4 2 709 26 4170 5805 4715 5650 +2669 4 2 709 26 5956 4687 5348 5867 +2670 4 2 709 26 5194 5981 5223 5694 +2671 4 2 709 26 4178 6008 4477 5842 +2672 4 2 709 26 4081 5651 4573 5481 +2673 4 2 709 26 4099 5715 5088 5258 +2674 4 2 709 26 6047 5228 4894 4362 +2675 4 2 709 26 5982 3915 4673 5604 +2676 4 2 709 26 4139 4203 5187 5640 +2677 4 2 709 26 5839 4702 5390 5536 +2678 4 2 709 26 5600 4182 4435 5411 +2679 4 2 709 26 5984 4075 4463 5707 +2680 4 2 709 26 6044 4041 4655 5543 +2681 4 2 709 26 5704 5886 5098 4976 +2682 4 2 709 26 3973 5867 4687 4868 +2683 4 2 709 26 4024 5737 4628 4705 +2684 4 2 709 26 4166 5701 5138 5363 +2685 4 2 709 26 4725 5839 5390 5536 +2686 4 2 709 26 4071 5890 4572 5372 +2687 4 2 709 26 5943 4137 4529 5338 +2688 4 2 709 26 4203 5649 5187 5640 +2689 4 2 709 26 5617 5805 4967 4170 +2690 4 2 709 26 4430 5770 4733 5426 +2691 4 2 709 26 4540 5569 5369 5384 +2692 4 2 709 26 4335 5934 4803 5331 +2693 4 2 709 26 4227 5745 4955 5090 +2694 4 2 709 26 4017 5937 5119 5716 +2695 4 2 709 26 5146 5191 5387 4120 +2696 4 2 709 26 6013 4082 5831 5859 +2697 4 2 709 26 4227 5721 4615 4904 +2698 4 2 709 26 5205 3994 4353 4729 +2699 4 2 709 26 5962 5563 6045 4861 +2700 4 2 709 26 4340 5674 6062 5509 +2701 4 2 709 26 5964 4376 4525 5490 +2702 4 2 709 26 4421 5877 4816 5507 +2703 4 2 709 26 4428 6045 4861 5962 +2704 4 2 709 26 5617 5805 4170 5650 +2705 4 2 709 26 5786 4160 5203 5356 +2706 4 2 709 26 4308 5784 4552 5596 +2707 4 2 709 26 5817 4180 5019 5403 +2708 4 2 709 26 4063 5935 4893 5028 +2709 4 2 709 26 4345 5524 4943 5490 +2710 4 2 709 26 4429 5973 5210 5901 +2711 4 2 709 26 5982 3915 5604 5947 +2712 4 2 709 26 4584 4017 5937 5683 +2713 4 2 709 26 4225 6028 4656 5199 +2714 4 2 709 26 3914 5722 5033 5115 +2715 4 2 709 26 5903 4507 5085 5236 +2716 4 2 709 26 4480 5565 4711 5268 +2717 4 2 709 26 5027 3972 4264 4877 +2718 4 2 709 26 3897 5574 4415 5381 +2719 4 2 709 26 5763 5884 5836 3977 +2720 4 2 709 26 5886 5821 5098 4976 +2721 4 2 709 26 3948 6019 5580 5738 +2722 4 2 709 26 5681 4167 5078 5423 +2723 4 2 709 26 5918 4076 4964 5806 +2724 4 2 709 26 5061 5381 3989 5856 +2725 4 2 709 26 4423 6003 4508 5531 +2726 4 2 709 26 5755 3914 4952 5216 +2727 4 2 709 26 5890 4071 4582 5266 +2728 4 2 709 26 4472 5975 4537 5352 +2729 4 2 709 26 5557 4062 4373 5334 +2730 4 2 709 26 5061 5381 5856 4215 +2731 4 2 709 26 4309 5742 4576 5229 +2732 4 2 709 26 5885 5839 4702 5390 +2733 4 2 709 26 3954 5842 4477 6008 +2734 4 2 709 26 4000 5979 4279 5198 +2735 4 2 709 26 4267 4489 5799 5609 +2736 4 2 709 26 4320 5796 5428 5599 +2737 4 2 709 26 5774 4086 4875 5176 +2738 4 2 709 26 4235 5830 5229 5709 +2739 4 2 709 26 6060 4244 4869 5556 +2740 4 2 709 26 4075 5984 4463 5839 +2741 4 2 709 26 5344 4533 4913 5316 +2742 4 2 709 26 4059 5540 4622 4746 +2743 4 2 709 26 4041 6044 4655 5076 +2744 4 2 709 26 4141 5254 4979 5924 +2745 4 2 709 26 4126 6031 4686 4984 +2746 4 2 709 26 3889 5850 5045 5251 +2747 4 2 709 26 4613 5913 4153 5652 +2748 4 2 709 26 5836 4279 4485 5763 +2749 4 2 709 26 4416 5942 4745 5854 +2750 4 2 709 26 4017 5716 5119 5389 +2751 4 2 709 26 5524 4376 4943 5490 +2752 4 2 709 26 4887 5953 4399 5810 +2753 4 2 709 26 6017 4323 4756 5274 +2754 4 2 709 26 4235 4576 5229 5830 +2755 4 2 709 26 6053 5786 4707 4081 +2756 4 2 709 26 5994 4585 5456 5607 +2757 4 2 709 26 4816 4421 4220 5877 +2758 4 2 709 26 6033 4251 4940 5971 +2759 4 2 709 26 4357 5822 5113 5472 +2760 4 2 709 26 5973 4360 5508 5674 +2761 4 2 709 26 5965 4887 5644 5937 +2762 4 2 709 26 4080 6036 4802 5420 +2763 4 2 709 26 5993 4506 4562 4827 +2764 4 2 709 26 5945 4475 4902 5843 +2765 4 2 709 26 4158 5915 4643 5688 +2766 4 2 709 26 5530 4209 5312 5353 +2767 4 2 709 26 5930 4272 5287 5906 +2768 4 2 709 26 4228 5654 4954 5630 +2769 4 2 709 26 5565 5438 4480 4089 +2770 4 2 709 26 5974 4161 4907 5856 +2771 4 2 709 26 4107 5807 5058 5439 +2772 4 2 709 26 4859 5713 5154 5270 +2773 4 2 709 26 6016 4011 4620 5747 +2774 4 2 709 26 3910 5027 4264 4877 +2775 4 2 709 26 4114 6033 4940 5217 +2776 4 2 709 26 4161 5974 5773 5929 +2777 4 2 709 26 4052 5465 5084 5359 +2778 4 2 709 26 5565 5438 4299 5268 +2779 4 2 709 26 4434 4141 5297 5391 +2780 4 2 709 26 4073 4716 4979 5949 +2781 4 2 709 26 3903 5624 5086 5452 +2782 4 2 709 26 4137 5492 4327 5338 +2783 4 2 709 26 5027 3910 4264 4873 +2784 4 2 709 26 3867 5344 4913 5316 +2785 4 2 709 26 5826 4183 4379 5342 +2786 4 2 709 26 5923 4242 4810 5747 +2787 4 2 709 26 4080 5970 5061 5252 +2788 4 2 709 26 5669 4465 5130 5312 +2789 4 2 709 26 5295 4317 3919 4192 +2790 4 2 709 26 5805 4006 5650 5692 +2791 4 2 709 26 4185 5810 4887 4399 +2792 4 2 709 26 5403 5154 6017 4024 +2793 4 2 709 26 4105 5669 5130 5312 +2794 4 2 709 26 4158 6068 4643 5915 +2795 4 2 709 26 5267 4057 4607 5382 +2796 4 2 709 26 4013 5594 4476 5161 +2797 4 2 709 26 5479 4050 4694 5235 +2798 4 2 709 26 5623 5489 4165 5210 +2799 4 2 709 26 4500 6064 5166 6058 +2800 4 2 709 26 5897 5834 4124 5386 +2801 4 2 709 26 5816 4189 4420 4801 +2802 4 2 709 26 6006 4030 5251 5269 +2803 4 2 709 26 5682 4260 4411 5274 +2804 4 2 709 26 5467 5435 5307 4697 +2805 4 2 709 26 5987 4506 5537 5618 +2806 4 2 709 26 4836 6027 5045 5522 +2807 4 2 709 26 4030 5251 4335 4674 +2808 4 2 709 26 4622 4031 4746 5540 +2809 4 2 709 26 5391 4716 5227 4141 +2810 4 2 709 26 5569 5847 4540 5369 +2811 4 2 709 26 5821 5859 5831 4554 +2812 4 2 709 26 5640 4139 4641 5187 +2813 4 2 709 26 6015 3892 4635 5440 +2814 4 2 709 26 5954 4077 5485 5903 +2815 4 2 709 26 4180 6006 5269 5366 +2816 4 2 709 26 5774 6060 4244 4869 +2817 4 2 709 26 5653 3867 4858 5296 +2818 4 2 709 26 4242 6016 4620 5747 +2819 4 2 709 26 4227 5721 4904 4955 +2820 4 2 709 26 5659 5949 4073 4342 +2821 4 2 709 26 4040 5970 4455 5246 +2822 4 2 709 26 5677 3953 4385 5665 +2823 4 2 709 26 3944 5987 5537 5708 +2824 4 2 709 26 5901 3919 5410 5419 +2825 4 2 709 26 5924 4048 4716 5201 +2826 4 2 709 26 5019 5403 5713 5817 +2827 4 2 709 26 4246 5903 4507 5085 +2828 4 2 709 26 6019 3948 5416 5986 +2829 4 2 709 26 5952 4380 4980 5324 +2830 4 2 709 26 5987 4289 4682 5618 +2831 4 2 709 26 5635 6067 4809 4281 +2832 4 2 709 26 4180 5741 5019 5403 +2833 4 2 709 26 5866 5396 4094 5339 +2834 4 2 709 26 6068 4158 5331 5915 +2835 4 2 709 26 5867 4189 4801 5348 +2836 4 2 709 26 3929 5565 4480 4712 +2837 4 2 709 26 6004 4123 5220 5902 +2838 4 2 709 26 4352 5795 5254 5767 +2839 4 2 709 26 4366 5782 5188 5281 +2840 4 2 709 26 4226 5789 4938 5641 +2841 4 2 709 26 4220 5877 4624 5823 +2842 4 2 709 26 3867 5316 4716 5227 +2843 4 2 709 26 5136 5970 5869 4460 +2844 4 2 709 26 4585 4139 5123 5640 +2845 4 2 709 26 5870 4208 4859 5392 +2846 4 2 709 26 4352 5928 4979 5924 +2847 4 2 709 26 5565 3929 4480 4711 +2848 4 2 709 26 6064 4500 5209 6058 +2849 4 2 709 26 4378 5351 4492 5717 +2850 4 2 709 26 4115 5898 5114 5126 +2851 4 2 709 26 6062 4100 5509 5674 +2852 4 2 709 26 5632 4085 4579 5471 +2853 4 2 709 26 3946 5742 4532 4790 +2854 4 2 709 26 6019 4280 5738 5986 +2855 4 2 709 26 5411 4182 4435 5115 +2856 4 2 709 26 6005 4742 4856 5853 +2857 4 2 709 26 4339 5954 4508 5746 +2858 4 2 709 26 4031 5930 5287 5906 +2859 4 2 709 26 4662 5563 4861 5096 +2860 4 2 709 26 5973 3871 5210 5674 +2861 4 2 709 26 5970 4215 4460 5061 +2862 4 2 709 26 6056 4343 4505 5753 +2863 4 2 709 26 5991 4801 5353 5860 +2864 4 2 709 26 5940 4181 4771 5730 +2865 4 2 709 26 4366 3989 4907 5729 +2866 4 2 709 26 5977 4257 4408 5118 +2867 4 2 709 26 4130 4486 5380 5442 +2868 4 2 709 26 4761 4040 4705 5869 +2869 4 2 709 26 4833 5777 5376 5636 +2870 4 2 709 26 4204 5739 4993 5401 +2871 4 2 709 26 5389 4017 4879 5119 +2872 4 2 709 26 4120 5191 4698 4850 +2873 4 2 709 26 5982 4545 5040 5604 +2874 4 2 709 26 5615 4188 5040 5082 +2875 4 2 709 26 4366 3989 4802 5101 +2876 4 2 709 26 5205 5975 3931 4537 +2877 4 2 709 26 5845 4428 5005 5512 +2878 4 2 709 26 4071 5480 4572 5041 +2879 4 2 709 26 3906 5666 4243 5255 +2880 4 2 709 26 4053 5985 5072 5186 +2881 4 2 709 26 4021 5972 5060 5722 +2882 4 2 709 26 5970 4215 4455 5246 +2883 4 2 709 26 4024 6017 4566 4734 +2884 4 2 709 26 4090 5899 4672 5711 +2885 4 2 709 26 5809 4158 4546 5538 +2886 4 2 709 26 4463 5984 5239 5839 +2887 4 2 709 26 4496 5743 4757 5720 +2888 4 2 709 26 5011 6019 4378 5580 +2889 4 2 709 26 4542 5498 5396 5455 +2890 4 2 709 26 3961 5942 4835 5146 +2891 4 2 709 26 5936 5411 5115 4031 +2892 4 2 709 26 4926 4655 4122 5978 +2893 4 2 709 26 5504 4111 4658 5341 +2894 4 2 709 26 5898 3901 5114 5126 +2895 4 2 709 26 5119 6040 4676 5919 +2896 4 2 709 26 5908 5167 4505 5753 +2897 4 2 709 26 5896 4000 4772 5170 +2898 4 2 709 26 5609 4001 4267 5261 +2899 4 2 709 26 5639 4086 5176 5384 +2900 4 2 709 26 6054 4363 5025 5347 +2901 4 2 709 26 4118 5908 5354 5753 +2902 4 2 709 26 5768 4474 5397 5449 +2903 4 2 709 26 3977 5979 5583 5763 +2904 4 2 709 26 5968 4308 4770 5596 +2905 4 2 709 26 4054 5580 4378 4492 +2906 4 2 709 26 5835 4288 5542 5637 +2907 4 2 709 26 4160 5362 5203 5356 +2908 4 2 709 26 6051 4198 4826 5727 +2909 4 2 709 26 6024 4198 4834 5877 +2910 4 2 709 26 5784 4308 4552 5688 +2911 4 2 709 26 5954 4339 4508 5015 +2912 4 2 709 26 5677 5095 4327 5760 +2913 4 2 709 26 6051 3999 5196 5768 +2914 4 2 709 26 4144 6006 5251 5269 +2915 4 2 709 26 4181 5940 5149 5730 +2916 4 2 709 26 3997 5956 4987 5189 +2917 4 2 709 26 4041 6044 5076 5114 +2918 4 2 709 26 3994 5946 4353 5757 +2919 4 2 709 26 5428 5458 4320 5599 +2920 4 2 709 26 6044 4122 4655 5076 +2921 4 2 709 26 5580 4054 4378 5011 +2922 4 2 709 26 4388 6039 4865 5976 +2923 4 2 709 26 4040 5947 4859 5392 +2924 4 2 709 26 5020 6062 4100 5509 +2925 4 2 709 26 5345 5453 5580 4583 +2926 4 2 709 26 5963 4166 4552 5784 +2927 4 2 709 26 6018 3963 4647 5544 +2928 4 2 709 26 5659 5949 5287 4073 +2929 4 2 709 26 3972 4385 5665 5677 +2930 4 2 709 26 6044 5898 4220 4624 +2931 4 2 709 26 5498 4057 4482 5382 +2932 4 2 709 26 5496 3919 4798 5410 +2933 4 2 709 26 5716 6053 4181 5389 +2934 4 2 709 26 5737 4024 4628 5019 +2935 4 2 709 26 3989 4366 4802 5252 +2936 4 2 709 26 4430 5442 4869 5046 +2937 4 2 709 26 6042 4227 4496 5743 +2938 4 2 709 26 5841 4208 5154 5270 +2939 4 2 709 26 5720 3953 4630 5675 +2940 4 2 709 26 4926 4122 4655 6044 +2941 4 2 709 26 4339 5903 5085 5236 +2942 4 2 709 26 5681 4094 4777 5498 +2943 4 2 709 26 5788 4242 4620 4810 +2944 4 2 709 26 4167 5423 4607 5083 +2945 4 2 709 26 3867 5653 4858 4913 +2946 4 2 709 26 4159 5866 4594 5339 +2947 4 2 709 26 4138 4436 5401 5792 +2948 4 2 709 26 4187 5852 5070 5574 +2949 4 2 709 26 5908 4118 5062 5406 +2950 4 2 709 26 5741 4180 5019 5422 +2951 4 2 709 26 6016 4242 4620 5788 +2952 4 2 709 26 4204 5748 5515 5685 +2953 4 2 709 26 5716 4181 6053 5198 +2954 4 2 709 26 4573 5481 4879 5389 +2955 4 2 709 26 4134 5639 4660 5148 +2956 4 2 709 26 4422 5801 5009 5679 +2957 4 2 709 26 5609 5044 5261 5272 +2958 4 2 709 26 5697 4197 4450 4580 +2959 4 2 709 26 4156 5891 4475 4902 +2960 4 2 709 26 4320 5962 5147 5428 +2961 4 2 709 26 3914 5722 4240 5033 +2962 4 2 709 26 3873 5968 4770 5269 +2963 4 2 709 26 5722 3914 4240 5060 +2964 4 2 709 26 5264 4091 4644 5192 +2965 4 2 709 26 4093 5379 4824 5209 +2966 4 2 709 26 4039 5984 4725 5839 +2967 4 2 709 26 3931 5592 5205 5775 +2968 4 2 709 26 4846 4061 4284 4762 +2969 4 2 709 26 5702 5825 4210 4969 +2970 4 2 709 26 5788 4068 4620 5513 +2971 4 2 709 26 3989 5856 4907 5729 +2972 4 2 709 26 4188 5913 4895 5084 +2973 4 2 709 26 5948 3936 5499 5777 +2974 4 2 709 26 5860 5816 4420 4801 +2975 4 2 709 26 5913 4188 4895 5652 +2976 4 2 709 26 5781 4892 5320 4301 +2977 4 2 709 26 4294 4423 5531 6003 +2978 4 2 709 26 4326 5604 4545 4673 +2979 4 2 709 26 5345 5453 4583 3890 +2980 4 2 709 26 4176 5623 4578 5410 +2981 4 2 709 26 5768 3999 5196 5728 +2982 4 2 709 26 4323 6017 4566 5741 +2983 4 2 709 26 5011 6019 5580 3948 +2984 4 2 709 26 5867 4269 4687 4868 +2985 4 2 709 26 4529 5943 4885 5325 +2986 4 2 709 26 4355 5899 4090 5711 +2987 4 2 709 26 4079 5599 4614 5483 +2988 4 2 709 26 5467 5435 4876 5307 +2989 4 2 709 26 4245 4062 5557 5896 +2990 4 2 709 26 5599 4079 4662 5483 +2991 4 2 709 26 4041 6044 4666 5543 +2992 4 2 709 26 4050 5217 4940 5107 +2993 4 2 709 26 5970 4460 5246 5869 +2994 4 2 709 26 5738 4009 4492 5580 +2995 4 2 709 26 4452 5863 5180 5292 +2996 4 2 709 26 5548 3869 4974 5244 +2997 4 2 709 26 4078 5846 4664 5041 +2998 4 2 709 26 5819 4098 4491 5545 +2999 4 2 709 26 4210 5824 5504 5619 +3000 4 2 709 26 4114 5887 4940 5370 +3001 4 2 709 26 4118 5908 5062 5354 +3002 4 2 709 26 5692 4090 4672 5004 +3003 4 2 709 26 5496 5410 5133 3919 +3004 4 2 709 26 5956 4269 4687 5867 +3005 4 2 709 26 4034 4646 4670 5502 +3006 4 2 709 26 5806 4076 4964 5259 +3007 4 2 709 26 5673 4680 4799 5300 +3008 4 2 709 26 5326 6003 5746 5880 +3009 4 2 709 26 4416 5942 5146 5387 +3010 4 2 709 26 5480 4071 4572 5372 +3011 4 2 709 26 4372 5907 5212 4135 +3012 4 2 709 26 3928 6027 5045 5422 +3013 4 2 709 26 5897 4312 5834 5386 +3014 4 2 709 26 4081 5481 4573 5389 +3015 4 2 709 26 4232 5854 4633 5752 +3016 4 2 709 26 4215 5856 5043 5381 +3017 4 2 709 26 4098 6026 4491 5545 +3018 4 2 709 26 4086 5639 5176 5544 +3019 4 2 709 26 4863 6046 5342 5826 +3020 4 2 709 26 5865 4150 5035 5273 +3021 4 2 709 26 4130 5938 5363 5701 +3022 4 2 709 26 5949 4021 4716 4979 +3023 4 2 709 26 5704 5886 4976 5373 +3024 4 2 709 26 4020 5529 5054 5355 +3025 4 2 709 26 6004 4123 5073 5220 +3026 4 2 709 26 4097 5927 4907 5281 +3027 4 2 709 26 5725 4018 4710 4517 +3028 4 2 709 26 5942 3961 4416 5146 +3029 4 2 709 26 5336 4790 4532 5686 +3030 4 2 709 26 5492 4137 4327 5095 +3031 4 2 709 26 5942 4416 4745 5387 +3032 4 2 709 26 5936 4730 5115 5722 +3033 4 2 709 26 4216 5939 5005 5705 +3034 4 2 709 26 4511 3948 5580 5738 +3035 4 2 709 26 5428 5458 5147 4320 +3036 4 2 709 26 4114 6033 5217 5675 +3037 4 2 709 26 4788 6068 4091 4643 +3038 4 2 709 26 4242 5747 4620 4810 +3039 4 2 709 26 4822 4137 5338 5492 +3040 4 2 709 26 4340 5674 5508 6062 +3041 4 2 709 26 4232 5919 4633 5854 +3042 4 2 709 26 5548 4179 4536 4814 +3043 4 2 709 26 4335 5614 4674 5251 +3044 4 2 709 26 6041 4089 4517 5413 +3045 4 2 709 26 5620 4127 5193 5588 +3046 4 2 709 26 5911 4317 4470 4997 +3047 4 2 709 26 4082 6013 4692 5859 +3048 4 2 709 26 4120 5660 4835 5146 +3049 4 2 709 26 4545 5359 4052 5084 +3050 4 2 709 26 4616 5842 5066 5425 +3051 4 2 709 26 5982 5913 5040 4545 +3052 4 2 709 26 5896 4245 4707 5557 +3053 4 2 709 26 3994 5851 4884 5290 +3054 4 2 709 26 4872 5996 5180 3920 +3055 4 2 709 26 4086 5384 4875 5176 +3056 4 2 709 26 5784 4166 4552 5596 +3057 4 2 709 26 4251 6033 4940 5370 +3058 4 2 709 26 4062 5896 4772 5170 +3059 4 2 709 26 4198 5877 4816 3979 +3060 4 2 709 26 5325 3910 4877 5027 +3061 4 2 709 26 3877 4439 5883 5447 +3062 4 2 709 26 4198 6051 3979 5727 +3063 4 2 709 26 4326 5817 5019 5713 +3064 4 2 709 26 5524 4027 4749 4997 +3065 4 2 709 26 5462 4519 4854 5169 +3066 4 2 709 26 3915 5947 4859 5604 +3067 4 2 709 26 3942 5569 4540 5430 +3068 4 2 709 26 5623 4165 4578 5410 +3069 4 2 709 26 5817 4180 4770 5054 +3070 4 2 709 26 4240 5972 5153 5722 +3071 4 2 709 26 5331 3923 4244 4618 +3072 4 2 709 26 5966 4228 4954 5630 +3073 4 2 709 26 5986 3948 4511 5738 +3074 4 2 709 26 5866 5396 5498 4094 +3075 4 2 709 26 5771 5206 4301 6027 +3076 4 2 709 26 5798 4092 4892 5327 +3077 4 2 709 26 5991 3973 4465 5093 +3078 4 2 709 26 4303 4474 4642 5749 +3079 4 2 709 26 4021 5949 4716 5134 +3080 4 2 709 26 5011 4054 4378 4966 +3081 4 2 709 26 5046 3923 4244 4889 +3082 4 2 709 26 5856 5929 5974 4161 +3083 4 2 709 26 4180 5422 4610 5019 +3084 4 2 709 26 4071 5890 4582 5383 +3085 4 2 709 26 5675 4114 4934 5217 +3086 4 2 709 26 4064 6002 4597 5221 +3087 4 2 709 26 5994 3916 4585 5607 +3088 4 2 709 26 5935 4063 4893 5489 +3089 4 2 709 26 4289 5987 4682 5708 +3090 4 2 709 26 4217 4101 4648 5694 +3091 4 2 709 26 5991 4374 5312 5353 +3092 4 2 709 26 4289 5987 5537 5618 +3093 4 2 709 26 3869 5548 5241 5244 +3094 4 2 709 26 4108 5833 5300 5378 +3095 4 2 709 26 4079 5796 4635 4920 +3096 4 2 709 26 4050 5479 4776 5235 +3097 4 2 709 26 5814 5656 5162 4760 +3098 4 2 709 26 4308 5968 5138 5596 +3099 4 2 709 26 5796 4079 4635 5418 +3100 4 2 709 26 6025 5983 4557 5282 +3101 4 2 709 26 5638 4136 4712 5413 +3102 4 2 709 26 5841 3909 5238 5658 +3103 4 2 709 26 3993 5759 4375 5163 +3104 4 2 709 26 6025 5983 4623 4084 +3105 4 2 709 26 4137 5943 5325 5600 +3106 4 2 709 26 5896 4062 4279 5170 +3107 4 2 709 26 5713 5403 4268 5817 +3108 4 2 709 26 5849 3922 5261 5456 +3109 4 2 709 26 3972 5027 4529 4877 +3110 4 2 709 26 5716 4181 5119 5389 +3111 4 2 709 26 5939 4512 5005 5400 +3112 4 2 709 26 4176 5901 5210 5623 +3113 4 2 709 26 5837 4042 4698 4791 +3114 4 2 709 26 5009 5850 5045 5522 +3115 4 2 709 26 5962 5563 3964 6045 +3116 4 2 709 26 5814 5656 4236 4914 +3117 4 2 709 26 4128 5702 4503 5415 +3118 4 2 709 26 5741 4403 5019 5737 +3119 4 2 709 26 5806 4076 4804 5414 +3120 4 2 709 26 5563 5796 5962 3964 +3121 4 2 709 26 5097 4151 4821 5064 +3122 4 2 709 26 5456 4131 4763 5261 +3123 4 2 709 26 5766 4164 5272 5456 +3124 4 2 709 26 5955 4248 5030 5900 +3125 4 2 709 26 4360 6062 5508 5674 +3126 4 2 709 26 5498 3871 5396 5455 +3127 4 2 709 26 4176 5794 4798 5410 +3128 4 2 709 26 5107 4126 4686 4984 +3129 4 2 709 26 5710 5794 5587 4176 +3130 4 2 709 26 6003 4423 4508 5746 +3131 4 2 709 26 4197 5697 4812 5696 +3132 4 2 709 26 4268 5817 4770 5054 +3133 4 2 709 26 4734 4146 5154 6017 +3134 4 2 709 26 6039 4047 4872 5976 +3135 4 2 709 26 6018 4134 5349 5523 +3136 4 2 709 26 4457 4074 4832 5474 +3137 4 2 709 26 4223 5315 5117 5306 +3138 4 2 709 26 4144 5614 4335 5251 +3139 4 2 709 26 5822 3972 4529 4877 +3140 4 2 709 26 3955 5570 5105 5429 +3141 4 2 709 26 4053 5293 4481 5013 +3142 4 2 709 26 4238 6065 5627 5689 +3143 4 2 709 26 5575 4234 5410 5496 +3144 4 2 709 26 3922 5868 5307 5435 +3145 4 2 709 26 4176 5587 4429 5419 +3146 4 2 709 26 5643 4003 5358 5566 +3147 4 2 709 26 3989 5729 4366 5252 +3148 4 2 709 26 4086 5776 4875 5430 +3149 4 2 709 26 4245 5896 4707 4772 +3150 4 2 709 26 5572 5981 5194 4648 +3151 4 2 709 26 4417 4907 3989 5974 +3152 4 2 709 26 5659 5949 4342 4730 +3153 4 2 709 26 4134 5639 4647 5349 +3154 4 2 709 26 4227 6042 4496 5745 +3155 4 2 709 26 4288 5835 4580 4012 +3156 4 2 709 26 5524 4027 4376 5490 +3157 4 2 709 26 5908 5167 4760 4505 +3158 4 2 709 26 4056 5344 4533 4913 +3159 4 2 709 26 5968 3873 4803 5269 +3160 4 2 709 26 4164 5766 4993 5607 +3161 4 2 709 26 3893 5557 4707 5203 +3162 4 2 709 26 5994 3916 5661 5802 +3163 4 2 709 26 3912 5913 4895 5652 +3164 4 2 709 26 5556 4244 4869 5046 +3165 4 2 709 26 5774 6060 4869 5176 +3166 4 2 709 26 3871 6030 5210 5674 +3167 4 2 709 26 5511 4107 5058 5439 +3168 4 2 709 26 5849 3974 4267 4876 +3169 4 2 709 26 5901 4165 4360 5210 +3170 4 2 709 26 5015 5750 4077 5236 +3171 4 2 709 26 5399 3944 4189 5348 +3172 4 2 709 26 6016 4242 5474 5642 +3173 4 2 709 26 4215 5574 5121 5381 +3174 4 2 709 26 4046 5749 4644 5308 +3175 4 2 709 26 5886 3957 4976 5373 +3176 4 2 709 26 4211 5675 4934 5217 +3177 4 2 709 26 4417 3989 4907 4366 +3178 4 2 709 26 6033 4114 4940 5370 +3179 4 2 709 26 4115 5898 4666 5114 +3180 4 2 709 26 4267 4489 5609 3922 +3181 4 2 709 26 5649 4203 4988 5640 +3182 4 2 709 26 4352 5928 4867 5473 +3183 4 2 709 26 5713 3915 4859 5604 +3184 4 2 709 26 4278 6046 5601 4605 +3185 4 2 709 26 4176 5901 5410 5419 +3186 4 2 709 26 5956 5858 4269 5867 +3187 4 2 709 26 5722 3914 4730 5115 +3188 4 2 709 26 4329 5777 4833 5636 +3189 4 2 709 26 4155 5334 4279 4676 +3190 4 2 709 26 5788 5474 6016 4242 +3191 4 2 709 26 4150 5865 4867 5273 +3192 4 2 709 26 4081 6053 4573 5951 +3193 4 2 709 26 3994 5290 4884 5056 +3194 4 2 709 26 4010 4498 5140 4838 +3195 4 2 709 26 4179 4568 4509 5668 +3196 4 2 709 26 5508 5295 4815 4360 +3197 4 2 709 26 5804 4055 4508 5015 +3198 4 2 709 26 3916 5994 4585 5802 +3199 4 2 709 26 5779 4937 5344 4298 +3200 4 2 709 26 5774 6060 4875 4244 +3201 4 2 709 26 4299 5868 4489 5435 +3202 4 2 709 26 4250 6000 4985 5990 +3203 4 2 709 26 5582 4175 4406 5218 +3204 4 2 709 26 4215 5989 5121 5574 +3205 4 2 709 26 3919 5901 5295 4192 +3206 4 2 709 26 5949 4716 5134 5316 +3207 4 2 709 26 5775 3931 4353 5205 +3208 4 2 709 26 4031 5316 4533 5287 +3209 4 2 709 26 4130 4296 5363 5938 +3210 4 2 709 26 6027 3928 5045 5522 +3211 4 2 709 26 5967 4213 4819 4910 +3212 4 2 709 26 4449 5667 5173 5511 +3213 4 2 709 26 5994 4243 4763 5012 +3214 4 2 709 26 4168 5293 4514 5240 +3215 4 2 709 26 5660 4120 4835 5158 +3216 4 2 709 26 4042 5837 4698 4784 +3217 4 2 709 26 5886 5821 4519 5098 +3218 4 2 709 26 5614 4086 4636 5430 +3219 4 2 709 26 4446 5905 5036 5707 +3220 4 2 709 26 4234 3878 5882 5794 +3221 4 2 709 26 5502 4034 4683 5069 +3222 4 2 709 26 4275 4197 4812 5696 +3223 4 2 709 26 3896 5824 4488 5504 +3224 4 2 709 26 6006 4030 4645 5251 +3225 4 2 709 26 5792 4138 5128 5401 +3226 4 2 709 26 3973 5991 4465 5211 +3227 4 2 709 26 5741 4024 5019 5403 +3228 4 2 709 26 4308 4803 5138 5968 +3229 4 2 709 26 6047 5715 4392 4894 +3230 4 2 709 26 4073 4716 5949 5316 +3231 4 2 709 26 5947 4628 4859 5604 +3232 4 2 709 26 4213 5967 4861 5096 +3233 4 2 709 26 5906 4272 4632 5497 +3234 4 2 709 26 4436 5779 5344 5653 +3235 4 2 709 26 3929 6045 4213 4711 +3236 4 2 709 26 5456 4164 5994 5607 +3237 4 2 709 26 5702 4393 4503 5415 +3238 4 2 709 26 5789 4226 4938 5179 +3239 4 2 709 26 4183 5826 4379 3941 +3240 4 2 709 26 6044 4122 5076 4624 +3241 4 2 709 26 5417 5725 4824 4018 +3242 4 2 709 26 6016 5513 4620 4011 +3243 4 2 709 26 4182 5943 4885 5578 +3244 4 2 709 26 4038 6022 4864 5832 +3245 4 2 709 26 5818 3910 4877 5325 +3246 4 2 709 26 4010 5140 4498 5783 +3247 4 2 709 26 5572 5194 5981 4037 +3248 4 2 709 26 4140 5419 4798 4961 +3249 4 2 709 26 5937 4185 4887 5644 +3250 4 2 709 26 5685 4204 4759 5515 +3251 4 2 709 26 4155 4279 5583 4676 +3252 4 2 709 26 3915 5713 4859 5270 +3253 4 2 709 26 3901 5898 4477 5126 +3254 4 2 709 26 5600 4137 4844 5325 +3255 4 2 709 26 4081 6053 4584 5389 +3256 4 2 709 26 5499 5671 4369 5777 +3257 4 2 709 26 4182 5943 4619 5600 +3258 4 2 709 26 5807 4107 4254 5439 +3259 4 2 709 26 5713 5403 4024 5154 +3260 4 2 709 26 4410 6033 5370 5720 +3261 4 2 709 26 4191 5822 5472 5665 +3262 4 2 709 26 5543 4041 4655 5029 +3263 4 2 709 26 4052 5690 4545 5084 +3264 4 2 709 26 5467 4177 4851 5307 +3265 4 2 709 26 4378 5351 4054 4492 +3266 4 2 709 26 4189 5956 4478 5399 +3267 4 2 709 26 4380 5912 4980 5324 +3268 4 2 709 26 3914 5930 5216 5755 +3269 4 2 709 26 4079 5796 4320 5599 +3270 4 2 709 26 4075 5390 4310 4725 +3271 4 2 709 26 5789 4226 4943 5641 +3272 4 2 709 26 5537 3944 4691 5399 +3273 4 2 709 26 5988 5995 4466 5234 +3274 4 2 709 26 6064 4500 5166 5931 +3275 4 2 709 26 3961 5942 4416 5854 +3276 4 2 709 26 4308 5138 4803 5915 +3277 4 2 709 26 5664 5187 4142 4641 +3278 4 2 709 26 4188 5985 4895 5652 +3279 4 2 709 26 5146 5387 5191 4261 +3280 4 2 709 26 3934 5767 4352 5254 +3281 4 2 709 26 5371 3884 4504 5222 +3282 4 2 709 26 5790 4286 4841 5628 +3283 4 2 709 26 4018 5725 4710 5399 +3284 4 2 709 26 4349 3868 4358 4194 +3285 4 2 709 26 4326 5817 4610 5019 +3286 4 2 709 26 4727 4057 5254 5795 +3287 4 2 709 26 4452 5863 5491 5500 +3288 4 2 709 26 3906 5031 4857 5666 +3289 4 2 709 26 5660 3898 5146 5191 +3290 4 2 709 26 3936 5777 5376 5499 +3291 4 2 709 26 4057 5267 5074 5767 +3292 4 2 709 26 6041 4089 4348 5595 +3293 4 2 709 26 5856 5929 4415 5974 +3294 4 2 709 26 4532 5686 4790 4964 +3295 4 2 709 26 4611 5965 4887 5953 +3296 4 2 709 26 4210 6059 5341 5825 +3297 4 2 709 26 5609 4216 5044 5272 +3298 4 2 709 26 5544 4134 4986 5148 +3299 4 2 709 26 3921 5768 4303 5196 +3300 4 2 709 26 5306 3911 4884 5056 +3301 4 2 709 26 4859 4024 4628 4705 +3302 4 2 709 26 5301 5911 4749 4317 +3303 4 2 709 26 6040 4232 4493 5854 +3304 4 2 709 26 4585 5640 5123 5241 +3305 4 2 709 26 4272 5906 4632 5287 +3306 4 2 709 26 4226 5964 4943 5641 +3307 4 2 709 26 5746 4423 4508 5378 +3308 4 2 709 26 5924 4141 5254 4727 +3309 4 2 709 26 5930 4182 5115 5216 +3310 4 2 709 26 6006 4030 5269 5366 +3311 4 2 709 26 4040 5615 5040 5082 +3312 4 2 709 26 5290 5205 5975 4223 +3313 4 2 709 26 3914 5930 5115 5216 +3314 4 2 709 26 4980 6054 5324 5912 +3315 4 2 709 26 3919 5419 4798 5410 +3316 4 2 709 26 5276 5513 4620 4068 +3317 4 2 709 26 4209 5669 4650 5530 +3318 4 2 709 26 6022 4038 4779 5832 +3319 4 2 709 26 5763 3977 4266 4872 +3320 4 2 709 26 3874 5943 4529 5338 +3321 4 2 709 26 4021 5582 4342 5060 +3322 4 2 709 26 4075 5839 4575 5390 +3323 4 2 709 26 3987 5934 5331 5519 +3324 4 2 709 26 4342 5755 5060 5424 +3325 4 2 709 26 3985 5905 4446 4574 +3326 4 2 709 26 3887 5686 4532 4964 +3327 4 2 709 26 4118 5223 4709 4905 +3328 4 2 709 26 4440 5541 5812 4070 +3329 4 2 709 26 5755 4272 4631 5659 +3330 4 2 709 26 5574 3897 4415 5070 +3331 4 2 709 26 5523 4060 4986 5491 +3332 4 2 709 26 5784 4308 5138 5596 +3333 4 2 709 26 5839 4039 4702 5536 +3334 4 2 709 26 4159 5889 4542 5297 +3335 4 2 709 26 5836 3977 4432 5583 +3336 4 2 709 26 4339 5746 4508 5378 +3337 4 2 709 26 4213 5761 4480 4711 +3338 4 2 709 26 5700 4127 4501 5620 +3339 4 2 709 26 3999 6051 4982 5768 +3340 4 2 709 26 5849 4177 4988 5244 +3341 4 2 709 26 4485 4155 4279 5836 +3342 4 2 709 26 5689 4149 5277 5315 +3343 4 2 709 26 4317 5911 4749 4997 +3344 4 2 709 26 4082 5831 4471 5539 +3345 4 2 709 26 3997 5956 4951 4987 +3346 4 2 709 26 5575 4372 5133 5410 +3347 4 2 709 26 5917 4113 4929 5199 +3348 4 2 709 26 4413 5980 5215 4258 +3349 4 2 709 26 4272 5755 4730 5659 +3350 4 2 709 26 5861 4217 4981 5778 +3351 4 2 709 26 4141 5227 4434 5201 +3352 4 2 709 26 3972 6013 4264 4877 +3353 4 2 709 26 5572 4037 4669 5194 +3354 4 2 709 26 4474 4130 5449 5938 +3355 4 2 709 26 3867 5316 5227 5344 +3356 4 2 709 26 4082 5859 4692 4941 +3357 4 2 709 26 4312 6009 5000 5282 +3358 4 2 709 26 5943 4182 5325 5600 +3359 4 2 709 26 6054 4363 5528 5912 +3360 4 2 709 26 5949 4021 4342 4730 +3361 4 2 709 26 6002 3868 4597 5221 +3362 4 2 709 26 5382 5485 4247 4777 +3363 4 2 709 26 4982 4303 5397 5768 +3364 4 2 709 26 4027 4997 5133 5295 +3365 4 2 709 26 5436 4174 4610 5359 +3366 4 2 709 26 4278 5902 4521 5220 +3367 4 2 709 26 3907 5972 5099 5473 +3368 4 2 709 26 5537 4018 4506 4710 +3369 4 2 709 26 5019 5713 5403 4024 +3370 4 2 709 26 3929 5565 4712 5097 +3371 4 2 709 26 5675 4211 4630 5217 +3372 4 2 709 26 5536 3962 4702 5390 +3373 4 2 709 26 5587 4176 4798 5419 +3374 4 2 709 26 6043 5113 5539 5831 +3375 4 2 709 26 4006 5554 4605 4863 +3376 4 2 709 26 5759 3993 5072 5163 +3377 4 2 709 26 4339 4508 5015 5804 +3378 4 2 709 26 6053 5786 4081 4584 +3379 4 2 709 26 4233 6064 4871 6041 +3380 4 2 709 26 5551 4050 4776 5235 +3381 4 2 709 26 5986 5765 4678 4280 +3382 4 2 709 26 5890 4572 5372 5427 +3383 4 2 709 26 5605 4037 4709 4962 +3384 4 2 709 26 4210 6059 5450 5619 +3385 4 2 709 26 4031 5540 4533 4746 +3386 4 2 709 26 3867 5779 5296 5653 +3387 4 2 709 26 5913 4188 4545 5084 +3388 4 2 709 26 4393 5702 4503 4909 +3389 4 2 709 26 4170 5793 4856 5042 +3390 4 2 709 26 3893 4939 4584 5716 +3391 4 2 709 26 5755 4342 4730 5659 +3392 4 2 709 26 5703 5272 5868 3922 +3393 4 2 709 26 4409 5430 4540 4875 +3394 4 2 709 26 4171 4472 5652 5985 +3395 4 2 709 26 4204 5685 4759 5401 +3396 4 2 709 26 5794 4176 4798 5587 +3397 4 2 709 26 5991 4209 5211 5860 +3398 4 2 709 26 5352 3931 4537 4751 +3399 4 2 709 26 5862 4232 5142 5149 +3400 4 2 709 26 5656 4236 4914 5003 +3401 4 2 709 26 3900 5893 4255 5194 +3402 4 2 709 26 5805 4672 5004 5692 +3403 4 2 709 26 5327 5850 4636 4092 +3404 4 2 709 26 5798 4092 4534 5679 +3405 4 2 709 26 4354 4197 4580 5723 +3406 4 2 709 26 6035 5568 5057 4043 +3407 4 2 709 26 5272 5766 5456 5703 +3408 4 2 709 26 4235 3946 5800 4790 +3409 4 2 709 26 4039 5839 4725 5536 +3410 4 2 709 26 3912 5516 4593 5242 +3411 4 2 709 26 5530 4105 4668 5312 +3412 4 2 709 26 4283 5933 4736 5810 +3413 4 2 709 26 3903 4542 5866 5889 +3414 4 2 709 26 4580 5835 5535 4012 +3415 4 2 709 26 4584 4017 5389 5716 +3416 4 2 709 26 3885 5869 4705 5392 +3417 4 2 709 26 4042 5191 4698 4791 +3418 4 2 709 26 5686 4078 5041 5383 +3419 4 2 709 26 4090 5872 4355 5364 +3420 4 2 709 26 3937 5600 4435 5411 +3421 4 2 709 26 3903 5889 4594 5452 +3422 4 2 709 26 4186 5658 5226 5407 +3423 4 2 709 26 5690 4274 5242 5296 +3424 4 2 709 26 5138 3923 5331 5915 +3425 4 2 709 26 5899 4239 5650 5853 +3426 4 2 709 26 6064 5888 6058 5209 +3427 4 2 709 26 4586 5806 4964 5259 +3428 4 2 709 26 5076 4122 4655 4985 +3429 4 2 709 26 4363 6054 4980 5912 +3430 4 2 709 26 5964 4376 4943 5641 +3431 4 2 709 26 4504 3959 5788 4577 +3432 4 2 709 26 4217 5893 4896 5694 +3433 4 2 709 26 4758 4043 4650 5199 +3434 4 2 709 26 3923 5331 4244 4889 +3435 4 2 709 26 4052 5465 4593 5084 +3436 4 2 709 26 5658 4150 5375 5407 +3437 4 2 709 26 5611 4045 4506 4827 +3438 4 2 709 26 5619 4197 4450 4812 +3439 4 2 709 26 4218 6056 5753 4343 +3440 4 2 709 26 4167 5681 4649 4777 +3441 4 2 709 26 4202 5503 5159 5279 +3442 4 2 709 26 5976 4452 4872 5884 +3443 4 2 709 26 5868 4489 5609 5705 +3444 4 2 709 26 4234 3878 5724 5882 +3445 4 2 709 26 5574 3897 5121 5381 +3446 4 2 709 26 5863 4530 5491 5500 +3447 4 2 709 26 4363 5912 4571 5528 +3448 4 2 709 26 4607 5498 4777 5382 +3449 4 2 709 26 6059 4812 5450 5619 +3450 4 2 709 26 5482 4019 4713 5444 +3451 4 2 709 26 4046 4474 5749 4642 +3452 4 2 709 26 5410 4165 4372 5133 +3453 4 2 709 26 5804 4055 5015 5377 +3454 4 2 709 26 5807 4041 5076 5114 +3455 4 2 709 26 3963 6018 4986 5544 +3456 4 2 709 26 5826 4183 4863 5554 +3457 4 2 709 26 5202 5960 4358 4194 +3458 4 2 709 26 5848 4564 4970 4221 +3459 4 2 709 26 5825 4210 4658 5341 +3460 4 2 709 26 5942 4493 4745 5854 +3461 4 2 709 26 4278 6046 4863 5826 +3462 4 2 709 26 4047 6039 5500 5976 +3463 4 2 709 26 5889 4141 4434 5201 +3464 4 2 709 26 4615 5819 4904 5545 +3465 4 2 709 26 4738 5966 5630 5876 +3466 4 2 709 26 5994 3916 5607 5739 +3467 4 2 709 26 5574 4215 5043 5381 +3468 4 2 709 26 3901 5807 5076 5114 +3469 4 2 709 26 4378 6019 4671 5717 +3470 4 2 709 26 4208 5841 5238 5658 +3471 4 2 709 26 3944 5399 4189 4691 +3472 4 2 709 26 4873 3910 4844 5027 +3473 4 2 709 26 5903 4077 4507 5236 +3474 4 2 709 26 6025 5983 4084 4557 +3475 4 2 709 26 5323 4099 4559 5228 +3476 4 2 709 26 3900 5354 5062 4427 +3477 4 2 709 26 4898 4046 4474 5280 +3478 4 2 709 26 4341 4188 5082 4613 +3479 4 2 709 26 5693 4111 4818 5504 +3480 4 2 709 26 4179 5548 4974 5487 +3481 4 2 709 26 5856 5252 5729 3989 +3482 4 2 709 26 4760 5814 4505 5162 +3483 4 2 709 26 4452 5863 5292 5491 +3484 4 2 709 26 5822 3972 5472 5665 +3485 4 2 709 26 4141 5391 4882 5297 +3486 4 2 709 26 4034 5518 4689 4942 +3487 4 2 709 26 4228 5966 4954 5581 +3488 4 2 709 26 5467 5435 4045 4876 +3489 4 2 709 26 4759 5792 5128 5401 +3490 4 2 709 26 4170 5650 4856 5617 +3491 4 2 709 26 4150 5865 4842 5002 +3492 4 2 709 26 5868 3922 5307 5703 +3493 4 2 709 26 5565 3929 4963 5097 +3494 4 2 709 26 5796 4635 4920 3964 +3495 4 2 709 26 5713 4024 4628 4859 +3496 4 2 709 26 4137 5338 4327 4529 +3497 4 2 709 26 5932 4512 5038 5451 +3498 4 2 709 26 5474 4074 5108 5371 +3499 4 2 709 26 5987 4289 5537 5708 +3500 4 2 709 26 4278 5826 4863 5554 +3501 4 2 709 26 4259 6004 5073 5969 +3502 4 2 709 26 4040 5947 4628 4859 +3503 4 2 709 26 3910 5325 4844 5027 +3504 4 2 709 26 5915 4158 4803 5538 +3505 4 2 709 26 4299 5435 4489 4626 +3506 4 2 709 26 5772 5493 4715 4521 +3507 4 2 709 26 5751 4361 4493 4835 +3508 4 2 709 26 4213 5967 4819 5761 +3509 4 2 709 26 6014 4752 5572 5981 +3510 4 2 709 26 4211 5894 4934 5675 +3511 4 2 709 26 3919 4470 4961 4317 +3512 4 2 709 26 4031 5930 4730 5287 +3513 4 2 709 26 5918 4076 4800 4964 +3514 4 2 709 26 5394 4078 4762 5383 +3515 4 2 709 26 5824 3971 4488 5619 +3516 4 2 709 26 5709 4235 4322 5229 +3517 4 2 709 26 4131 5849 5261 5456 +3518 4 2 709 26 4495 5959 4945 4125 +3519 4 2 709 26 5949 4021 4730 5134 +3520 4 2 709 26 6064 5888 5166 6058 +3521 4 2 709 26 4197 4354 4580 5697 +3522 4 2 709 26 6003 4423 5746 5880 +3523 4 2 709 26 5959 4125 4495 4928 +3524 4 2 709 26 4359 5874 4833 5636 +3525 4 2 709 26 4171 3912 4895 5652 +3526 4 2 709 26 4166 5784 5138 5596 +3527 4 2 709 26 4301 5781 5000 5320 +3528 4 2 709 26 3951 4586 5259 5806 +3529 4 2 709 26 4016 5966 4587 5404 +3530 4 2 709 26 5889 4159 4542 5866 +3531 4 2 709 26 4189 5858 4801 5816 +3532 4 2 709 26 5430 4409 4540 3942 +3533 4 2 709 26 5750 4077 5236 4553 +3534 4 2 709 26 5836 4155 4194 4485 +3535 4 2 709 26 5988 5995 5234 4012 +3536 4 2 709 26 4400 5984 5036 5905 +3537 4 2 709 26 5290 5056 5306 4884 +3538 4 2 709 26 6033 4630 5217 5675 +3539 4 2 709 26 3897 5381 4259 4639 +3540 4 2 709 26 5949 4730 5287 5316 +3541 4 2 709 26 4303 4474 5397 5768 +3542 4 2 709 26 6018 4134 4647 5349 +3543 4 2 709 26 4067 4509 5028 5668 +3544 4 2 709 26 5849 4131 4988 5456 +3545 4 2 709 26 5897 5834 4007 4124 +3546 4 2 709 26 6008 3954 5842 5895 +3547 4 2 709 26 5819 4491 4904 5545 +3548 4 2 709 26 4183 5826 4863 5342 +3549 4 2 709 26 6039 4388 5500 5976 +3550 4 2 709 26 5787 3908 4868 5212 +3551 4 2 709 26 5794 4176 4578 5410 +3552 4 2 709 26 4117 6051 3999 5196 +3553 4 2 709 26 4223 6065 5205 5592 +3554 4 2 709 26 5837 4042 4791 4795 +3555 4 2 709 26 5554 5944 5493 4605 +3556 4 2 709 26 3953 4191 4630 5665 +3557 4 2 709 26 5340 5981 4037 4752 +3558 4 2 709 26 5617 5899 5650 5853 +3559 4 2 709 26 4141 4434 5227 5391 +3560 4 2 709 26 5316 4298 5227 5344 +3561 4 2 709 26 3898 5191 4261 5146 +3562 4 2 709 26 5554 5944 4605 4278 +3563 4 2 709 26 4078 5846 4996 5532 +3564 4 2 709 26 4334 4136 4947 5638 +3565 4 2 709 26 6006 5045 5422 3928 +3566 4 2 709 26 5262 4023 5742 4309 +3567 4 2 709 26 3974 5849 4267 4744 +3568 4 2 709 26 5988 4012 4788 5655 +3569 4 2 709 26 5954 4077 5165 5485 +3570 4 2 709 26 5947 5040 4628 5604 +3571 4 2 709 26 4393 4210 5702 5450 +3572 4 2 709 26 6015 5418 4635 3892 +3573 4 2 709 26 4186 5407 5226 5304 +3574 4 2 709 26 4062 4245 4772 5896 +3575 4 2 709 26 4743 5919 4232 5119 +3576 4 2 709 26 5794 4234 4798 5410 +3577 4 2 709 26 4247 5954 4108 5746 +3578 4 2 709 26 5222 6016 4504 5474 +3579 4 2 709 26 4030 6006 4645 5366 +3580 4 2 709 26 4235 3946 4790 5742 +3581 4 2 709 26 4322 5918 4995 4800 +3582 4 2 709 26 4094 5681 4365 5396 +3583 4 2 709 26 3972 6013 4877 5113 +3584 4 2 709 26 5680 4180 5054 5366 +3585 4 2 709 26 5937 4083 5119 5716 +3586 4 2 709 26 5981 4037 4752 5572 +3587 4 2 709 26 5436 5465 4168 5250 +3588 4 2 709 26 5484 3872 4613 5082 +3589 4 2 709 26 3919 5295 5901 5133 +3590 4 2 709 26 4296 3923 4486 5363 +3591 4 2 709 26 5496 5133 5410 5575 +3592 4 2 709 26 4197 5697 4450 4812 +3593 4 2 709 26 5599 4320 4614 5458 +3594 4 2 709 26 6018 4789 4986 5523 +3595 4 2 709 26 5290 5205 4223 5056 +3596 4 2 709 26 5934 4335 5010 5776 +3597 4 2 709 26 5779 4436 5242 5653 +3598 4 2 709 26 5975 4472 4537 5290 +3599 4 2 709 26 4607 4777 5681 4167 +3600 4 2 709 26 5912 4225 4571 5528 +3601 4 2 709 26 5640 3869 5123 5241 +3602 4 2 709 26 4586 5918 4964 5806 +3603 4 2 709 26 5695 4621 5299 5573 +3604 4 2 709 26 4030 5968 4803 5269 +3605 4 2 709 26 5814 5656 4914 5162 +3606 4 2 709 26 5315 4149 5117 5306 +3607 4 2 709 26 5895 4099 4903 5228 +3608 4 2 709 26 4139 4641 5123 5640 +3609 4 2 709 26 5947 4628 5040 4040 +3610 4 2 709 26 3868 4358 4194 5202 +3611 4 2 709 26 4360 5973 4192 5901 +3612 4 2 709 26 3994 5478 4729 5056 +3613 4 2 709 26 6040 4181 5119 4676 +3614 4 2 709 26 5981 4037 5194 5223 +3615 4 2 709 26 5816 4420 4691 5526 +3616 4 2 709 26 5930 4031 4730 5115 +3617 4 2 709 26 3978 6032 4453 5178 +3618 4 2 709 26 6044 5076 5114 5898 +3619 4 2 709 26 5436 5465 4174 5359 +3620 4 2 709 26 5882 3878 5248 5794 +3621 4 2 709 26 4041 5597 4655 5029 +3622 4 2 709 26 5363 3923 4486 5046 +3623 4 2 709 26 4223 4526 5975 5117 +3624 4 2 709 26 4245 5356 4707 5203 +3625 4 2 709 26 4244 5776 4875 5774 +3626 4 2 709 26 4078 5686 4762 5383 +3627 4 2 709 26 4126 6031 5577 4500 +3628 4 2 709 26 4622 4746 4031 5411 +3629 4 2 709 26 5290 5205 5056 3994 +3630 4 2 709 26 6047 5715 5258 4392 +3631 4 2 709 26 4279 5979 5583 4676 +3632 4 2 709 26 5986 5765 4381 4678 +3633 4 2 709 26 6025 4312 4623 5282 +3634 4 2 709 26 5882 4142 4632 5337 +3635 4 2 709 26 6002 4064 4597 5527 +3636 4 2 709 26 4130 4486 5046 5363 +3637 4 2 709 26 5095 4137 4327 5027 +3638 4 2 709 26 3871 5681 4607 5498 +3639 4 2 709 26 5897 5834 4312 4522 +3640 4 2 709 26 4757 5743 5164 5721 +3641 4 2 709 26 4666 6044 4926 5543 +3642 4 2 709 26 5763 5996 5884 4872 +3643 4 2 709 26 3987 5934 5010 5776 +3644 4 2 709 26 4701 6064 4871 5931 +3645 4 2 709 26 4440 5541 4070 5127 +3646 4 2 709 26 4351 3986 4413 5215 +3647 4 2 709 26 5611 5987 4380 5618 +3648 4 2 709 26 5893 4217 4755 4981 +3649 4 2 709 26 5245 5291 4646 4034 +3650 4 2 709 26 5766 4164 4993 5748 +3651 4 2 709 26 5909 4709 4962 5605 +3652 4 2 709 26 5965 4017 4611 4887 +3653 4 2 709 26 3995 5760 5095 5733 +3654 4 2 709 26 5413 4136 4712 5097 +3655 4 2 709 26 6053 3893 4584 5716 +3656 4 2 709 26 3951 5511 5058 5439 +3657 4 2 709 26 5181 4115 5114 5126 +3658 4 2 709 26 4697 5565 4963 5097 +3659 4 2 709 26 5779 4032 4298 5227 +3660 4 2 709 26 4232 6040 4493 5149 +3661 4 2 709 26 5827 4211 4652 5098 +3662 4 2 709 26 5689 4149 4594 5277 +3663 4 2 709 26 4215 5856 4455 5043 +3664 4 2 709 26 4182 5319 5115 5216 +3665 4 2 709 26 4542 5254 4727 4057 +3666 4 2 709 26 4169 6042 5017 5677 +3667 4 2 709 26 4034 5502 4670 4689 +3668 4 2 709 26 5461 4698 4784 4850 +3669 4 2 709 26 4098 5545 4910 5096 +3670 4 2 709 26 4303 6051 5196 5768 +3671 4 2 709 26 4606 4011 5747 5409 +3672 4 2 709 26 3965 6025 4623 5744 +3673 4 2 709 26 5831 4976 3957 5113 +3674 4 2 709 26 4466 4046 5308 5425 +3675 4 2 709 26 6004 4123 4259 5073 +3676 4 2 709 26 5981 4101 4675 5694 +3677 4 2 709 26 5863 4047 4452 5180 +3678 4 2 709 26 4024 5713 4628 5019 +3679 4 2 709 26 5061 5381 4639 3989 +3680 4 2 709 26 5686 4078 4664 5041 +3681 4 2 709 26 4100 6062 4360 5674 +3682 4 2 709 26 4141 4542 5889 5297 +3683 4 2 709 26 5846 4078 4572 5041 +3684 4 2 709 26 4289 5844 5526 5629 +3685 4 2 709 26 5818 4231 4885 5089 +3686 4 2 709 26 5319 3914 5115 5216 +3687 4 2 709 26 4063 5935 5048 5489 +3688 4 2 709 26 5841 4208 5270 5658 +3689 4 2 709 26 5887 4251 4940 5370 +3690 4 2 709 26 5383 4071 4572 5041 +3691 4 2 709 26 5902 4417 4521 5220 +3692 4 2 709 26 6030 4311 5210 5489 +3693 4 2 709 26 4885 5319 5325 4182 +3694 4 2 709 26 4230 5871 5077 5594 +3695 4 2 709 26 6057 4664 5041 5322 +3696 4 2 709 26 5716 4181 5198 4676 +3697 4 2 709 26 4122 5260 4624 3940 +3698 4 2 709 26 5889 3903 4594 5866 +3699 4 2 709 26 5927 4097 4629 4715 +3700 4 2 709 26 4165 5901 4360 5133 +3701 4 2 709 26 4671 5553 5717 6019 +3702 4 2 709 26 5972 4021 5153 5722 +3703 4 2 709 26 5893 3900 4896 5694 +3704 4 2 709 26 5492 4327 5338 4191 +3705 4 2 709 26 4668 5530 5312 5353 +3706 4 2 709 26 6044 4655 4926 5543 +3707 4 2 709 26 4352 5924 4979 5254 +3708 4 2 709 26 5019 5604 5713 4628 +3709 4 2 709 26 4649 4167 4777 5485 +3710 4 2 709 26 3929 6045 4711 4418 +3711 4 2 709 26 4196 5548 4974 5244 +3712 4 2 709 26 3928 5009 5045 5522 +3713 4 2 709 26 4175 4035 4406 5218 +3714 4 2 709 26 6044 4041 4666 5114 +3715 4 2 709 26 5659 4272 4632 5287 +3716 4 2 709 26 4069 5306 4884 5290 +3717 4 2 709 26 5979 4279 5198 4676 +3718 4 2 709 26 4021 5722 5134 5153 +3719 4 2 709 26 4100 6030 4365 5674 +3720 4 2 709 26 3907 5865 4867 5002 +3721 4 2 709 26 5659 5949 4730 5287 +3722 4 2 709 26 4151 5097 4963 5064 +3723 4 2 709 26 4141 5889 4434 5297 +3724 4 2 709 26 4733 5770 5230 5426 +3725 4 2 709 26 5776 4244 4889 5774 +3726 4 2 709 26 5946 4537 5004 5290 +3727 4 2 709 26 5936 5411 4031 4740 +3728 4 2 709 26 5822 3972 4877 5113 +3729 4 2 709 26 5316 3867 4716 5134 +3730 4 2 709 26 5755 3914 4730 5060 +3731 4 2 709 26 4000 5469 4772 5170 +3732 4 2 709 26 5984 4039 5239 5839 +3733 4 2 709 26 4223 5315 4526 5117 +3734 4 2 709 26 4788 6068 4350 4091 +3735 4 2 709 26 4288 6021 4783 5637 +3736 4 2 709 26 5948 3936 5039 4214 +3737 4 2 709 26 4099 5895 4559 5228 +3738 4 2 709 26 5430 4086 4540 4875 +3739 4 2 709 26 5932 4277 4512 5552 +3740 4 2 709 26 4628 5713 4859 5604 +3741 4 2 709 26 5934 4158 5519 5809 +3742 4 2 709 26 4898 4474 4046 4642 +3743 4 2 709 26 4169 5733 4713 5132 +3744 4 2 709 26 4021 5928 4716 4979 +3745 4 2 709 26 5103 3929 4480 4712 +3746 4 2 709 26 5491 4060 4986 5292 +3747 4 2 709 26 5081 5666 5255 4243 +3748 4 2 709 26 4042 5488 4784 4850 +3749 4 2 709 26 4019 5482 4713 5090 +3750 4 2 709 26 4763 5456 5261 5272 +3751 4 2 709 26 5757 5364 5946 4353 +3752 4 2 709 26 4238 5277 5315 5689 +3753 4 2 709 26 5697 4197 4886 5696 +3754 4 2 709 26 5964 4226 5321 5641 +3755 4 2 709 26 4126 6031 4500 4977 +3756 4 2 709 26 5391 4716 4141 4979 +3757 4 2 709 26 4535 5988 5192 5234 +3758 4 2 709 26 5290 5975 5205 4537 +3759 4 2 709 26 4197 3992 4886 5696 +3760 4 2 709 26 4428 5962 5147 5566 +3761 4 2 709 26 4070 5921 4569 5541 +3762 4 2 709 26 4568 5935 3891 4135 +3763 4 2 709 26 4006 5554 4715 5493 +3764 4 2 709 26 5962 4428 5147 5428 +3765 4 2 709 26 3891 5935 4893 5489 +3766 4 2 709 26 5908 5167 5753 4118 +3767 4 2 709 26 3897 5381 4639 5121 +3768 4 2 709 26 5918 4520 4292 5559 +3769 4 2 709 26 5972 3907 5099 5514 +3770 4 2 709 26 5319 3914 5033 5115 +3771 4 2 709 26 5290 5306 5056 4223 +3772 4 2 709 26 6047 4099 4903 5152 +3773 4 2 709 26 5982 5913 5690 4153 +3774 4 2 709 26 5860 5917 4209 5211 +3775 4 2 709 26 4006 5692 4722 5650 +3776 4 2 709 26 4296 5963 5363 5938 +3777 4 2 709 26 5968 3873 4308 4803 +3778 4 2 709 26 5807 3901 5058 5439 +3779 4 2 709 26 5436 5465 5250 4174 +3780 4 2 709 26 3914 5722 4730 5060 +3781 4 2 709 26 4950 3891 4525 4838 +3782 4 2 709 26 4193 4340 5674 5508 +3783 4 2 709 26 5852 4415 5070 5574 +3784 4 2 709 26 5272 4763 5044 5261 +3785 4 2 709 26 4139 4585 5123 5802 +3786 4 2 709 26 4319 4366 4802 5782 +3787 4 2 709 26 5918 4015 4322 4995 +3788 4 2 709 26 5899 3947 4672 5711 +3789 4 2 709 26 4242 4810 4397 5923 +3790 4 2 709 26 5435 4489 4626 4876 +3791 4 2 709 26 5649 3869 4347 4641 +3792 4 2 709 26 5093 5487 4974 4465 +3793 4 2 709 26 4355 5899 5711 5875 +3794 4 2 709 26 4286 5847 4602 5628 +3795 4 2 709 26 4316 5945 4654 4902 +3796 4 2 709 26 4037 6001 5572 4669 +3797 4 2 709 26 5768 3921 4303 4474 +3798 4 2 709 26 4607 5681 4777 5498 +3799 4 2 709 26 5866 4305 5339 4094 +3800 4 2 709 26 4056 5685 4993 5401 +3801 4 2 709 26 4481 4053 5240 5293 +3802 4 2 709 26 4182 5578 4885 5216 +3803 4 2 709 26 5690 4545 4673 5296 +3804 4 2 709 26 5760 4327 5027 5095 +3805 4 2 709 26 5669 4209 5312 5530 +3806 4 2 709 26 5805 3883 4629 5004 +3807 4 2 709 26 5937 4584 4939 5716 +3808 4 2 709 26 6039 4627 5313 5879 +3809 4 2 709 26 5720 4114 4496 5675 +3810 4 2 709 26 5863 3889 5180 5292 +3811 4 2 709 26 5763 4279 4485 5170 +3812 4 2 709 26 4177 5649 4851 4988 +3813 4 2 709 26 5575 4234 4578 5410 +3814 4 2 709 26 4223 5592 4526 5315 +3815 4 2 709 26 5788 4068 4720 4810 +3816 4 2 709 26 4355 5899 5875 4849 +3817 4 2 709 26 4529 5818 4877 5325 +3818 4 2 709 26 3915 5604 4326 4673 +3819 4 2 709 26 4186 4162 4946 5407 +3820 4 2 709 26 4134 5349 4660 5639 +3821 4 2 709 26 4448 5592 3877 5883 +3822 4 2 709 26 4078 5699 4996 5394 +3823 4 2 709 26 4658 4969 4210 5825 +3824 4 2 709 26 5299 5361 5573 4005 +3825 4 2 709 26 4342 5755 4730 5060 +3826 4 2 709 26 4210 5504 4658 5341 +3827 4 2 709 26 5979 3977 4266 5763 +3828 4 2 709 26 5719 4119 5268 5512 +3829 4 2 709 26 5665 4191 4630 5472 +3830 4 2 709 26 4316 5945 4902 5843 +3831 4 2 709 26 4406 5972 5099 5476 +3832 4 2 709 26 3959 5108 5371 5474 +3833 4 2 709 26 4530 3960 5500 4230 +3834 4 2 709 26 4119 5512 4428 4711 +3835 4 2 709 26 4026 5670 5081 5661 +3836 4 2 709 26 4100 6030 5210 5489 +3837 4 2 709 26 4745 5854 5142 5752 +3838 4 2 709 26 4130 4486 5363 4296 +3839 4 2 709 26 5188 5281 4907 4366 +3840 4 2 709 26 4180 5817 4770 5403 +3841 4 2 709 26 5624 4594 4305 5437 +3842 4 2 709 26 3895 5669 4465 5130 +3843 4 2 709 26 4075 5374 4558 5302 +3844 4 2 709 26 5548 4179 4814 5487 +3845 4 2 709 26 4743 5919 5119 4083 +3846 4 2 709 26 5996 3920 4872 5763 +3847 4 2 709 26 4391 5536 4426 4631 +3848 4 2 709 26 6042 4227 5090 5745 +3849 4 2 709 26 3896 5824 4411 4488 +3850 4 2 709 26 5488 4042 4703 4850 +3851 4 2 709 26 4031 5936 4730 5115 +3852 4 2 709 26 5198 6048 5334 3893 +3853 4 2 709 26 5868 3922 4489 5435 +3854 4 2 709 26 5930 4272 4730 5287 +3855 4 2 709 26 4707 5951 6053 4081 +3856 4 2 709 26 4584 4017 5716 5937 +3857 4 2 709 26 3960 5976 4452 5500 +3858 4 2 709 26 4105 4290 4668 5312 +3859 4 2 709 26 5419 3919 4798 4961 +3860 4 2 709 26 3940 6024 4834 5877 +3861 4 2 709 26 4017 5937 4743 5119 +3862 4 2 709 26 5122 4650 4043 5199 +3863 4 2 709 26 5682 3896 4260 5265 +3864 4 2 709 26 5826 3941 4183 5554 +3865 4 2 709 26 4068 5276 4720 4810 +3866 4 2 709 26 4022 5028 4737 4893 +3867 4 2 709 26 4163 3914 4240 5033 +3868 4 2 709 26 4054 5580 4492 4840 +3869 4 2 709 26 4495 5830 5141 4928 +3870 4 2 709 26 6036 4080 4931 4315 +3871 4 2 709 26 5987 3944 4774 5708 +3872 4 2 709 26 3869 5548 4536 5241 +3873 4 2 709 26 5915 3923 4643 5784 +3874 4 2 709 26 5765 5626 4511 5377 +3875 4 2 709 26 4127 6010 4634 5700 +3876 4 2 709 26 5862 4232 4956 5142 +3877 4 2 709 26 5461 4120 4698 4850 +3878 4 2 709 26 4037 6001 5605 5053 +3879 4 2 709 26 5877 4198 4834 3979 +3880 4 2 709 26 5940 4361 5149 5751 +3881 4 2 709 26 4709 5909 5167 5797 +3882 4 2 709 26 4204 5401 4759 5128 +3883 4 2 709 26 4037 6001 4669 5605 +3884 4 2 709 26 4086 5569 4636 5430 +3885 4 2 709 26 4486 5556 4618 5264 +3886 4 2 709 26 5554 4521 4715 5493 +3887 4 2 709 26 4473 5766 5272 5703 +3888 4 2 709 26 4227 5721 4955 5164 +3889 4 2 709 26 5686 3887 4586 4964 +3890 4 2 709 26 4243 5044 4763 4786 +3891 4 2 709 26 5728 4224 5768 3999 +3892 4 2 709 26 3944 5537 4710 5399 +3893 4 2 709 26 5722 4021 4730 5060 +3894 4 2 709 26 5957 4056 4759 5685 +3895 4 2 709 26 4568 5935 4135 4509 +3896 4 2 709 26 4868 3908 4269 4687 +3897 4 2 709 26 4883 4099 5323 5715 +3898 4 2 709 26 4158 5809 4803 5538 +3899 4 2 709 26 4043 6028 4696 5122 +3900 4 2 709 26 5946 5851 3994 5290 +3901 4 2 709 26 4865 6039 4872 5976 +3902 4 2 709 26 5344 4298 4533 5316 +3903 4 2 709 26 4669 5959 5200 5735 +3904 4 2 709 26 4301 6027 5522 5771 +3905 4 2 709 26 5824 4488 5504 5619 +3906 4 2 709 26 5896 4000 4707 4772 +3907 4 2 709 26 3972 5027 4327 4529 +3908 4 2 709 26 4345 4027 5524 5490 +3909 4 2 709 26 4021 5722 4730 5134 +3910 4 2 709 26 5913 3912 4153 5652 +3911 4 2 709 26 4010 5964 5321 5641 +3912 4 2 709 26 4431 3910 4264 4877 +3913 4 2 709 26 3915 5870 4946 5270 +3914 4 2 709 26 5583 3961 4361 4835 +3915 4 2 709 26 5348 3973 4330 5211 +3916 4 2 709 26 5537 4018 4710 5399 +3917 4 2 709 26 6016 5513 4504 5788 +3918 4 2 709 26 4173 5473 4352 4867 +3919 4 2 709 26 5833 4108 4339 5378 +3920 4 2 709 26 5390 4075 4558 4575 +3921 4 2 709 26 5838 5961 5576 3990 +3922 4 2 709 26 3937 4740 4746 5411 +3923 4 2 709 26 4482 4247 4777 5382 +3924 4 2 709 26 5554 5826 5902 4278 +3925 4 2 709 26 5503 4202 5159 5436 +3926 4 2 709 26 3896 5682 4260 4411 +3927 4 2 709 26 5494 4140 4961 5419 +3928 4 2 709 26 5928 4547 4867 5473 +3929 4 2 709 26 4097 5805 4629 4715 +3930 4 2 709 26 4346 5851 4884 5457 +3931 4 2 709 26 4054 4828 4378 4966 +3932 4 2 709 26 4446 4250 6000 5260 +3933 4 2 709 26 6055 4247 5087 3918 +3934 4 2 709 26 4098 5819 4615 5545 +3935 4 2 709 26 4885 5319 4182 5216 +3936 4 2 709 26 4146 6017 4756 5274 +3937 4 2 709 26 5401 4056 4937 4993 +3938 4 2 709 26 5565 5438 4089 4299 +3939 4 2 709 26 5600 4137 4822 5591 +3940 4 2 709 26 5947 3915 4859 5870 +3941 4 2 709 26 5580 4009 4840 5345 +3942 4 2 709 26 4013 5569 4636 5148 +3943 4 2 709 26 6048 4373 5334 5557 +3944 4 2 709 26 4979 4021 4342 5949 +3945 4 2 709 26 5585 6035 4043 4778 +3946 4 2 709 26 3989 5252 4802 5061 +3947 4 2 709 26 4614 4442 5483 5922 +3948 4 2 709 26 6025 4557 4337 5282 +3949 4 2 709 26 4279 5979 5170 5763 +3950 4 2 709 26 5989 3978 5121 5574 +3951 4 2 709 26 3873 5968 4308 4770 +3952 4 2 709 26 3873 5809 4546 5538 +3953 4 2 709 26 4084 6025 4566 5744 +3954 4 2 709 26 3891 4829 4525 4838 +3955 4 2 709 26 5612 4030 4297 4957 +3956 4 2 709 26 5748 4204 4993 5685 +3957 4 2 709 26 3906 5932 4857 5031 +3958 4 2 709 26 4161 5729 4455 5082 +3959 4 2 709 26 5805 4006 4715 5650 +3960 4 2 709 26 4068 5788 4620 4810 +3961 4 2 709 26 4834 5707 5036 4463 +3962 4 2 709 26 5355 3907 4547 5153 +3963 4 2 709 26 5455 4057 5074 5254 +3964 4 2 709 26 5753 4218 4343 5354 +3965 4 2 709 26 4211 4934 5894 5827 +3966 4 2 709 26 4544 5803 5279 5759 +3967 4 2 709 26 4450 5697 4580 5542 +3968 4 2 709 26 4092 5850 4636 5801 +3969 4 2 709 26 3999 5728 4117 5196 +3970 4 2 709 26 5996 4452 4872 5180 +3971 4 2 709 26 4208 5870 4859 5270 +3972 4 2 709 26 3889 5850 4836 5045 +3973 4 2 709 26 4621 5938 5231 5449 +3974 4 2 709 26 5946 5851 5004 4714 +3975 4 2 709 26 5986 4381 4511 3948 +3976 4 2 709 26 4380 5912 3974 4980 +3977 4 2 709 26 5639 4086 5148 5544 +3978 4 2 709 26 5937 4083 4743 5119 +3979 4 2 709 26 5866 4594 4305 5624 +3980 4 2 709 26 5935 4063 4509 5028 +3981 4 2 709 26 4231 5818 4885 5325 +3982 4 2 709 26 4149 5689 4490 5306 +3983 4 2 709 26 4159 4311 4796 5297 +3984 4 2 709 26 3988 4257 5118 4408 +3985 4 2 709 26 5942 3961 4493 5854 +3986 4 2 709 26 3871 5973 5365 5674 +3987 4 2 709 26 4428 5962 4861 5428 +3988 4 2 709 26 6068 3923 4643 5915 +3989 4 2 709 26 5276 4068 4620 4810 +3990 4 2 709 26 4234 5794 4578 5410 +3991 4 2 709 26 4034 5502 4689 5069 +3992 4 2 709 26 5569 4013 4602 5369 +3993 4 2 709 26 5929 4161 5043 5484 +3994 4 2 709 26 3992 5696 5881 4886 +3995 4 2 709 26 4268 5865 5355 4842 +3996 4 2 709 26 5805 4170 4715 4967 +3997 4 2 709 26 5935 3891 4893 5668 +3998 4 2 709 26 4703 5158 4850 5660 +3999 4 2 709 26 4131 5456 4585 4988 +4000 4 2 709 26 5811 4310 4574 5374 +4001 4 2 709 26 5325 4137 4844 5027 +4002 4 2 709 26 5956 4478 4987 5189 +4003 4 2 709 26 5889 4159 4434 5297 +4004 4 2 709 26 5935 4893 5028 5668 +4005 4 2 709 26 4646 4034 4683 5502 +4006 4 2 709 26 3941 5927 4629 5554 +4007 4 2 709 26 5316 4031 4533 4913 +4008 4 2 709 26 5684 4206 5070 5416 +4009 4 2 709 26 4895 4171 5652 5985 +4010 4 2 709 26 4215 5970 4460 5246 +4011 4 2 709 26 6011 4334 4947 5638 +4012 4 2 709 26 5585 6035 5057 4043 +4013 4 2 709 26 6028 4696 4935 5568 +4014 4 2 709 26 4019 4955 5090 4227 +4015 4 2 709 26 4437 5552 4512 5550 +4016 4 2 709 26 4530 3960 4230 4932 +4017 4 2 709 26 5930 3914 4730 5755 +4018 4 2 709 26 4235 5742 4322 5229 +4019 4 2 709 26 5814 5656 4760 4236 +4020 4 2 709 26 5043 5989 4215 5574 +4021 4 2 709 26 5419 4176 4798 5410 +4022 4 2 709 26 5529 4020 4547 5355 +4023 4 2 709 26 4038 5832 4657 4779 +4024 4 2 709 26 5809 4411 4260 5274 +4025 4 2 709 26 5815 4042 4659 4753 +4026 4 2 709 26 4105 5669 5312 5530 +4027 4 2 709 26 5754 5787 5575 3908 +4028 4 2 709 26 3957 5886 4414 5373 +4029 4 2 709 26 5690 4052 4545 5296 +4030 4 2 709 26 5345 5453 3890 4840 +4031 4 2 709 26 5040 4628 5615 4040 +4032 4 2 709 26 4080 5136 4761 4931 +4033 4 2 709 26 4182 5325 4844 5319 +4034 4 2 709 26 4247 5326 5746 4108 +4035 4 2 709 26 4127 5700 4634 5588 +4036 4 2 709 26 5877 4220 4816 5823 +4037 4 2 709 26 5779 4937 4298 4032 +4038 4 2 709 26 5747 4606 4949 5288 +4039 4 2 709 26 5779 4937 4436 5344 +4040 4 2 709 26 5596 4308 4770 4842 +4041 4 2 709 26 4375 5714 4544 5329 +4042 4 2 709 26 5083 3930 4246 4846 +4043 4 2 709 26 6016 5513 5788 4620 +4044 4 2 709 26 6053 5786 4584 3893 +4045 4 2 709 26 5523 4060 4789 4986 +4046 4 2 709 26 4046 5308 4384 4642 +4047 4 2 709 26 5894 4211 4385 5675 +4048 4 2 709 26 4341 5484 4613 5082 +4049 4 2 709 26 5851 4346 4884 5290 +4050 4 2 709 26 4086 5384 4540 4875 +4051 4 2 709 26 4066 5688 4483 5368 +4052 4 2 709 26 5432 4115 4653 3954 +4053 4 2 709 26 5620 5474 5108 3959 +4054 4 2 709 26 4511 5626 4555 5377 +4055 4 2 709 26 5465 5436 5084 5359 +4056 4 2 709 26 5549 4103 4671 5416 +4057 4 2 709 26 4366 4319 4802 5252 +4058 4 2 709 26 4671 6019 5416 5986 +4059 4 2 709 26 3963 6018 4647 5426 +4060 4 2 709 26 6065 4014 5056 5205 +4061 4 2 709 26 5465 4168 4514 4593 +4062 4 2 709 26 5122 4225 5199 6028 +4063 4 2 709 26 5856 5252 3989 5061 +4064 4 2 709 26 4182 5600 4844 5325 +4065 4 2 709 26 5745 4227 4955 5164 +4066 4 2 709 26 4187 5852 5011 5070 +4067 4 2 709 26 5743 4496 4757 5164 +4068 4 2 709 26 4648 5893 5194 4930 +4069 4 2 709 26 5954 4339 5236 5903 +4070 4 2 709 26 4463 5984 5036 5239 +4071 4 2 709 26 4077 5954 5236 5903 +4072 4 2 709 26 5636 4093 4539 5289 +4073 4 2 709 26 5973 3871 4429 5210 +4074 4 2 709 26 4018 5537 4506 4588 +4075 4 2 709 26 4027 5295 4749 4997 +4076 4 2 709 26 5669 4105 4650 5530 +4077 4 2 709 26 6006 4200 4645 5680 +4078 4 2 709 26 5803 3993 5013 5759 +4079 4 2 709 26 4047 5863 4452 5500 +4080 4 2 709 26 5776 4086 4875 5774 +4081 4 2 709 26 5569 3942 4636 5430 +4082 4 2 709 26 4635 5247 4837 5440 +4083 4 2 709 26 4471 6043 5539 5831 +4084 4 2 709 26 4380 5912 5324 4774 +4085 4 2 709 26 4274 5690 4673 5296 +4086 4 2 709 26 4043 4718 5122 5585 +4087 4 2 709 26 4341 4188 4613 5652 +4088 4 2 709 26 5809 4260 4488 5519 +4089 4 2 709 26 3879 4621 5695 5573 +4090 4 2 709 26 4003 5400 4390 5147 +4091 4 2 709 26 5011 6019 5416 4378 +4092 4 2 709 26 3911 5689 5437 5627 +4093 4 2 709 26 5953 4283 4736 5810 +4094 4 2 709 26 4143 4358 5202 6038 +4095 4 2 709 26 5972 3907 5153 5473 +4096 4 2 709 26 4237 5645 4921 5094 +4097 4 2 709 26 5701 4130 4396 5363 +4098 4 2 709 26 4380 5952 4626 5611 +4099 4 2 709 26 5690 3912 4593 5242 +4100 4 2 709 26 5401 4056 4436 4937 +4101 4 2 709 26 3905 5540 4533 5287 +4102 4 2 709 26 5832 4038 4657 4732 +4103 4 2 709 26 4566 6025 4337 6009 +4104 4 2 709 26 4663 4036 4766 5116 +4105 4 2 709 26 3871 6030 4365 5396 +4106 4 2 709 26 3974 4980 4267 4876 +4107 4 2 709 26 3908 5907 5212 5787 +4108 4 2 709 26 5963 4166 5938 5231 +4109 4 2 709 26 4161 5929 4346 5484 +4110 4 2 709 26 3906 4786 4243 5666 +4111 4 2 709 26 4183 5692 4629 5004 +4112 4 2 709 26 5425 4466 5051 5308 +4113 4 2 709 26 4711 5761 5268 5512 +4114 4 2 709 26 5772 4097 4715 4805 +4115 4 2 709 26 5644 4185 4887 4399 +4116 4 2 709 26 5580 4009 4492 4840 +4117 4 2 709 26 3914 5930 4730 5115 +4118 4 2 709 26 4079 4685 5483 4442 +4119 4 2 709 26 5953 4736 4399 5810 +4120 4 2 709 26 4069 5652 4341 4613 +4121 4 2 709 26 4393 5702 4210 5415 +4122 4 2 709 26 5472 4357 4976 5113 +4123 4 2 709 26 4181 5389 4879 5119 +4124 4 2 709 26 5906 4172 4622 5578 +4125 4 2 709 26 4360 5973 5210 5674 +4126 4 2 709 26 5938 4621 5231 5701 +4127 4 2 709 26 4079 5796 4662 5418 +4128 4 2 709 26 4420 5860 4801 5211 +4129 4 2 709 26 5793 4170 4715 5042 +4130 4 2 709 26 3943 5933 4973 5335 +4131 4 2 709 26 5345 5453 4840 5580 +4132 4 2 709 26 4014 5205 4729 5056 +4133 4 2 709 26 4073 5710 5248 5659 +4134 4 2 709 26 3973 5867 4801 5348 +4135 4 2 709 26 5860 5917 5211 4420 +4136 4 2 709 26 5901 4176 4429 5419 +4137 4 2 709 26 4225 6028 4935 4656 +4138 4 2 709 26 4042 5488 4703 4753 +4139 4 2 709 26 4482 4777 4247 6055 +4140 4 2 709 26 6024 3940 4421 5877 +4141 4 2 709 26 4231 5024 5319 4163 +4142 4 2 709 26 5886 4414 5373 4104 +4143 4 2 709 26 5665 3953 4385 4630 +4144 4 2 709 26 5970 4080 4761 5252 +4145 4 2 709 26 5882 4234 5257 5724 +4146 4 2 709 26 4019 5444 4589 5441 +4147 4 2 709 26 4037 6001 5053 5572 +4148 4 2 709 26 4064 6002 4550 4866 +4149 4 2 709 26 4122 5260 5076 4624 +4150 4 2 709 26 3916 4439 5661 5802 +4151 4 2 709 26 4057 5767 5074 5254 +4152 4 2 709 26 5557 3893 4049 5203 +4153 4 2 709 26 4215 5970 4455 5061 +4154 4 2 709 26 5330 5724 4426 5948 +4155 4 2 709 26 5159 4124 4007 5834 +4156 4 2 709 26 4053 4481 5240 5305 +4157 4 2 709 26 4268 5355 4770 4842 +4158 4 2 709 26 5792 3904 4759 5128 +4159 4 2 709 26 5045 4645 5251 6006 +4160 4 2 709 26 3887 5259 4586 4964 +4161 4 2 709 26 5267 4284 4561 4846 +4162 4 2 709 26 5863 3889 4836 5180 +4163 4 2 709 26 4210 5824 4393 5415 +4164 4 2 709 26 5856 5929 4161 5043 +4165 4 2 709 26 4360 5973 5508 4192 +4166 4 2 709 26 5899 4672 5650 5692 +4167 4 2 709 26 4326 4020 4673 5296 +4168 4 2 709 26 4345 4027 5490 4815 +4169 4 2 709 26 5962 5563 4861 4662 +4170 4 2 709 26 4856 5853 5617 5650 +4171 4 2 709 26 4206 5549 5317 5416 +4172 4 2 709 26 5315 4149 4526 5117 +4173 4 2 709 26 4170 5650 4715 5042 +4174 4 2 709 26 3993 5803 4544 5759 +4175 4 2 709 26 4641 3869 5123 5640 +4176 4 2 709 26 5742 4235 4322 4790 +4177 4 2 709 26 4827 5595 5438 4089 +4178 4 2 709 26 4079 4920 4320 5796 +4179 4 2 709 26 5946 5851 5290 5004 +4180 4 2 709 26 6025 4084 4623 5744 +4181 4 2 709 26 4244 5776 4889 5331 +4182 4 2 709 26 4635 5247 5440 3892 +4183 4 2 709 26 5980 4258 4405 5215 +4184 4 2 709 26 5833 4108 5300 5673 +4185 4 2 709 26 6045 4213 4711 4861 +4186 4 2 709 26 4158 5809 4488 5519 +4187 4 2 709 26 5378 5880 4423 4799 +4188 4 2 709 26 4243 5994 5081 5661 +4189 4 2 709 26 5276 5513 5127 4620 +4190 4 2 709 26 4431 3910 4877 5818 +4191 4 2 709 26 4182 5319 4435 5115 +4192 4 2 709 26 5685 4204 4993 5401 +4193 4 2 709 26 4013 4476 4530 5327 +4194 4 2 709 26 4272 5659 4730 5287 +4195 4 2 709 26 5859 4082 4554 4941 +4196 4 2 709 26 4044 5802 4207 5123 +4197 4 2 709 26 5019 5604 4326 5713 +4198 4 2 709 26 5989 3978 4661 5121 +4199 4 2 709 26 4436 5792 4759 5401 +4200 4 2 709 26 3877 4439 4448 5883 +4201 4 2 709 26 5605 4037 5053 5143 +4202 4 2 709 26 5391 3902 4882 5297 +4203 4 2 709 26 5803 5013 5279 5759 +4204 4 2 709 26 4142 5882 4632 5248 +4205 4 2 709 26 3903 4542 5889 4727 +4206 4 2 709 26 4961 4317 4470 4874 +4207 4 2 709 26 5945 4316 4860 5843 +4208 4 2 709 26 5946 3994 4537 5290 +4209 4 2 709 26 4398 5348 4687 5125 +4210 4 2 709 26 6007 4261 5109 5328 +4211 4 2 709 26 6040 4361 4493 5149 +4212 4 2 709 26 5901 4360 5133 5295 +4213 4 2 709 26 5850 4144 5251 5614 +4214 4 2 709 26 5819 4227 4615 4904 +4215 4 2 709 26 4142 5882 5257 5337 +4216 4 2 709 26 4034 4646 4683 5291 +4217 4 2 709 26 4485 5884 4194 5836 +4218 4 2 709 26 5609 5799 4267 4001 +4219 4 2 709 26 3945 5723 4197 5286 +4220 4 2 709 26 5914 4255 4962 5406 +4221 4 2 709 26 5723 3945 4197 4580 +4222 4 2 709 26 4076 5806 4520 5414 +4223 4 2 709 26 5869 4460 5246 5392 +4224 4 2 709 26 4803 5138 5331 5915 +4225 4 2 709 26 4355 5111 4849 5875 +4226 4 2 709 26 6042 3953 4385 5677 +4227 4 2 709 26 3898 5660 5151 5191 +4228 4 2 709 26 4370 5916 5022 5349 +4229 4 2 709 26 4269 6012 4461 4637 +4230 4 2 709 26 5188 4366 4907 5729 +4231 4 2 709 26 4126 6031 4984 5577 +4232 4 2 709 26 4776 5560 5357 5479 +4233 4 2 709 26 4420 5708 4691 5526 +4234 4 2 709 26 4515 4239 6005 5224 +4235 4 2 709 26 3916 5739 4993 5607 +4236 4 2 709 26 5623 5489 5210 4311 +4237 4 2 709 26 4202 5657 5469 5567 +4238 4 2 709 26 5563 4213 4861 5096 +4239 4 2 709 26 5554 4006 4605 5493 +4240 4 2 709 26 5743 4227 5164 5721 +4241 4 2 709 26 6038 4843 5247 5758 +4242 4 2 709 26 5699 4078 4762 5394 +4243 4 2 709 26 4097 5555 4967 5163 +4244 4 2 709 26 5400 4003 4512 5005 +4245 4 2 709 26 3972 5822 4529 5665 +4246 4 2 709 26 4081 5951 4573 5651 +4247 4 2 709 26 4401 6008 4903 5895 +4248 4 2 709 26 4047 5313 4301 4892 +4249 4 2 709 26 4378 5351 5717 4828 +4250 4 2 709 26 5865 3907 4842 5002 +4251 4 2 709 26 4002 4680 4799 5673 +4252 4 2 709 26 6002 3868 5221 4273 +4253 4 2 709 26 5925 4480 5438 5595 +4254 4 2 709 26 5336 4790 3946 4532 +4255 4 2 709 26 3915 5713 4326 5604 +4256 4 2 709 26 4451 4292 5173 5584 +4257 4 2 709 26 4103 5684 5416 5549 +4258 4 2 709 26 5223 4118 4709 4962 +4259 4 2 709 26 5503 4168 5250 5436 +4260 4 2 709 26 6051 4303 4982 5768 +4261 4 2 709 26 4213 5761 4711 4861 +4262 4 2 709 26 4388 4230 5077 5500 +4263 4 2 709 26 5967 4213 4910 5096 +4264 4 2 709 26 6049 4270 4423 5068 +4265 4 2 709 26 4188 5985 5652 4341 +4266 4 2 709 26 5017 6042 5090 5745 +4267 4 2 709 26 5956 4478 4951 4987 +4268 4 2 709 26 4898 4303 4474 4642 +4269 4 2 709 26 4122 5978 4781 5525 +4270 4 2 709 26 3902 4176 4882 5623 +4271 4 2 709 26 4054 5580 4840 5453 +4272 4 2 709 26 4000 5896 4707 5198 +4273 4 2 709 26 4143 6038 4843 5247 +4274 4 2 709 26 4075 5302 4558 4575 +4275 4 2 709 26 4246 5699 4846 5394 +4276 4 2 709 26 5899 4849 5853 5875 +4277 4 2 709 26 5979 4000 4279 5170 +4278 4 2 709 26 4064 4325 4550 5221 +4279 4 2 709 26 5826 4379 4862 5342 +4280 4 2 709 26 5804 4055 5531 4508 +4281 4 2 709 26 4006 5493 4715 5042 +4282 4 2 709 26 5480 4071 4451 5041 +4283 4 2 709 26 4391 5724 5243 3878 +4284 4 2 709 26 4476 5798 4892 5327 +4285 4 2 709 26 4421 6024 5507 5525 +4286 4 2 709 26 5684 4206 5416 5549 +4287 4 2 709 26 3922 5849 4988 5456 +4288 4 2 709 26 4021 5928 4352 5473 +4289 4 2 709 26 5901 4360 5295 4192 +4290 4 2 709 26 4496 6042 5017 5745 +4291 4 2 709 26 3877 5883 4526 5447 +4292 4 2 709 26 5623 5489 4311 5048 +4293 4 2 709 26 3907 5865 4842 5355 +4294 4 2 709 26 4090 5899 4722 5692 +4295 4 2 709 26 4019 4955 4227 4904 +4296 4 2 709 26 5650 4170 4856 5042 +4297 4 2 709 26 4647 5774 5176 5544 +4298 4 2 709 26 5582 4342 5060 5424 +4299 4 2 709 26 5852 4187 5043 5574 +4300 4 2 709 26 5899 3947 5711 5875 +4301 4 2 709 26 4137 4873 4844 5027 +4302 4 2 709 26 5444 5857 4528 5482 +4303 4 2 709 26 5739 5748 4204 4993 +4304 4 2 709 26 4322 5918 4800 4964 +4305 4 2 709 26 5978 4655 4985 5687 +4306 4 2 709 26 3971 5824 4210 5619 +4307 4 2 709 26 5785 4288 4608 5637 +4308 4 2 709 26 4446 4250 5135 6000 +4309 4 2 709 26 4093 5874 4359 5636 +4310 4 2 709 26 4073 4716 5391 4979 +4311 4 2 709 26 4431 4877 5539 5818 +4312 4 2 709 26 6004 4259 5101 5969 +4313 4 2 709 26 5352 4152 5186 5305 +4314 4 2 709 26 5683 4283 4454 5579 +4315 4 2 709 26 3869 5649 4347 5125 +4316 4 2 709 26 4595 5450 3971 4393 +4317 4 2 709 26 3869 5649 4177 4988 +4318 4 2 709 26 4717 4107 4254 5807 +4319 4 2 709 26 5011 6019 3948 5416 +4320 4 2 709 26 4048 4716 5201 5227 +4321 4 2 709 26 5573 4005 4621 5299 +4322 4 2 709 26 5602 4038 4695 4779 +4323 4 2 709 26 4196 3986 5183 5487 +4324 4 2 709 26 5348 5399 5956 4189 +4325 4 2 709 26 5429 3955 4393 5105 +4326 4 2 709 26 4009 5738 4492 5553 +4327 4 2 709 26 5715 3992 5088 5258 +4328 4 2 709 26 5870 4208 4946 5270 +4329 4 2 709 26 4260 5934 5010 5265 +4330 4 2 709 26 4182 5411 4619 4622 +4331 4 2 709 26 3954 4477 5842 5066 +4332 4 2 709 26 5869 4040 4705 5392 +4333 4 2 709 26 5366 4180 4770 5269 +4334 4 2 709 26 4415 5929 5043 5852 +4335 4 2 709 26 4398 5399 4710 4951 +4336 4 2 709 26 4235 4495 5141 6020 +4337 4 2 709 26 3984 5564 5104 4422 +4338 4 2 709 26 5109 5922 4442 4614 +4339 4 2 709 26 4681 5808 5448 4331 +4340 4 2 709 26 4059 5540 4746 4479 +4341 4 2 709 26 3885 5744 4705 5136 +4342 4 2 709 26 4234 5496 4798 5410 +4343 4 2 709 26 4092 5801 4534 5679 +4344 4 2 709 26 4707 5951 4000 6053 +4345 4 2 709 26 5813 5966 4587 4016 +4346 4 2 709 26 5681 4094 4649 4777 +4347 4 2 709 26 5336 4790 5800 3946 +4348 4 2 709 26 4717 4254 4107 5667 +4349 4 2 709 26 4228 4519 5169 5654 +4350 4 2 709 26 5822 4191 4529 5665 +4351 4 2 709 26 4006 5805 4629 5692 +4352 4 2 709 26 3922 5849 4876 5307 +4353 4 2 709 26 4372 5907 4578 5575 +4354 4 2 709 26 5831 4082 4471 4554 +4355 4 2 709 26 5865 4150 4867 5002 +4356 4 2 709 26 5890 3967 4572 5427 +4357 4 2 709 26 3923 5784 5363 4296 +4358 4 2 709 26 3929 4711 4213 4480 +4359 4 2 709 26 5620 5108 5474 4395 +4360 4 2 709 26 4007 5897 5232 5445 +4361 4 2 709 26 4136 4334 5413 5638 +4362 4 2 709 26 4017 5965 4743 5937 +4363 4 2 709 26 6053 4000 4707 5198 +4364 4 2 709 26 4009 5145 4492 4840 +4365 4 2 709 26 3898 4221 5151 5660 +4366 4 2 709 26 5733 4095 5132 5247 +4367 4 2 709 26 6068 4091 4618 4350 +4368 4 2 709 26 4837 4079 4560 4635 +4369 4 2 709 26 6021 4288 4535 5785 +4370 4 2 709 26 4343 6056 4505 4901 +4371 4 2 709 26 4168 5240 4514 4593 +4372 4 2 709 26 5799 4980 4267 5025 +4373 4 2 709 26 5015 4077 5750 4555 +4374 4 2 709 26 4050 5560 4776 5479 +4375 4 2 709 26 3959 4577 4741 5788 +4376 4 2 709 26 5937 4185 4584 5683 +4377 4 2 709 26 5906 3905 4632 5287 +4378 4 2 709 26 4562 6041 4871 5595 +4379 4 2 709 26 4056 4993 4764 4937 +4380 4 2 709 26 4415 5574 5043 5381 +4381 4 2 709 26 5820 4382 4444 5420 +4382 4 2 709 26 4730 5936 5134 5722 +4383 4 2 709 26 3912 5913 4153 5690 +4384 4 2 709 26 3953 5743 4496 5720 +4385 4 2 709 26 4738 5966 5404 5630 +4386 4 2 709 26 5784 4552 4643 5688 +4387 4 2 709 26 5854 4232 4493 5142 +4388 4 2 709 26 4136 5647 4821 5059 +4389 4 2 709 26 4029 5957 4740 4913 +4390 4 2 709 26 4466 4046 4644 5308 +4391 4 2 709 26 5465 5084 5436 4168 +4392 4 2 709 26 4355 5899 4849 4090 +4393 4 2 709 26 5565 4299 4697 4963 +4394 4 2 709 26 4211 5704 4652 5098 +4395 4 2 709 26 4247 5326 5087 5746 +4396 4 2 709 26 4682 5987 4774 5708 +4397 4 2 709 26 4629 5773 4346 5555 +4398 4 2 709 26 4461 4154 4690 5754 +4399 4 2 709 26 5970 4455 5061 5252 +4400 4 2 709 26 3988 4257 4408 5207 +4401 4 2 709 26 5928 4021 4716 5134 +4402 4 2 709 26 4213 5103 4819 4910 +4403 4 2 709 26 5093 3973 4465 4974 +4404 4 2 709 26 5792 4514 4593 5465 +4405 4 2 709 26 4254 4747 5114 5181 +4406 4 2 709 26 5704 4211 4652 5217 +4407 4 2 709 26 4252 5958 4695 5475 +4408 4 2 709 26 5874 4093 5209 5379 +4409 4 2 709 26 5223 3900 4255 5194 +4410 4 2 709 26 5823 4220 4816 5314 +4411 4 2 709 26 5710 4073 4342 5659 +4412 4 2 709 26 5906 3905 5287 5540 +4413 4 2 709 26 5659 5882 3878 5248 +4414 4 2 709 26 4226 5641 4938 5321 +4415 4 2 709 26 5699 4246 4996 5394 +4416 4 2 709 26 5146 3961 4432 4835 +4417 4 2 709 26 4317 4874 5301 5911 +4418 4 2 709 26 5012 5994 5661 5802 +4419 4 2 709 26 5667 5439 4254 4107 +4420 4 2 709 26 6047 4099 5152 5258 +4421 4 2 709 26 5569 4086 4540 5430 +4422 4 2 709 26 4217 5893 4755 4896 +4423 4 2 709 26 4247 5326 4338 5087 +4424 4 2 709 26 5682 4411 4756 5274 +4425 4 2 709 26 4457 5642 5474 4832 +4426 4 2 709 26 6003 4508 4055 5746 +4427 4 2 709 26 4003 5451 4390 5400 +4428 4 2 709 26 4329 5777 5039 4625 +4429 4 2 709 26 3953 6042 4496 5743 +4430 4 2 709 26 4542 5254 4141 4727 +4431 4 2 709 26 4277 4512 5038 5932 +4432 4 2 709 26 4027 6061 5524 4376 +4433 4 2 709 26 5673 4383 4680 5300 +4434 4 2 709 26 3977 5979 4361 5583 +4435 4 2 709 26 4242 5923 4949 5747 +4436 4 2 709 26 5578 4025 4885 5216 +4437 4 2 709 26 4001 5609 4216 5044 +4438 4 2 709 26 3897 5663 5121 4639 +4439 4 2 709 26 5483 4079 4442 4614 +4440 4 2 709 26 4136 5638 4712 4947 +4441 4 2 709 26 4071 5480 4590 5372 +4442 4 2 709 26 4309 4981 4576 4755 +4443 4 2 709 26 5733 4095 4713 5132 +4444 4 2 709 26 4013 4530 4476 5594 +4445 4 2 709 26 5665 3972 4327 4529 +4446 4 2 709 26 5121 3950 4639 5663 +4447 4 2 709 26 4166 5963 4552 5514 +4448 4 2 709 26 6030 3871 4365 5674 +4449 4 2 709 26 4059 4172 4622 5540 +4450 4 2 709 26 5025 4267 4744 4980 +4451 4 2 709 26 4074 5474 4395 4832 +4452 4 2 709 26 5981 4675 5223 5694 +4453 4 2 709 26 5763 5884 3977 4872 +4454 4 2 709 26 5921 4070 4768 5541 +4455 4 2 709 26 5252 4080 4802 5061 +4456 4 2 709 26 4071 5372 4590 5266 +4457 4 2 709 26 5795 4057 5254 5767 +4458 4 2 709 26 5742 4322 4532 4790 +4459 4 2 709 26 5954 4339 5015 5236 +4460 4 2 709 26 4244 5556 4618 5046 +4461 4 2 709 26 4801 5991 5211 5860 +4462 4 2 709 26 4054 5011 4321 4966 +4463 4 2 709 26 5451 4003 4512 5400 +4464 4 2 709 26 5569 5847 5369 4602 +4465 4 2 709 26 5870 5129 4208 5392 +4466 4 2 709 26 3893 4939 5203 5786 +4467 4 2 709 26 5725 4478 4951 5399 +4468 4 2 709 26 4534 4422 5679 5801 +4469 4 2 709 26 4015 5709 4322 4995 +4470 4 2 709 26 4611 4283 5579 5603 +4471 4 2 709 26 4385 5665 4630 5472 +4472 4 2 709 26 5767 3934 5074 5254 +4473 4 2 709 26 4086 5569 4540 5384 +4474 4 2 709 26 6042 4169 4679 5677 +4475 4 2 709 26 5748 4204 5515 4307 +4476 4 2 709 26 5690 4274 5026 5242 +4477 4 2 709 26 4481 4160 5034 5356 +4478 4 2 709 26 4979 4342 4021 5582 +4479 4 2 709 26 5473 4173 4352 5218 +4480 4 2 709 26 4002 4799 4680 5175 +4481 4 2 709 26 3974 5912 4363 4980 +4482 4 2 709 26 4078 4790 5686 4664 +4483 4 2 709 26 4288 5835 4608 5637 +4484 4 2 709 26 3964 6045 5566 5962 +4485 4 2 709 26 6027 4301 4836 5206 +4486 4 2 709 26 4545 5359 5084 3880 +4487 4 2 709 26 3911 6065 5306 5689 +4488 4 2 709 26 3968 5852 4415 5070 +4489 4 2 709 26 5203 4939 5589 5786 +4490 4 2 709 26 6054 4363 4980 5025 +4491 4 2 709 26 4317 4997 4749 5295 +4492 4 2 709 26 4441 5983 4557 4084 +4493 4 2 709 26 4150 5407 4946 5273 +4494 4 2 709 26 5629 4289 4782 5526 +4495 4 2 709 26 4672 5805 5650 5692 +4496 4 2 709 26 6033 4940 5217 5971 +4497 4 2 709 26 4867 3907 4547 5865 +4498 4 2 709 26 5898 3901 5076 5114 +4499 4 2 709 26 4480 5103 4712 4819 +4500 4 2 709 26 4327 3972 5677 5760 +4501 4 2 709 26 4662 5962 5428 4861 +4502 4 2 709 26 5868 4299 4963 5435 +4503 4 2 709 26 5935 5048 5489 4135 +4504 4 2 709 26 4428 6045 4711 4861 +4505 4 2 709 26 4015 5918 4322 4964 +4506 4 2 709 26 5363 4130 4396 5046 +4507 4 2 709 26 5716 4181 4676 5119 +4508 4 2 709 26 5800 4356 5052 5532 +4509 4 2 709 26 5887 4114 4757 5370 +4510 4 2 709 26 5685 4056 4759 5401 +4511 4 2 709 26 4264 3972 5027 5760 +4512 4 2 709 26 4137 5600 4844 5591 +4513 4 2 709 26 4676 3961 4361 5583 +4514 4 2 709 26 5713 4268 5154 5270 +4515 4 2 709 26 3911 5056 4276 4884 +4516 4 2 709 26 5684 4103 4646 5549 +4517 4 2 709 26 4011 6016 5288 5747 +4518 4 2 709 26 4174 5657 5250 5436 +4519 4 2 709 26 5703 5868 5272 4473 +4520 4 2 709 26 4031 5936 4740 4913 +4521 4 2 709 26 3988 4257 5207 4564 +4522 4 2 709 26 5918 4015 4586 4964 +4523 4 2 709 26 4327 5665 4529 4191 +4524 4 2 709 26 5839 4463 5190 5239 +4525 4 2 709 26 4188 5913 4545 5040 +4526 4 2 709 26 5907 4372 5212 5787 +4527 4 2 709 26 5589 4160 4445 4324 +4528 4 2 709 26 5775 4729 5205 4353 +4529 4 2 709 26 3924 5729 4455 5252 +4530 4 2 709 26 4486 5046 4618 5556 +4531 4 2 709 26 4459 4075 5302 5374 +4532 4 2 709 26 3959 4504 5371 4577 +4533 4 2 709 26 4964 4076 4800 4825 +4534 4 2 709 26 4112 5663 4925 5182 +4535 4 2 709 26 4556 4102 4726 5475 +4536 4 2 709 26 3923 5046 4244 4618 +4537 4 2 709 26 5349 4134 4660 4932 +4538 4 2 709 26 4939 4584 5589 5786 +4539 4 2 709 26 4066 5538 4484 4546 +4540 4 2 709 26 4030 4297 4674 5612 +4541 4 2 709 26 3912 5690 5026 5242 +4542 4 2 709 26 3921 5196 4303 4898 +4543 4 2 709 26 4003 5091 5005 5566 +4544 4 2 709 26 4040 4859 4628 4705 +4545 4 2 709 26 3997 5712 4269 5189 +4546 4 2 709 26 5649 3869 4177 5125 +4547 4 2 709 26 3953 6042 4679 5677 +4548 4 2 709 26 3887 5383 4915 5346 +4549 4 2 709 26 4272 5659 4632 5497 +4550 4 2 709 26 4063 5935 4509 5075 +4551 4 2 709 26 4003 5643 5091 5566 +4552 4 2 709 26 3953 5677 4327 5665 +4553 4 2 709 26 5135 3985 4446 4574 +4554 4 2 709 26 5648 5879 4266 4865 +4555 4 2 709 26 5536 4391 4426 5330 +4556 4 2 709 26 5031 4541 4857 5666 +4557 4 2 709 26 5580 3948 4583 5011 +4558 4 2 709 26 6038 4143 4843 5202 +4559 4 2 709 26 4086 5639 5148 5384 +4560 4 2 709 26 4030 5138 4957 5612 +4561 4 2 709 26 5902 4278 4521 5554 +4562 4 2 709 26 4196 4814 5487 5548 +4563 4 2 709 26 4027 6061 4997 5524 +4564 4 2 709 26 5930 4622 5578 5906 +4565 4 2 709 26 4391 5724 5330 5243 +4566 4 2 709 26 4198 5727 4816 5507 +4567 4 2 709 26 3952 5638 4334 4721 +4568 4 2 709 26 5754 4234 5257 5575 +4569 4 2 709 26 5963 4296 5363 5784 +4570 4 2 709 26 4098 5545 4615 4910 +4571 4 2 709 26 3893 6048 4939 5716 +4572 4 2 709 26 4009 5553 4492 5145 +4573 4 2 709 26 5728 3921 4971 5196 +4574 4 2 709 26 6008 4178 4903 5842 +4575 4 2 709 26 3983 6008 5126 5598 +4576 4 2 709 26 5652 4069 4472 5117 +4577 4 2 709 26 4189 5399 4478 4691 +4578 4 2 709 26 6043 3957 5113 5831 +4579 4 2 709 26 3934 5254 4352 4979 +4580 4 2 709 26 6019 4378 4671 5416 +4581 4 2 709 26 3984 5564 4557 5104 +4582 4 2 709 26 4089 5413 4712 5565 +4583 4 2 709 26 5617 4170 4681 4856 +4584 4 2 709 26 5844 4289 4691 5537 +4585 4 2 709 26 4308 5596 4552 4842 +4586 4 2 709 26 4622 3937 4746 5411 +4587 4 2 709 26 4482 5866 4542 5498 +4588 4 2 709 26 3974 5431 5244 5285 +4589 4 2 709 26 5776 4335 4889 5331 +4590 4 2 709 26 4232 4956 5142 5752 +4591 4 2 709 26 4511 4583 5345 5580 +4592 4 2 709 26 6046 4862 5342 5826 +4593 4 2 709 26 4496 5197 4757 5164 +4594 4 2 709 26 5327 4013 4476 5161 +4595 4 2 709 26 4283 5683 4887 5579 +4596 4 2 709 26 6040 3961 4361 4676 +4597 4 2 709 26 4980 3974 4267 4744 +4598 4 2 709 26 5880 4186 4270 5226 +4599 4 2 709 26 3911 6065 5056 5306 +4600 4 2 709 26 5951 5469 4000 4972 +4601 4 2 709 26 5467 5435 4697 4045 +4602 4 2 709 26 4873 4264 5027 5760 +4603 4 2 709 26 5927 4097 4521 5281 +4604 4 2 709 26 5648 5879 5920 4266 +4605 4 2 709 26 3878 5882 5497 5724 +4606 4 2 709 26 4125 5959 4945 5200 +4607 4 2 709 26 5557 4245 4707 5203 +4608 4 2 709 26 5568 4043 4696 5057 +4609 4 2 709 26 5613 3959 4741 5193 +4610 4 2 709 26 5860 5917 4929 4209 +4611 4 2 709 26 4097 5772 4521 5281 +4612 4 2 709 26 5770 4005 4430 4733 +4613 4 2 709 26 5684 3897 4219 5070 +4614 4 2 709 26 5686 3887 4762 5383 +4615 4 2 709 26 5136 5970 4460 4080 +4616 4 2 709 26 3947 5899 5853 5875 +4617 4 2 709 26 5817 4268 4770 5403 +4618 4 2 709 26 5391 5227 4298 4434 +4619 4 2 709 26 5565 4089 4480 4712 +4620 4 2 709 26 4885 5319 5216 4231 +4621 4 2 709 26 4043 5585 4696 5057 +4622 4 2 709 26 5383 3887 4762 5346 +4623 4 2 709 26 6023 4816 3979 5727 +4624 4 2 709 26 5742 3946 4309 4576 +4625 4 2 709 26 5843 4022 4737 4923 +4626 4 2 709 26 4399 5810 4736 4973 +4627 4 2 709 26 5768 3999 4224 4982 +4628 4 2 709 26 5191 4042 4698 4850 +4629 4 2 709 26 4051 5787 4868 5212 +4630 4 2 709 26 4347 3869 4974 5548 +4631 4 2 709 26 5741 4323 5403 3928 +4632 4 2 709 26 4106 5875 4807 5310 +4633 4 2 709 26 4058 5492 5338 4191 +4634 4 2 709 26 4659 5622 4753 5151 +4635 4 2 709 26 4573 4879 4181 5389 +4636 4 2 709 26 5392 4040 4705 4859 +4637 4 2 709 26 5808 4331 5071 5448 +4638 4 2 709 26 5935 4063 5048 5075 +4639 4 2 709 26 4021 5972 5153 5473 +4640 4 2 709 26 5856 4415 5043 5381 +4641 4 2 709 26 5733 4095 4830 5520 +4642 4 2 709 26 4456 5947 5392 5870 +4643 4 2 709 26 4912 6005 4239 5224 +4644 4 2 709 26 5699 4078 4996 5532 +4645 4 2 709 26 4368 5908 5062 5406 +4646 4 2 709 26 4019 5482 4589 5444 +4647 4 2 709 26 4207 4044 4439 5802 +4648 4 2 709 26 4186 5658 4946 5238 +4649 4 2 709 26 5851 4276 4884 5457 +4650 4 2 709 26 5863 4047 4836 5327 +4651 4 2 709 26 5658 3909 5226 5375 +4652 4 2 709 26 5691 5608 4431 5558 +4653 4 2 709 26 4598 5891 4902 5443 +4654 4 2 709 26 4587 5966 4954 5630 +4655 4 2 709 26 4712 5413 5097 5565 +4656 4 2 709 26 5522 4836 5850 5045 +4657 4 2 709 26 4243 4164 5255 5994 +4658 4 2 709 26 5512 4119 4428 5005 +4659 4 2 709 26 4185 4973 3943 5810 +4660 4 2 709 26 4585 5994 5012 5802 +4661 4 2 709 26 5916 4222 5022 5349 +4662 4 2 709 26 5250 4202 5503 5436 +4663 4 2 709 26 5244 3869 4974 5125 +4664 4 2 709 26 3957 6043 4471 5831 +4665 4 2 709 26 3967 5394 4762 5383 +4666 4 2 709 26 5636 3936 4467 4539 +4667 4 2 709 26 6038 4143 4837 5247 +4668 4 2 709 26 4254 5181 5114 5126 +4669 4 2 709 26 4246 4383 4996 5394 +4670 4 2 709 26 5091 4473 5272 5868 +4671 4 2 709 26 4387 5916 5022 5118 +4672 4 2 709 26 5844 4289 4588 5629 +4673 4 2 709 26 3921 5728 4971 5231 +4674 4 2 709 26 6005 4515 4742 5853 +4675 4 2 709 26 4272 5930 5578 5906 +4676 4 2 709 26 5727 4198 4816 3979 +4677 4 2 709 26 5938 3921 5231 5449 +4678 4 2 709 26 5986 5765 4511 4381 +4679 4 2 709 26 5756 4175 3925 5477 +4680 4 2 709 26 4048 3867 4716 5227 +4681 4 2 709 26 3947 5875 4807 5711 +4682 4 2 709 26 5773 4161 4346 5555 +4683 4 2 709 26 5582 4352 5218 5473 +4684 4 2 709 26 5728 4621 5231 5449 +4685 4 2 709 26 5153 5033 4240 5722 +4686 4 2 709 26 5522 4301 5000 5320 +4687 4 2 709 26 4293 5857 4589 5631 +4688 4 2 709 26 5595 4089 4480 5438 +4689 4 2 709 26 4486 4618 5046 3923 +4690 4 2 709 26 5686 3887 4532 5336 +4691 4 2 709 26 5722 4096 5033 5115 +4692 4 2 709 26 4509 4814 4536 4179 +4693 4 2 709 26 4245 4062 4772 5250 +4694 4 2 709 26 5787 5575 5907 4372 +4695 4 2 709 26 5909 4118 4709 5167 +4696 4 2 709 26 5407 4150 4867 5273 +4697 4 2 709 26 4174 5359 3935 4610 +4698 4 2 709 26 4478 5956 4951 5399 +4699 4 2 709 26 5686 4078 4762 5336 +4700 4 2 709 26 3977 5976 4872 5884 +4701 4 2 709 26 4573 4181 4879 5730 +4702 4 2 709 26 4613 3872 5040 5082 +4703 4 2 709 26 4690 4154 5496 5754 +4704 4 2 709 26 5427 4572 4996 5394 +4705 4 2 709 26 4229 5731 4510 5150 +4706 4 2 709 26 4374 5353 4668 5312 +4707 4 2 709 26 4869 5556 5046 5442 +4708 4 2 709 26 4142 4065 4641 5187 +4709 4 2 709 26 5866 5339 4305 4594 +4710 4 2 709 26 4370 5916 5349 5523 +4711 4 2 709 26 5122 4650 5199 5669 +4712 4 2 709 26 4120 5942 4493 5137 +4713 4 2 709 26 4383 5833 5300 5673 +4714 4 2 709 26 5596 4166 4552 5514 +4715 4 2 709 26 5739 5748 5255 4204 +4716 4 2 709 26 5548 4196 5241 5244 +4717 4 2 709 26 5378 5880 4108 5746 +4718 4 2 709 26 6009 4312 5000 5771 +4719 4 2 709 26 5723 4483 4788 5655 +4720 4 2 709 26 4500 5931 4977 5166 +4721 4 2 709 26 4403 5741 5019 5422 +4722 4 2 709 26 4068 5788 4720 4741 +4723 4 2 709 26 6065 4014 5205 5592 +4724 4 2 709 26 5485 4167 4607 5083 +4725 4 2 709 26 4398 5956 4687 5348 +4726 4 2 709 26 3986 4351 4820 5215 +4727 4 2 709 26 4724 4066 4484 4546 +4728 4 2 709 26 4040 4761 4628 5615 +4729 4 2 709 26 4019 5819 4491 4904 +4730 4 2 709 26 5244 3869 4177 4988 +4731 4 2 709 26 4495 5830 4235 5141 +4732 4 2 709 26 3936 4214 4539 5039 +4733 4 2 709 26 5110 4128 5050 5415 +4734 4 2 709 26 5436 3880 5084 5359 +4735 4 2 709 26 4093 5379 4329 4987 +4736 4 2 709 26 4606 5747 4011 5288 +4737 4 2 709 26 4335 5614 5010 5430 +4738 4 2 709 26 5985 4053 4472 5186 +4739 4 2 709 26 4268 5865 4150 5035 +4740 4 2 709 26 5758 5780 4095 4713 +4741 4 2 709 26 4338 4162 5087 5326 +4742 4 2 709 26 5787 3908 4269 4868 +4743 4 2 709 26 6030 4311 4813 5396 +4744 4 2 709 26 3989 4366 4417 5101 +4745 4 2 709 26 5741 4180 5422 3928 +4746 4 2 709 26 4096 5936 5115 5722 +4747 4 2 709 26 5930 4182 5216 5578 +4748 4 2 709 26 3920 5763 4266 4872 +4749 4 2 709 26 5551 5560 5360 4776 +4750 4 2 709 26 6025 3965 4566 5744 +4751 4 2 709 26 4057 5267 4607 5074 +4752 4 2 709 26 4079 5418 4560 4635 +4753 4 2 709 26 4019 4169 4713 5132 +4754 4 2 709 26 4180 5366 4770 5054 +4755 4 2 709 26 3988 5916 4387 5118 +4756 4 2 709 26 5670 4243 5081 5661 +4757 4 2 709 26 4361 5751 4493 5149 +4758 4 2 709 26 5776 4244 4618 5331 +4759 4 2 709 26 4168 5503 5084 5436 +4760 4 2 709 26 3882 5839 4463 5190 +4761 4 2 709 26 5830 4235 5141 5709 +4762 4 2 709 26 5992 3894 5588 4212 +4763 4 2 709 26 3920 5996 5170 5763 +4764 4 2 709 26 4491 6026 4662 5483 +4765 4 2 709 26 4369 5948 5499 5777 +4766 4 2 709 26 5917 4225 4113 5199 +4767 4 2 709 26 4327 4191 4529 5338 +4768 4 2 709 26 4882 3934 4979 5254 +4769 4 2 709 26 3873 4842 4308 5538 +4770 4 2 709 26 5648 5751 4361 5940 +4771 4 2 709 26 6019 4280 5553 5738 +4772 4 2 709 26 5259 3887 4586 4915 +4773 4 2 709 26 4195 5598 4477 4178 +4774 4 2 709 26 5581 4228 4519 5169 +4775 4 2 709 26 4314 5020 4525 4950 +4776 4 2 709 26 5349 4932 5523 4134 +4777 4 2 709 26 5508 5295 4360 4192 +4778 4 2 709 26 4288 5693 4580 5542 +4779 4 2 709 26 4257 4370 5118 4994 +4780 4 2 709 26 4126 5107 4248 4984 +4781 4 2 709 26 4180 6006 5422 3928 +4782 4 2 709 26 3920 4266 4627 4872 +4783 4 2 709 26 4359 4467 5289 5636 +4784 4 2 709 26 3883 5985 4472 5186 +4785 4 2 709 26 6062 4340 4815 5508 +4786 4 2 709 26 5650 4006 4715 5042 +4787 4 2 709 26 5742 3946 4532 5139 +4788 4 2 709 26 5431 4196 5244 5285 +4789 4 2 709 26 4484 5841 5154 5270 +4790 4 2 709 26 4071 5383 4582 4915 +4791 4 2 709 26 3926 4789 4464 4733 +4792 4 2 709 26 5872 4090 4355 4849 +4793 4 2 709 26 4177 5467 4876 5307 +4794 4 2 709 26 5297 4159 4311 4542 +4795 4 2 709 26 5914 4255 4945 5200 +4796 4 2 709 26 5898 4477 5126 3954 +4797 4 2 709 26 5996 4485 5170 5763 +4798 4 2 709 26 4365 6030 4813 5396 +4799 4 2 709 26 5744 4931 4623 3965 +4800 4 2 709 26 4494 5842 4616 5425 +4801 4 2 709 26 4053 4171 4895 5985 +4802 4 2 709 26 5922 4442 4685 4739 +4803 4 2 709 26 5829 4424 4640 5398 +4804 4 2 709 26 5887 4114 4688 5197 +4805 4 2 709 26 4586 5686 5041 5383 +4806 4 2 709 26 4621 5728 4224 5449 +4807 4 2 709 26 5972 4406 5099 5473 +4808 4 2 709 26 4108 5746 4339 5378 +4809 4 2 709 26 4070 5541 4569 5127 +4810 4 2 709 26 4268 5865 4842 4150 +4811 4 2 709 26 5972 4240 5153 5514 +4812 4 2 709 26 4506 5987 5537 4045 +4813 4 2 709 26 5885 5839 5390 4575 +4814 4 2 709 26 4288 5637 4783 5542 +4815 4 2 709 26 5725 4018 4517 4824 +4816 4 2 709 26 4144 6006 5045 5251 +4817 4 2 709 26 3910 5024 5325 5818 +4818 4 2 709 26 5994 4243 5012 5661 +4819 4 2 709 26 5981 5223 5340 4037 +4820 4 2 709 26 4034 5291 4683 5069 +4821 4 2 709 26 4441 5983 4084 5495 +4822 4 2 709 26 4159 5889 4594 5866 +4823 4 2 709 26 4525 5964 5490 3939 +4824 4 2 709 26 4418 3881 4473 5064 +4825 4 2 709 26 5626 4009 4555 5003 +4826 4 2 709 26 5484 4069 4341 4613 +4827 4 2 709 26 4228 4853 5876 5966 +4828 4 2 709 26 4484 5658 3909 5841 +4829 4 2 709 26 4114 5720 4496 4757 +4830 4 2 709 26 3934 4882 4979 5710 +4831 4 2 709 26 4044 5802 5012 5661 +4832 4 2 709 26 5863 3889 5292 5491 +4833 4 2 709 26 4108 3930 5833 5903 +4834 4 2 709 26 5758 4095 4843 5247 +4835 4 2 709 26 6026 4098 4491 4662 +4836 4 2 709 26 4873 4137 4844 5591 +4837 4 2 709 26 5905 3985 4446 5036 +4838 4 2 709 26 4147 4885 5089 5818 +4839 4 2 709 26 4611 4283 5603 5953 +4840 4 2 709 26 4354 4197 4886 5697 +4841 4 2 709 26 5910 4224 4527 5558 +4842 4 2 709 26 4144 5385 5010 5614 +4843 4 2 709 26 5761 4213 4480 4819 +4844 4 2 709 26 3972 4327 5027 5760 +4845 4 2 709 26 3937 5411 4435 4740 +4846 4 2 709 26 4142 4065 5337 5257 +4847 4 2 709 26 6022 4038 4864 5080 +4848 4 2 709 26 5766 4764 4993 5607 +4849 4 2 709 26 3907 5972 5153 5514 +4850 4 2 709 26 4065 5649 4347 4641 +4851 4 2 709 26 3980 5376 4241 4581 +4852 4 2 709 26 4012 5995 4608 5535 +4853 4 2 709 26 4296 5963 4643 5784 +4854 4 2 709 26 6020 4235 4948 5141 +4855 4 2 709 26 5704 4050 5107 5217 +4856 4 2 709 26 5529 4547 5153 5355 +4857 4 2 709 26 5355 4268 4770 5054 +4858 4 2 709 26 5877 3940 4421 4624 +4859 4 2 709 26 4077 5954 5015 5236 +4860 4 2 709 26 5652 5117 4171 3912 +4861 4 2 709 26 4484 5658 5841 5270 +4862 4 2 709 26 5801 5010 5385 5614 +4863 4 2 709 26 5569 4086 4636 5148 +4864 4 2 709 26 4415 5852 5043 5574 +4865 4 2 709 26 4277 3970 4897 5454 +4866 4 2 709 26 4378 5351 4828 4054 +4867 4 2 709 26 4030 4889 5612 4674 +4868 4 2 709 26 6055 3890 4777 5165 +4869 4 2 709 26 5441 4019 4491 4904 +4870 4 2 709 26 4475 5945 4860 5843 +4871 4 2 709 26 4223 5975 4526 5592 +4872 4 2 709 26 4243 4164 5994 4763 +4873 4 2 709 26 4078 4790 5336 5686 +4874 4 2 709 26 5198 6048 4676 5334 +4875 4 2 709 26 4213 5103 4480 4819 +4876 4 2 709 26 5060 5476 4240 5972 +4877 4 2 709 26 4056 5344 4436 4937 +4878 4 2 709 26 5683 4017 4887 5579 +4879 4 2 709 26 4225 6028 4121 4935 +4880 4 2 709 26 3868 4143 4597 5221 +4881 4 2 709 26 4042 5815 4659 4795 +4882 4 2 709 26 5202 5960 5207 4358 +4883 4 2 709 26 4425 3921 4898 5196 +4884 4 2 709 26 4234 3878 5243 5724 +4885 4 2 709 26 4001 5609 5044 5261 +4886 4 2 709 26 6002 4064 4550 5221 +4887 4 2 709 26 5223 4255 4962 5194 +4888 4 2 709 26 4007 5897 4124 5232 +4889 4 2 709 26 5551 5560 4776 4050 +4890 4 2 709 26 4225 5912 5324 5528 +4891 4 2 709 26 5982 5913 4153 5040 +4892 4 2 709 26 5586 5536 5330 4391 +4893 4 2 709 26 4030 4889 5138 5612 +4894 4 2 709 26 4011 5513 4620 5409 +4895 4 2 709 26 5554 3941 4183 4629 +4896 4 2 709 26 5642 4242 4501 5156 +4897 4 2 709 26 4278 6046 4605 4863 +4898 4 2 709 26 6003 5087 5326 5746 +4899 4 2 709 26 4024 4734 4705 4859 +4900 4 2 709 26 4131 5849 4744 5261 +4901 4 2 709 26 4613 5040 4153 5913 +4902 4 2 709 26 4180 5403 4770 5269 +4903 4 2 709 26 5874 4329 4833 5636 +4904 4 2 709 26 5130 3986 4258 4413 +4905 4 2 709 26 5583 3961 4155 4676 +4906 4 2 709 26 5351 4054 4492 4840 +4907 4 2 709 26 4230 4476 5077 5500 +4908 4 2 709 26 4097 5805 4715 4967 +4909 4 2 709 26 3901 4624 5076 5260 +4910 4 2 709 26 5147 5962 5358 5566 +4911 4 2 709 26 5949 4073 4342 4979 +4912 4 2 709 26 5159 4007 4124 5279 +4913 4 2 709 26 4032 4436 5242 5779 +4914 4 2 709 26 4522 3965 4623 4931 +4915 4 2 709 26 4520 4995 5559 5918 +4916 4 2 709 26 4485 4279 4155 5334 +4917 4 2 709 26 4012 4288 4608 5785 +4918 4 2 709 26 5598 3901 5126 5439 +4919 4 2 709 26 5667 5439 4449 4254 +4920 4 2 709 26 4181 5979 5198 4676 +4921 4 2 709 26 4037 5223 4962 5194 +4922 4 2 709 26 5299 5361 4184 5573 +4923 4 2 709 26 5594 4230 4476 5077 +4924 4 2 709 26 4317 3975 4749 5301 +4925 4 2 709 26 5772 4097 4521 4715 +4926 4 2 709 26 4153 4149 5026 5452 +4927 4 2 709 26 4090 5872 4714 4722 +4928 4 2 709 26 4130 5938 4621 5449 +4929 4 2 709 26 4505 5167 4760 5162 +4930 4 2 709 26 5772 4097 5188 5281 +4931 4 2 709 26 3893 4939 4049 5203 +4932 4 2 709 26 4095 5733 4830 5247 +4933 4 2 709 26 3899 5704 4248 5107 +4934 4 2 709 26 4167 5016 5083 5485 +4935 4 2 709 26 5984 4400 5036 5239 +4936 4 2 709 26 5771 5206 6027 4518 +4937 4 2 709 26 3899 5704 4976 5373 +4938 4 2 709 26 4274 5779 5242 5296 +4939 4 2 709 26 6016 4457 5288 5642 +4940 4 2 709 26 5565 3929 4711 4963 +4941 4 2 709 26 4383 4996 5394 5427 +4942 4 2 709 26 3869 5244 4177 5125 +4943 4 2 709 26 5856 5929 5043 4415 +4944 4 2 709 26 5868 4299 4489 5719 +4945 4 2 709 26 4002 4551 4799 5175 +4946 4 2 709 26 4939 3893 4584 5786 +4947 4 2 709 26 6009 3965 4566 6025 +4948 4 2 709 26 4580 5835 5542 5697 +4949 4 2 709 26 5421 3909 4724 5375 +4950 4 2 709 26 5659 5882 5248 4632 +4951 4 2 709 26 4233 5888 4958 5166 +4952 4 2 709 26 5854 4416 4633 4745 +4953 4 2 709 26 6009 3965 6025 4312 +4954 4 2 709 26 4133 6055 5087 3918 +4955 4 2 709 26 5330 4369 4513 5271 +4956 4 2 709 26 5779 5242 5296 5653 +4957 4 2 709 26 3961 5583 4432 4835 +4958 4 2 709 26 6059 4210 4450 5619 +4959 4 2 709 26 4234 5794 4798 5243 +4960 4 2 709 26 3984 5564 4337 4557 +4961 4 2 709 26 3909 5421 5226 5375 +4962 4 2 709 26 5427 3967 4572 5394 +4963 4 2 709 26 5834 3965 4312 4522 +4964 4 2 709 26 5432 4115 4666 5102 +4965 4 2 709 26 5704 4211 4976 5098 +4966 4 2 709 26 4039 5536 4725 3925 +4967 4 2 709 26 5929 5974 3941 4415 +4968 4 2 709 26 4396 5612 4464 4957 +4969 4 2 709 26 5653 4052 4436 5242 +4970 4 2 709 26 4372 5575 4578 5410 +4971 4 2 709 26 5880 4186 5226 5304 +4972 4 2 709 26 3921 5728 5231 5449 +4973 4 2 709 26 6051 4826 4982 5727 +4974 4 2 709 26 5619 3971 4812 5450 +4975 4 2 709 26 5522 5850 4836 4092 +4976 4 2 709 26 4641 3869 4536 5123 +4977 4 2 709 26 4932 4134 4530 5491 +4978 4 2 709 26 5627 5437 4594 5689 +4979 4 2 709 26 6063 5568 6035 4758 +4980 4 2 709 26 5093 5487 3958 4179 +4981 4 2 709 26 5856 4215 4455 5061 +4982 4 2 709 26 4351 3986 4820 5593 +4983 4 2 709 26 5895 4401 4559 5228 +4984 4 2 709 26 5607 3916 4764 4993 +4985 4 2 709 26 6064 4233 4871 5931 +4986 4 2 709 26 6044 4220 4926 4624 +4987 4 2 709 26 5276 4068 4720 4960 +4988 4 2 709 26 3996 4277 5038 5932 +4989 4 2 709 26 5375 4066 4724 5368 +4990 4 2 709 26 5839 3882 4463 4575 +4991 4 2 709 26 4014 5775 5205 5592 +4992 4 2 709 26 5491 4134 4530 5148 +4993 4 2 709 26 5936 4740 4913 4029 +4994 4 2 709 26 4108 5880 5304 5326 +4995 4 2 709 26 5485 4247 5165 5954 +4996 4 2 709 26 6035 5568 4043 4758 +4997 4 2 709 26 5693 4450 5341 5504 +4998 4 2 709 26 5737 4024 4566 4705 +4999 4 2 709 26 5875 3947 4807 5310 +5000 4 2 709 26 5403 3873 4770 5269 +5001 4 2 709 26 5378 5880 5746 4423 +5002 4 2 709 26 3962 5536 4426 5330 +5003 4 2 709 26 4268 5865 5035 5355 +5004 4 2 709 26 4071 5383 4586 5041 +5005 4 2 709 26 4970 3960 4564 5848 +5006 4 2 709 26 5976 4047 4452 5500 +5007 4 2 709 26 4134 5491 4986 5148 +5008 4 2 709 26 6002 4866 5168 4273 +5009 4 2 709 26 4138 5792 4514 4593 +5010 4 2 709 26 5699 4246 4846 5083 +5011 4 2 709 26 4228 4853 5581 4554 +5012 4 2 709 26 5976 3960 4388 5500 +5013 4 2 709 26 4012 4608 5835 5535 +5014 4 2 709 26 4038 6022 4779 5080 +5015 4 2 709 26 5597 4655 4985 5076 +5016 4 2 709 26 5585 4043 4696 5122 +5017 4 2 709 26 4093 4987 4539 4951 +5018 4 2 709 26 4177 5849 4988 5307 +5019 4 2 709 26 5758 4560 5132 5247 +5020 4 2 709 26 4228 5581 4954 5169 +5021 4 2 709 26 5550 4216 4437 4001 +5022 4 2 709 26 6020 4235 4495 5052 +5023 4 2 709 26 5776 4335 5010 5430 +5024 4 2 709 26 5226 5658 5375 5407 +5025 4 2 709 26 4743 5965 5644 5937 +5026 4 2 709 26 5619 3971 4488 5286 +5027 4 2 709 26 4296 4091 4644 5264 +5028 4 2 709 26 6039 4388 5077 5500 +5029 4 2 709 26 5956 4398 4951 5399 +5030 4 2 709 26 4258 4105 5669 5130 +5031 4 2 709 26 4474 4898 3921 4303 +5032 4 2 709 26 5708 3944 4691 5537 +5033 4 2 709 26 4413 5980 4258 4785 +5034 4 2 709 26 5280 4046 4616 4898 +5035 4 2 709 26 5639 4660 5148 5384 +5036 4 2 709 26 4303 6051 4982 5727 +5037 4 2 709 26 4239 4006 4722 5650 +5038 4 2 709 26 5511 4107 4794 5049 +5039 4 2 709 26 6064 5888 4233 5166 +5040 4 2 709 26 5654 4228 4954 5169 +5041 4 2 709 26 4097 5927 4521 4715 +5042 4 2 709 26 5692 4090 4714 4722 +5043 4 2 709 26 5743 3953 4410 5720 +5044 4 2 709 26 5653 4052 5242 5296 +5045 4 2 709 26 5658 4150 4484 5375 +5046 4 2 709 26 5686 4015 4586 5041 +5047 4 2 709 26 5703 3922 4988 5456 +5048 4 2 709 26 5555 5805 4629 4097 +5049 4 2 709 26 4485 4062 4279 5334 +5050 4 2 709 26 5539 4431 6013 4877 +5051 4 2 709 26 4786 3906 4243 5044 +5052 4 2 709 26 4113 5917 4420 5708 +5053 4 2 709 26 4470 4154 4690 5892 +5054 4 2 709 26 4050 5704 4652 5217 +5055 4 2 709 26 4065 5907 3908 5257 +5056 4 2 709 26 5976 3977 4970 5884 +5057 4 2 709 26 5222 6016 5474 4457 +5058 4 2 709 26 5250 4202 5436 5657 +5059 4 2 709 26 4363 5025 4744 4980 +5060 4 2 709 26 3901 4254 5439 5807 +5061 4 2 709 26 4091 4927 4643 4296 +5062 4 2 709 26 4122 6044 4926 4624 +5063 4 2 709 26 4211 5827 4652 4934 +5064 4 2 709 26 3904 5792 5032 5465 +5065 4 2 709 26 4255 5914 4945 5106 +5066 4 2 709 26 4021 5060 4342 4730 +5067 4 2 709 26 4091 5988 4788 4927 +5068 4 2 709 26 5994 4164 5255 5739 +5069 4 2 709 26 5928 4021 4547 5473 +5070 4 2 709 26 5729 3924 4455 5082 +5071 4 2 709 26 5883 3877 4526 5592 +5072 4 2 709 26 5194 4037 4669 4962 +5073 4 2 709 26 4228 4853 5966 5581 +5074 4 2 709 26 5958 4556 5475 4252 +5075 4 2 709 26 4257 4370 3988 5118 +5076 4 2 709 26 4123 6004 4259 5902 +5077 4 2 709 26 4003 5643 4765 5091 +5078 4 2 709 26 6015 4295 4822 5332 +5079 4 2 709 26 5968 4030 4957 5366 +5080 4 2 709 26 4576 4235 5229 5742 +5081 4 2 709 26 4334 6011 4721 5638 +5082 4 2 709 26 5081 5666 4468 5255 +5083 4 2 709 26 3960 5500 4452 5491 +5084 4 2 709 26 4120 4835 4493 5942 +5085 4 2 709 26 3928 4323 4566 5741 +5086 4 2 709 26 5979 4361 5583 4676 +5087 4 2 709 26 3903 6034 4482 4727 +5088 4 2 709 26 4171 4053 5240 5305 +5089 4 2 709 26 3962 5536 4725 5390 +5090 4 2 709 26 3885 5392 4208 5129 +5091 4 2 709 26 4266 6039 4865 5879 +5092 4 2 709 26 3975 4317 4749 5295 +5093 4 2 709 26 4095 5758 5132 5247 +5094 4 2 709 26 5894 4385 4496 5675 +5095 4 2 709 26 4987 3997 4539 4951 +5096 4 2 709 26 5641 4596 4938 5321 +5097 4 2 709 26 4594 4238 5689 5277 +5098 4 2 709 26 4100 5509 4923 5020 +5099 4 2 709 26 5425 5895 4494 5842 +5100 4 2 709 26 5788 4068 4577 4741 +5101 4 2 709 26 4060 5491 4452 5292 +5102 4 2 709 26 4022 5020 4893 4923 +5103 4 2 709 26 5290 4069 4346 4884 +5104 4 2 709 26 5913 3912 4895 5084 +5105 4 2 709 26 4086 5544 4674 5148 +5106 4 2 709 26 4176 5901 4429 5210 +5107 4 2 709 26 4012 5723 4788 5655 +5108 4 2 709 26 4039 5839 4702 5190 +5109 4 2 709 26 5295 3919 4317 4997 +5110 4 2 709 26 3977 5648 4266 4865 +5111 4 2 709 26 4618 5736 5264 5556 +5112 4 2 709 26 5800 4356 4495 5052 +5113 4 2 709 26 4619 3937 4622 5411 +5114 4 2 709 26 4160 5786 5034 5356 +5115 4 2 709 26 5972 5476 5514 5099 +5116 4 2 709 26 4078 5394 4572 5383 +5117 4 2 709 26 5779 4032 4274 5242 +5118 4 2 709 26 5028 4063 4737 4893 +5119 4 2 709 26 4203 5703 4988 5456 +5120 4 2 709 26 3905 4142 5187 5337 +5121 4 2 709 26 4248 5955 4104 5900 +5122 4 2 709 26 4191 5822 4529 3874 +5123 4 2 709 26 4021 5928 4547 5134 +5124 4 2 709 26 5886 5821 4976 3957 +5125 4 2 709 26 4997 3919 5133 5295 +5126 4 2 709 26 4515 6005 4239 5853 +5127 4 2 709 26 5274 4146 4411 4756 +5128 4 2 709 26 5865 4547 5035 5355 +5129 4 2 709 26 5822 3972 5113 5472 +5130 4 2 709 26 5261 4001 4267 4744 +5131 4 2 709 26 5653 4056 4913 5344 +5132 4 2 709 26 5688 4066 4308 4552 +5133 4 2 709 26 5103 3929 4213 4480 +5134 4 2 709 26 4442 4079 4560 4837 +5135 4 2 709 26 6010 4127 4501 5700 +5136 4 2 709 26 4053 4481 5305 5065 +5137 4 2 709 26 4038 5470 4732 4864 +5138 4 2 709 26 4115 5898 5126 3954 +5139 4 2 709 26 4304 5873 5185 5433 +5140 4 2 709 26 5297 4141 4542 4882 +5141 4 2 709 26 6047 5228 4362 4903 +5142 4 2 709 26 5451 4512 5038 5400 +5143 4 2 709 26 4974 5431 5244 4330 +5144 4 2 709 26 4037 5605 4669 4962 +5145 4 2 709 26 4813 4159 5339 5396 +5146 4 2 709 26 3955 5415 4393 5105 +5147 4 2 709 26 4129 5989 4953 5178 +5148 4 2 709 26 5795 5928 4867 4352 +5149 4 2 709 26 5409 5610 4011 4440 +5150 4 2 709 26 5652 4171 5117 4472 +5151 4 2 709 26 4330 5244 4974 5125 +5152 4 2 709 26 6030 4100 5210 5674 +5153 4 2 709 26 4242 6016 5288 5642 +5154 4 2 709 26 3922 5703 4988 5307 +5155 4 2 709 26 5936 5411 4435 5115 +5156 4 2 709 26 4718 5585 4975 5122 +5157 4 2 709 26 4770 5596 4842 5355 +5158 4 2 709 26 5474 4504 5222 5371 +5159 4 2 709 26 4293 4685 5441 5444 +5160 4 2 709 26 4041 5706 4717 4775 +5161 4 2 709 26 5375 4066 4484 4724 +5162 4 2 709 26 6009 4337 5000 5282 +5163 4 2 709 26 5620 4395 4212 5108 +5164 4 2 709 26 3962 5885 4702 5390 +5165 4 2 709 26 6034 4133 5086 5624 +5166 4 2 709 26 5250 4202 5657 4772 +5167 4 2 709 26 4185 5937 4584 4939 +5168 4 2 709 26 4047 4892 4301 4836 +5169 4 2 709 26 5755 3914 5060 5424 +5170 4 2 709 26 5913 3912 5084 5690 +5171 4 2 709 26 4467 5636 4539 5289 +5172 4 2 709 26 5985 3883 5072 5186 +5173 4 2 709 26 4495 5830 4928 4576 +5174 4 2 709 26 4039 5839 5190 5239 +5175 4 2 709 26 4185 4584 5589 4939 +5176 4 2 709 26 5681 3871 4365 5396 +5177 4 2 709 26 5554 4278 4605 4863 +5178 4 2 709 26 4075 4575 5839 4463 +5179 4 2 709 26 5704 3899 4248 5373 +5180 4 2 709 26 4254 5131 4449 5667 +5181 4 2 709 26 4023 5742 4532 5262 +5182 4 2 709 26 4135 5935 5048 5075 +5183 4 2 709 26 5693 4450 4580 5542 +5184 4 2 709 26 5474 4074 4395 5108 +5185 4 2 709 26 4403 5741 4566 5737 +5186 4 2 709 26 4178 5842 4477 5066 +5187 4 2 709 26 4898 4046 4384 4642 +5188 4 2 709 26 5805 5004 4672 3883 +5189 4 2 709 26 4157 5685 4759 5515 +5190 4 2 709 26 4536 5075 4641 5123 +5191 4 2 709 26 5988 4091 4535 5192 +5192 4 2 709 26 5779 3867 4274 5227 +5193 4 2 709 26 5602 4038 4779 5080 +5194 4 2 709 26 5774 3963 4674 5544 +5195 4 2 709 26 4020 5035 4326 4673 +5196 4 2 709 26 5775 4729 4014 5205 +5197 4 2 709 26 4061 5699 4924 5336 +5198 4 2 709 26 5730 4181 4879 5149 +5199 4 2 709 26 4076 5259 4825 4964 +5200 4 2 709 26 4084 5983 4623 5495 +5201 4 2 709 26 5787 5907 5575 3908 +5202 4 2 709 26 4167 5078 4649 5681 +5203 4 2 709 26 4233 6064 5166 5931 +5204 4 2 709 26 4123 5902 4811 5220 +5205 4 2 709 26 3887 4964 4532 4825 +5206 4 2 709 26 5134 3867 4858 4913 +5207 4 2 709 26 4328 5811 4574 5764 +5208 4 2 709 26 5893 3900 4255 4563 +5209 4 2 709 26 5343 3997 4539 5039 +5210 4 2 709 26 4248 5955 4694 4104 +5211 4 2 709 26 6003 5087 5746 3918 +5212 4 2 709 26 4315 4080 4931 5136 +5213 4 2 709 26 4173 4406 5218 5473 +5214 4 2 709 26 4085 5632 4579 4738 +5215 4 2 709 26 4447 4237 4909 5429 +5216 4 2 709 26 5972 5514 5476 4240 +5217 4 2 709 26 4288 6021 4535 4750 +5218 4 2 709 26 4575 5404 5302 4738 +5219 4 2 709 26 5899 4672 5617 5650 +5220 4 2 709 26 5597 4041 4655 5076 +5221 4 2 709 26 5755 4631 4952 5424 +5222 4 2 709 26 5245 5518 4034 4942 +5223 4 2 709 26 4834 5707 3940 5036 +5224 4 2 709 26 4876 4980 4380 3974 +5225 4 2 709 26 6068 4158 4350 5519 +5226 4 2 709 26 3995 4873 5095 5760 +5227 4 2 709 26 5820 4460 4999 5446 +5228 4 2 709 26 3883 4967 5072 5186 +5229 4 2 709 26 4256 5292 4452 5180 +5230 4 2 709 26 3869 5241 4536 5123 +5231 4 2 709 26 4463 5707 4575 5120 +5232 4 2 709 26 5488 4042 4784 4852 +5233 4 2 709 26 4146 5855 4484 5154 +5234 4 2 709 26 4967 5555 5072 5163 +5235 4 2 709 26 5620 5613 5193 3959 +5236 4 2 709 26 4016 5966 4738 5876 +5237 4 2 709 26 4085 4414 4579 5471 +5238 4 2 709 26 5180 4047 4452 4872 +5239 4 2 709 26 5927 4521 4715 5554 +5240 4 2 709 26 5052 4356 4495 4945 +5241 4 2 709 26 4024 4734 4859 5154 +5242 4 2 709 26 4222 5916 5063 5523 +5243 4 2 709 26 4542 4882 5254 5455 +5244 4 2 709 26 4073 5710 4342 4979 +5245 4 2 709 26 5968 4030 4803 5138 +5246 4 2 709 26 4147 6043 5113 5539 +5247 4 2 709 26 4125 4563 4755 5893 +5248 4 2 709 26 5362 4160 4481 5356 +5249 4 2 709 26 3889 5614 5850 5251 +5250 4 2 709 26 5849 3922 4988 5307 +5251 4 2 709 26 5167 5406 5909 4118 +5252 4 2 709 26 5411 4031 4740 4746 +5253 4 2 709 26 4248 5955 5030 5577 +5254 4 2 709 26 4391 5724 4426 5330 +5255 4 2 709 26 4037 5340 5053 5143 +5256 4 2 709 26 4100 5509 4365 4923 +5257 4 2 709 26 4289 5844 4691 5526 +5258 4 2 709 26 5668 4067 4950 5028 +5259 4 2 709 26 3918 6003 4055 5746 +5260 4 2 709 26 3993 4265 4681 5329 +5261 4 2 709 26 4161 5484 4341 5082 +5262 4 2 709 26 3961 5942 4493 4835 +5263 4 2 709 26 4038 5602 4706 5080 +5264 4 2 709 26 4372 4051 5212 5787 +5265 4 2 709 26 3876 5767 5795 4352 +5266 4 2 709 26 5686 4015 4790 4964 +5267 4 2 709 26 5813 6024 5507 4543 +5268 4 2 709 26 5713 3915 4268 5270 +5269 4 2 709 26 5456 5994 4164 4763 +5270 4 2 709 26 5749 4474 4644 5380 +5271 4 2 709 26 5957 4056 4913 5653 +5272 4 2 709 26 4056 4764 4533 5344 +5273 4 2 709 26 3982 5109 4442 4614 +5274 4 2 709 26 5925 4480 4819 5761 +5275 4 2 709 26 5444 5857 5482 4589 +5276 4 2 709 26 4850 4042 4698 4784 +5277 4 2 709 26 5739 5748 4164 5255 +5278 4 2 709 26 4089 6041 4562 5595 +5279 4 2 709 26 4165 5410 4372 4578 +5280 4 2 709 26 5708 3944 4420 4691 +5281 4 2 709 26 4183 5851 4714 5004 +5282 4 2 709 26 4164 5994 5607 5739 +5283 4 2 709 26 4072 4447 4909 5429 +5284 4 2 709 26 3961 6040 4493 5854 +5285 4 2 709 26 4088 5546 4336 5185 +5286 4 2 709 26 4143 5440 4837 5247 +5287 4 2 709 26 5539 6013 4431 4082 +5288 4 2 709 26 5496 4234 4798 5243 +5289 4 2 709 26 4299 5435 4697 4963 +5290 4 2 709 26 5117 4149 4526 5026 +5291 4 2 709 26 3901 4254 5807 5114 +5292 4 2 709 26 5205 3931 4353 4537 +5293 4 2 709 26 4116 5848 5408 4221 +5294 4 2 709 26 4206 5684 4646 5549 +5295 4 2 709 26 5774 4335 4674 4889 +5296 4 2 709 26 5592 3877 4526 5315 +5297 4 2 709 26 3965 6025 4312 4623 +5298 4 2 709 26 4309 3975 5262 5301 +5299 4 2 709 26 4056 4764 5344 4937 +5300 4 2 709 26 4300 5759 5072 5163 +5301 4 2 709 26 4076 5918 4520 5806 +5302 4 2 709 26 5273 4547 5865 4867 +5303 4 2 709 26 4027 4604 5133 4997 +5304 4 2 709 26 5706 4041 4717 4747 +5305 4 2 709 26 3953 5675 4385 4630 +5306 4 2 709 26 5766 4203 5456 5703 +5307 4 2 709 26 3919 4470 4317 4997 +5308 4 2 709 26 4722 5899 5650 5692 +5309 4 2 709 26 4883 4099 4559 5323 +5310 4 2 709 26 6002 5998 5168 4866 +5311 4 2 709 26 5227 4032 4298 4434 +5312 4 2 709 26 5497 4025 4426 5395 +5313 4 2 709 26 4164 5272 4763 5044 +5314 4 2 709 26 5627 3911 5434 5437 +5315 4 2 709 26 4230 4638 5077 5871 +5316 4 2 709 26 6012 4269 5712 5858 +5317 4 2 709 26 4181 4361 5149 5940 +5318 4 2 709 26 5699 4762 4846 5394 +5319 4 2 709 26 4052 5690 4593 5242 +5320 4 2 709 26 3975 4317 5262 5301 +5321 4 2 709 26 4177 5467 4398 5079 +5322 4 2 709 26 4012 5785 4608 5234 +5323 4 2 709 26 4629 5927 4715 5554 +5324 4 2 709 26 4360 5489 5210 4165 +5325 4 2 709 26 4158 6068 5331 5519 +5326 4 2 709 26 5227 4274 4434 5201 +5327 4 2 709 26 5693 4450 5504 5619 +5328 4 2 709 26 4298 4764 4937 5344 +5329 4 2 709 26 4078 5383 4572 5041 +5330 4 2 709 26 5954 4339 4108 5746 +5331 4 2 709 26 5348 3973 4687 5125 +5332 4 2 709 26 5767 3934 4352 5218 +5333 4 2 709 26 4030 5968 4957 5138 +5334 4 2 709 26 4163 4240 4971 5231 +5335 4 2 709 26 5375 5368 5002 4066 +5336 4 2 709 26 5744 3965 4705 5136 +5337 4 2 709 26 6018 3963 4733 5426 +5338 4 2 709 26 4457 5474 5642 6016 +5339 4 2 709 26 3897 5663 4639 5182 +5340 4 2 709 26 5327 4013 4636 5148 +5341 4 2 709 26 5316 4031 4730 5287 +5342 4 2 709 26 4310 5586 4513 4990 +5343 4 2 709 26 5873 4438 5546 3927 +5344 4 2 709 26 4509 5075 4536 3927 +5345 4 2 709 26 5598 3901 4195 4477 +5346 4 2 709 26 5223 5340 4709 4905 +5347 4 2 709 26 5555 5805 4097 4967 +5348 4 2 709 26 4202 5657 4772 5469 +5349 4 2 709 26 3899 5704 5107 5217 +5350 4 2 709 26 5955 4248 4984 5577 +5351 4 2 709 26 4202 5436 4518 5159 +5352 4 2 709 26 5614 3942 5010 5430 +5353 4 2 709 26 4348 5638 4712 5413 +5354 4 2 709 26 4786 3906 4857 5666 +5355 4 2 709 26 4232 5149 4493 5142 +5356 4 2 709 26 5567 4282 4443 5469 +5357 4 2 709 26 5875 3947 5310 5853 +5358 4 2 709 26 5775 5726 4263 4793 +5359 4 2 709 26 3936 5059 4467 4539 +5360 4 2 709 26 5916 4222 5349 5523 +5361 4 2 709 26 5714 4375 4544 5232 +5362 4 2 709 26 4885 5319 4231 5325 +5363 4 2 709 26 5242 4052 4436 4593 +5364 4 2 709 26 5966 4587 5404 5630 +5365 4 2 709 26 4209 5860 5353 5530 +5366 4 2 709 26 3871 5973 4429 5365 +5367 4 2 709 26 6068 4091 4643 4296 +5368 4 2 709 26 4228 4853 4554 5876 +5369 4 2 709 26 4047 5976 4452 4872 +5370 4 2 709 26 6034 5047 4727 3903 +5371 4 2 709 26 4353 5364 4751 4848 +5372 4 2 709 26 5612 4297 4464 4957 +5373 4 2 709 26 4333 4033 5332 4419 +5374 4 2 709 26 5294 5852 4531 4321 +5375 4 2 709 26 5348 5079 3944 4330 +5376 4 2 709 26 4080 6036 5420 4315 +5377 4 2 709 26 4181 6040 4361 4676 +5378 4 2 709 26 4346 5851 5004 5290 +5379 4 2 709 26 4075 5905 4459 5707 +5380 4 2 709 26 3884 5371 4786 5222 +5381 4 2 709 26 4318 3936 4467 5376 +5382 4 2 709 26 5870 3915 4859 5270 +5383 4 2 709 26 4183 3941 4379 5457 +5384 4 2 709 26 5290 5205 3994 4537 +5385 4 2 709 26 4030 4889 4674 4335 +5386 4 2 709 26 3901 4254 5114 5126 +5387 4 2 709 26 5966 4016 4738 5404 +5388 4 2 709 26 5211 3973 4330 4465 +5389 4 2 709 26 4873 5027 5095 5760 +5390 4 2 709 26 5231 4240 4971 5514 +5391 4 2 709 26 5951 4000 4771 4972 +5392 4 2 709 26 5188 4907 5281 4097 +5393 4 2 709 26 3869 5125 4347 4974 +5394 4 2 709 26 4034 5245 4942 5182 +5395 4 2 709 26 3912 4171 4593 5516 +5396 4 2 709 26 4163 3914 5033 5319 +5397 4 2 709 26 4185 4973 5810 4399 +5398 4 2 709 26 4295 4822 5332 3937 +5399 4 2 709 26 5435 3922 4489 4876 +5400 4 2 709 26 3924 4433 4761 5615 +5401 4 2 709 26 4885 5818 4529 5325 +5402 4 2 709 26 5702 4128 4969 5415 +5403 4 2 709 26 5165 5015 4077 5954 +5404 4 2 709 26 5381 3989 4259 4639 +5405 4 2 709 26 4619 4182 5578 5943 +5406 4 2 709 26 4436 4138 4593 5792 +5407 4 2 709 26 4159 5396 4311 4542 +5408 4 2 709 26 3899 4831 4248 5373 +5409 4 2 709 26 3934 5534 5218 5767 +5410 4 2 709 26 5438 4089 4299 4827 +5411 4 2 709 26 4133 4305 5437 5624 +5412 4 2 709 26 4932 4134 5491 5523 +5413 4 2 709 26 5762 4363 4728 5347 +5414 4 2 709 26 4164 5456 4763 5272 +5415 4 2 709 26 4460 5061 4080 5970 +5416 4 2 709 26 4381 4511 5377 5765 +5417 4 2 709 26 5908 5753 4343 5354 +5418 4 2 709 26 4073 5659 5248 5287 +5419 4 2 709 26 5355 4020 4547 5035 +5420 4 2 709 26 5646 4280 4600 5553 +5421 4 2 709 26 4068 4263 4960 5726 +5422 4 2 709 26 5481 4081 4454 5389 +5423 4 2 709 26 5476 4406 4651 5099 +5424 4 2 709 26 5382 5485 4777 4607 +5425 4 2 709 26 4787 5818 5539 5089 +5426 4 2 709 26 5813 5966 4016 4853 +5427 4 2 709 26 4015 5686 4586 4964 +5428 4 2 709 26 5904 4401 4903 5228 +5429 4 2 709 26 5245 5518 5291 4034 +5430 4 2 709 26 5122 4225 6028 4121 +5431 4 2 709 26 5473 4173 4406 5099 +5432 4 2 709 26 5739 4937 4993 5401 +5433 4 2 709 26 4431 4264 6013 4877 +5434 4 2 709 26 4333 3937 4740 4746 +5435 4 2 709 26 5957 4759 5032 5506 +5436 4 2 709 26 5358 4003 4390 5147 +5437 4 2 709 26 4181 5149 4361 6040 +5438 4 2 709 26 4078 5699 4762 5336 +5439 4 2 709 26 4031 5936 4913 5316 +5440 4 2 709 26 5657 4202 4518 5567 +5441 4 2 709 26 3930 4561 4846 5267 +5442 4 2 709 26 5091 4119 4473 5868 +5443 4 2 709 26 5020 3891 4525 4950 +5444 4 2 709 26 5549 4671 5317 5416 +5445 4 2 709 26 3977 5979 4266 5648 +5446 4 2 709 26 4147 3874 4529 5822 +5447 4 2 709 26 5903 3930 5083 5485 +5448 4 2 709 26 3906 4437 5044 4786 +5449 4 2 709 26 5963 4296 5280 5938 +5450 4 2 709 26 5905 4446 4459 5707 +5451 4 2 709 26 4146 5570 4734 4797 +5452 4 2 709 26 4923 4022 4737 4893 +5453 4 2 709 26 4222 6018 5349 5523 +5454 4 2 709 26 3971 5619 4210 5450 +5455 4 2 709 26 3947 5899 5617 5853 +5456 4 2 709 26 3986 5215 4258 4413 +5457 4 2 709 26 4256 4060 4452 5292 +5458 4 2 709 26 4167 5485 4607 4777 +5459 4 2 709 26 4208 5658 4946 5270 +5460 4 2 709 26 5138 3923 4889 5331 +5461 4 2 709 26 4188 5985 4300 4895 +5462 4 2 709 26 3944 4691 4189 4420 +5463 4 2 709 26 4050 5479 4694 5107 +5464 4 2 709 26 5335 3943 4445 4973 +5465 4 2 709 26 4045 5435 4626 4876 +5466 4 2 709 26 5449 4130 4474 5397 +5467 4 2 709 26 5394 4078 4572 4996 +5468 4 2 709 26 5975 3931 5367 5592 +5469 4 2 709 26 3879 5463 5573 5695 +5470 4 2 709 26 3996 5932 5038 5451 +5471 4 2 709 26 5145 4009 4377 4840 +5472 4 2 709 26 4134 4530 4660 4932 +5473 4 2 709 26 5653 4029 4858 4913 +5474 4 2 709 26 4915 4148 4364 4878 +5475 4 2 709 26 4005 5770 5014 5284 +5476 4 2 709 26 5508 4193 4340 4896 +5477 4 2 709 26 3947 5899 4672 5617 +5478 4 2 709 26 4345 4027 4749 5524 +5479 4 2 709 26 5831 4976 5821 3957 +5480 4 2 709 26 4456 5947 5246 5392 +5481 4 2 709 26 5710 5587 5794 4570 +5482 4 2 709 26 5820 3950 4382 5061 +5483 4 2 709 26 5744 3885 4705 4734 +5484 4 2 709 26 4267 4489 3922 4876 +5485 4 2 709 26 3928 4337 5009 5522 +5486 4 2 709 26 4728 4571 5762 5505 +5487 4 2 709 26 5088 5723 5655 4483 +5488 4 2 709 26 3910 5024 4844 5325 +5489 4 2 709 26 4635 5247 4560 4837 +5490 4 2 709 26 4266 6039 4872 4865 +5491 4 2 709 26 5093 5487 4179 4974 +5492 4 2 709 26 4158 5915 4803 5331 +5493 4 2 709 26 4927 4091 4643 4788 +5494 4 2 709 26 4752 4675 5340 5981 +5495 4 2 709 26 4009 5738 4600 5626 +5496 4 2 709 26 4029 5957 4913 5653 +5497 4 2 709 26 4595 3971 5450 4812 +5498 4 2 709 26 4239 5899 4849 5853 +5499 4 2 709 26 6041 4233 4562 4871 +5500 4 2 709 26 5902 4278 4811 5220 +5501 4 2 709 26 4431 4082 4787 5539 +5502 4 2 709 26 4494 5988 4927 5655 +5503 4 2 709 26 4272 5930 5216 5578 +5504 4 2 709 26 4043 6035 4758 4778 +5505 4 2 709 26 4078 5846 4572 4996 +5506 4 2 709 26 5776 4409 4875 5430 +5507 4 2 709 26 5934 4158 5331 5519 +5508 4 2 709 26 5317 5717 4828 4378 +5509 4 2 709 26 3950 5820 4444 5501 +5510 4 2 709 26 5649 4203 4851 4988 +5511 4 2 709 26 5929 4346 3941 5773 +5512 4 2 709 26 4073 3902 5248 5710 +5513 4 2 709 26 3977 5648 4865 5112 +5514 4 2 709 26 5333 4349 4358 4194 +5515 4 2 709 26 3912 5084 4593 4895 +5516 4 2 709 26 4220 4624 4421 4926 +5517 4 2 709 26 5198 6048 3893 5716 +5518 4 2 709 26 5950 4959 5311 4766 +5519 4 2 709 26 3967 5427 4383 5394 +5520 4 2 709 26 5682 4260 5274 5385 +5521 4 2 709 26 5338 4191 4529 3874 +5522 4 2 709 26 5200 4669 4962 5194 +5523 4 2 709 26 4460 5246 5989 4215 +5524 4 2 709 26 5643 4003 4765 5451 +5525 4 2 709 26 4183 5692 5004 4714 +5526 4 2 709 26 4054 4640 4598 5351 +5527 4 2 709 26 4143 3868 4597 5202 +5528 4 2 709 26 3869 5640 4988 5241 +5529 4 2 709 26 5900 3980 4248 5030 +5530 4 2 709 26 3907 5473 4547 5153 +5531 4 2 709 26 4135 4165 5048 5489 +5532 4 2 709 26 4250 3901 5076 5260 +5533 4 2 709 26 5397 5749 4474 4303 +5534 4 2 709 26 5615 4040 4455 5082 +5535 4 2 709 26 5270 3915 4268 5035 +5536 4 2 709 26 3931 5775 4353 4751 +5537 4 2 709 26 4614 4079 4320 5599 +5538 4 2 709 26 5981 5340 5223 4675 +5539 4 2 709 26 4472 4171 5117 5975 +5540 4 2 709 26 5365 5973 5508 5674 +5541 4 2 709 26 4406 5582 5218 5473 +5542 4 2 709 26 4303 6023 3979 5727 +5543 4 2 709 26 4127 5588 4634 5100 +5544 4 2 709 26 4493 5942 4745 5137 +5545 4 2 709 26 5423 4061 4607 5083 +5546 4 2 709 26 5111 4515 4849 5875 +5547 4 2 709 26 6066 4390 5038 5400 +5548 4 2 709 26 5668 3891 4893 4950 +5549 4 2 709 26 5406 5167 5908 4118 +5550 4 2 709 26 4013 5327 4530 5148 +5551 4 2 709 26 5076 6044 4624 5898 +5552 4 2 709 26 4289 5844 4588 5537 +5553 4 2 709 26 4495 4235 5800 5052 +5554 4 2 709 26 4335 5776 4889 5774 +5555 4 2 709 26 4411 3971 4488 5824 +5556 4 2 709 26 4369 5948 5330 5499 +5557 4 2 709 26 4354 4883 5323 5715 +5558 4 2 709 26 5905 4725 4075 4310 +5559 4 2 709 26 4175 5756 4035 5477 +5560 4 2 709 26 5871 4230 4936 5594 +5561 4 2 709 26 5947 4040 5040 5246 +5562 4 2 709 26 4003 5566 5147 5358 +5563 4 2 709 26 4428 5761 4861 4711 +5564 4 2 709 26 4893 5668 4950 5028 +5565 4 2 709 26 4465 5991 5093 5312 +5566 4 2 709 26 5953 5603 4855 4283 +5567 4 2 709 26 5902 4123 4862 5213 +5568 4 2 709 26 3890 5345 4499 5165 +5569 4 2 709 26 4227 5745 4496 5164 +5570 4 2 709 26 3971 5824 4411 5105 +5571 4 2 709 26 3907 4173 5473 5099 +5572 4 2 709 26 5991 3973 4801 5211 +5573 4 2 709 26 3882 5120 4463 4575 +5574 4 2 709 26 3891 5020 4893 4950 +5575 4 2 709 26 3885 4859 5392 4705 +5576 4 2 709 26 6005 4515 5224 5521 +5577 4 2 709 26 4482 5866 4305 5624 +5578 4 2 709 26 5771 4301 5000 5522 +5579 4 2 709 26 4027 6061 4604 4997 +5580 4 2 709 26 5589 3943 4445 4389 +5581 4 2 709 26 4204 5748 5255 4307 +5582 4 2 709 26 6018 4222 4789 5523 +5583 4 2 709 26 4297 4645 5292 5998 +5584 4 2 709 26 5907 4142 4578 5257 +5585 4 2 709 26 5081 5255 5994 4243 +5586 4 2 709 26 5943 4137 4619 5600 +5587 4 2 709 26 4843 3949 5758 6038 +5588 4 2 709 26 5707 4075 4463 4575 +5589 4 2 709 26 5322 4015 4664 5041 +5590 4 2 709 26 3913 5803 5013 5279 +5591 4 2 709 26 4045 4506 4710 5537 +5592 4 2 709 26 4006 5650 4239 5042 +5593 4 2 709 26 4222 5426 4733 5230 +5594 4 2 709 26 3973 5348 4330 5125 +5595 4 2 709 26 5856 5252 5061 4455 +5596 4 2 709 26 4624 4122 4421 4926 +5597 4 2 709 26 5362 4245 5203 5356 +5598 4 2 709 26 4882 3934 5254 5455 +5599 4 2 709 26 3886 5688 4483 4643 +5600 4 2 709 26 5382 4247 4338 4482 +5601 4 2 709 26 5962 4320 5147 5358 +5602 4 2 709 26 4035 4148 4364 4915 +5603 4 2 709 26 5555 5805 3883 4629 +5604 4 2 709 26 4171 5975 4472 5352 +5605 4 2 709 26 4077 5903 4507 5485 +5606 4 2 709 26 3940 4122 4421 4624 +5607 4 2 709 26 4074 5371 4857 5108 +5608 4 2 709 26 6038 4358 5202 5207 +5609 4 2 709 26 5555 5805 4967 3883 +5610 4 2 709 26 5294 5852 4187 5043 +5611 4 2 709 26 5759 3993 5013 5072 +5612 4 2 709 26 4191 4058 4947 5338 +5613 4 2 709 26 4269 5858 5189 5712 +5614 4 2 709 26 4154 4470 4690 5496 +5615 4 2 709 26 3960 4530 5500 5491 +5616 4 2 709 26 5805 4006 4629 4715 +5617 4 2 709 26 4787 4431 5539 5818 +5618 4 2 709 26 3962 5330 4369 5006 +5619 4 2 709 26 5045 4645 3889 5251 +5620 4 2 709 26 3877 4439 5447 4207 +5621 4 2 709 26 4761 4040 4628 4705 +5622 4 2 709 26 4243 5670 5012 5661 +5623 4 2 709 26 5585 4696 4975 5122 +5624 4 2 709 26 3963 6018 4733 4789 +5625 4 2 709 26 5863 5500 5327 4530 +5626 4 2 709 26 4764 4298 4533 5344 +5627 4 2 709 26 4085 5632 4908 5471 +5628 4 2 709 26 5239 4463 4834 5036 +5629 4 2 709 26 5664 5187 4641 4139 +5630 4 2 709 26 3945 4288 5693 4580 +5631 4 2 709 26 4047 3920 4872 5180 +5632 4 2 709 26 5097 3929 4963 5064 +5633 4 2 709 26 5757 3994 4891 5478 +5634 4 2 709 26 4443 5386 4124 5124 +5635 4 2 709 26 3895 4258 5669 5130 +5636 4 2 709 26 4010 5964 4314 5321 +5637 4 2 709 26 5876 4016 4575 4738 +5638 4 2 709 26 3974 4980 4363 4744 +5639 4 2 709 26 4291 4173 4867 5002 +5640 4 2 709 26 4243 4164 4763 5044 +5641 4 2 709 26 4057 5382 4338 4482 +5642 4 2 709 26 4801 5867 4890 5858 +5643 4 2 709 26 5875 4515 4849 5853 +5644 4 2 709 26 5391 4716 5316 5227 +5645 4 2 709 26 5223 5340 4037 4709 +5646 4 2 709 26 5440 4830 5247 4143 +5647 4 2 709 26 5743 4227 4496 5164 +5648 4 2 709 26 3904 5792 4759 5032 +5649 4 2 709 26 5781 4301 5000 5124 +5650 4 2 709 26 5132 5444 4713 4019 +5651 4 2 709 26 4089 6041 4348 5413 +5652 4 2 709 26 5217 5551 4652 4050 +5653 4 2 709 26 4099 5258 5088 5152 +5654 4 2 709 26 5686 4015 4664 4790 +5655 4 2 709 26 4039 5190 4702 4952 +5656 4 2 709 26 3945 4483 5723 5286 +5657 4 2 709 26 4060 5523 4789 5063 +5658 4 2 709 26 5197 4114 4496 4757 +5659 4 2 709 26 4940 5971 5107 5217 +5660 4 2 709 26 5844 4691 5417 5537 +5661 4 2 709 26 6081 6035 883 5057 +5662 4 2 709 26 5739 5748 4993 4164 +5663 4 2 709 26 4152 5065 5186 5305 +5664 4 2 709 26 5327 5850 4092 4836 +5665 4 2 709 26 3953 6042 5743 4679 +5666 4 2 709 26 5494 4140 4825 4961 +5667 4 2 709 26 5767 4284 4906 5267 +5668 4 2 709 26 5763 5884 4485 5836 +5669 4 2 709 26 5996 4256 4452 5180 +5670 4 2 709 26 4276 5851 4891 5457 +5671 4 2 709 26 4361 5979 5648 5940 +5672 4 2 709 26 5852 4966 4321 5011 +5673 4 2 709 26 5932 4512 5451 4765 +5674 4 2 709 26 3891 5668 4838 4950 +5675 4 2 709 26 5273 4547 5035 5865 +5676 4 2 709 26 5612 3963 4674 4889 +5677 4 2 709 26 3944 5348 4330 5211 +5678 4 2 709 26 4912 6005 5042 4239 +5679 4 2 709 26 5841 4146 4484 5154 +5680 4 2 709 26 4182 5930 4622 5578 +5681 4 2 709 26 5538 4066 4484 4842 +5682 4 2 709 26 4073 4716 5316 5391 +5683 4 2 709 26 4183 5851 4346 5457 +5684 4 2 709 26 4530 4134 4660 5148 +5685 4 2 709 26 4276 4531 4884 5457 +5686 4 2 709 26 4726 5790 4286 4841 +5687 4 2 709 26 5081 5994 5255 5739 +5688 4 2 709 26 4485 4062 5334 4373 +5689 4 2 709 26 3871 5455 4429 5210 +5690 4 2 709 26 5819 4019 5132 4169 +5691 4 2 709 26 5387 5137 5942 4120 +5692 4 2 709 26 4999 5820 5446 5501 +5693 4 2 709 26 5728 4163 4971 5231 +5694 4 2 709 26 5020 4022 4893 4950 +5695 4 2 709 26 5024 3910 4844 5299 +5696 4 2 709 26 5917 4113 4774 5708 +5697 4 2 709 26 5346 4582 5383 4915 +5698 4 2 709 26 3973 4974 4330 4465 +5699 4 2 709 26 4041 5543 4880 5029 +5700 4 2 709 26 4115 5898 3954 5432 +5701 4 2 709 26 3941 5974 4417 5902 +5702 4 2 709 26 5907 4065 4142 5257 +5703 4 2 709 26 5242 4032 4274 5026 +5704 4 2 709 26 4235 5709 4948 5141 +5705 4 2 709 26 3904 5032 5250 5465 +5706 4 2 709 26 5340 4037 4709 5143 +5707 4 2 709 26 4495 5830 4576 4235 +5708 4 2 709 26 4091 4296 4644 4927 +5709 4 2 709 26 4722 5899 4849 4239 +5710 4 2 709 26 4033 5440 4349 5221 +5711 4 2 709 26 6009 5000 5522 5771 +5712 4 2 709 26 4499 4077 4555 5750 +5713 4 2 709 26 5582 4021 4352 5473 +5714 4 2 709 26 4275 4197 5696 3992 +5715 4 2 709 26 5667 5439 4107 5511 +5716 4 2 709 26 5640 4585 4988 5241 +5717 4 2 709 26 5586 4391 5330 5243 +5718 4 2 709 26 4829 3891 4525 5020 +5719 4 2 709 26 4113 5199 4225 4656 +5720 4 2 709 26 4788 6068 4643 4158 +5721 4 2 709 26 5973 4192 5365 5508 +5722 4 2 709 26 3903 4542 4482 5866 +5723 4 2 709 26 4200 6006 5422 5680 +5724 4 2 709 26 5649 4065 4347 5125 +5725 4 2 709 26 4203 5766 5456 5607 +5726 4 2 709 26 4038 5470 4864 5080 +5727 4 2 709 26 4182 5600 4619 5411 +5728 4 2 709 26 5668 4838 4950 5140 +5729 4 2 709 26 5394 3967 4762 4846 +5730 4 2 709 26 3884 5670 4243 4786 +5731 4 2 709 26 3977 5976 4865 4872 +5732 4 2 709 26 5974 3941 4417 5927 +5733 4 2 709 26 4761 3965 4705 5737 +5734 4 2 709 26 5957 4333 4759 5506 +5735 4 2 709 26 5638 3952 4348 4721 +5736 4 2 709 26 5544 3963 4674 4986 +5737 4 2 709 26 5936 4858 4913 5134 +5738 4 2 709 26 5679 5522 5009 4337 +5739 4 2 709 26 5979 4266 5170 5763 +5740 4 2 709 26 4093 4359 5289 5636 +5741 4 2 709 26 4230 4476 5500 4530 +5742 4 2 709 26 5240 4138 4514 4593 +5743 4 2 709 26 4321 5453 5434 5437 +5744 4 2 709 26 5681 3871 4607 5423 +5745 4 2 709 26 5807 4107 4693 4717 +5746 4 2 709 26 3960 4530 5491 4932 +5747 4 2 709 26 4437 5932 4512 5552 +5748 4 2 709 26 4098 5819 4491 5418 +5749 4 2 709 26 5906 3905 5540 4172 +5750 4 2 709 26 4141 4979 5254 4882 +5751 4 2 709 26 3869 4641 4536 4347 +5752 4 2 709 26 5670 5371 4786 3884 +5753 4 2 709 26 5860 5917 4420 4929 +5754 4 2 709 26 4068 4960 4569 5726 +5755 4 2 709 26 4255 5200 4962 5194 +5756 4 2 709 26 4046 4474 4644 5749 +5757 4 2 709 26 4017 5579 4611 4887 +5758 4 2 709 26 5535 4012 4354 4580 +5759 4 2 709 26 5517 4113 4225 4656 +5760 4 2 709 26 5020 4100 4893 4923 +5761 4 2 709 26 5873 4304 4768 5433 +5762 4 2 709 26 5277 4159 4594 5339 +5763 4 2 709 26 5850 4144 5045 5251 +5764 4 2 709 26 4867 4547 3907 5473 +5765 4 2 709 26 5744 4931 3965 5136 +5766 4 2 709 26 4839 3976 4343 4654 +5767 4 2 709 26 4473 5868 4963 5703 +5768 4 2 709 26 4193 5423 4924 5365 +5769 4 2 709 26 4620 5513 5127 5409 +5770 4 2 709 26 4333 5957 4759 5685 +5771 4 2 709 26 4005 5770 4430 5014 +5772 4 2 709 26 6004 4417 4259 5902 +5773 4 2 709 26 4177 4851 4398 5467 +5774 4 2 709 26 4141 4727 5201 5889 +5775 4 2 709 26 4053 5293 4895 5240 +5776 4 2 709 26 5494 3887 4532 4825 +5777 4 2 709 26 5956 3997 4951 5343 +5778 4 2 709 26 4250 3901 5807 5076 +5779 4 2 709 26 6042 5090 4169 5017 +5780 4 2 709 26 5395 5948 3936 5499 +5781 4 2 709 26 3885 4460 5136 5869 +5782 4 2 709 26 6010 5100 4127 4634 +5783 4 2 709 26 5739 4164 4993 5607 +5784 4 2 709 26 4007 5834 4433 5159 +5785 4 2 709 26 6046 4278 4811 4862 +5786 4 2 709 26 5798 4476 5161 5327 +5787 4 2 709 26 6046 5601 4811 4278 +5788 4 2 709 26 4615 5743 4757 5721 +5789 4 2 709 26 3981 6011 4947 5638 +5790 4 2 709 26 5964 4010 4314 4525 +5791 4 2 709 26 5784 3923 4643 4296 +5792 4 2 709 26 5290 5117 5306 4223 +5793 4 2 709 26 4001 5044 4216 4437 +5794 4 2 709 26 3889 5491 4986 5292 +5795 4 2 709 26 4333 3937 4295 5332 +5796 4 2 709 26 5585 4043 4718 4778 +5797 4 2 709 26 4054 5434 4598 4640 +5798 4 2 709 26 5007 5502 4670 4646 +5799 4 2 709 26 3883 4346 4629 5004 +5800 4 2 709 26 4867 5795 3876 5273 +5801 4 2 709 26 4280 5986 4511 5738 +5802 4 2 709 26 3937 4059 4622 4746 +5803 4 2 709 26 4509 4814 3927 4536 +5804 4 2 709 26 4010 5144 4498 4838 +5805 4 2 709 26 4042 5660 4850 5191 +5806 4 2 709 26 5933 4283 4736 4855 +5807 4 2 709 26 4500 6064 4701 5931 +5808 4 2 709 26 5069 6084 1030 5172 +5809 4 2 709 26 5655 3886 4494 5088 +5810 4 2 709 26 4080 6036 4931 4319 +5811 4 2 709 26 4202 5657 4518 5436 +5812 4 2 709 26 4227 6042 5090 4169 +5813 4 2 709 26 5200 5605 4962 4669 +5814 4 2 709 26 4401 5895 4903 5228 +5815 4 2 709 26 4686 6031 4977 5732 +5816 4 2 709 26 3975 4981 4309 4755 +5817 4 2 709 26 3940 4446 5036 5707 +5818 4 2 709 26 3902 5297 4311 4882 +5819 4 2 709 26 4112 5663 4639 3950 +5820 4 2 709 26 5511 4794 5667 5173 +5821 4 2 709 26 5972 4406 5060 5476 +5822 4 2 709 26 4593 4436 5242 5516 +5823 4 2 709 26 5936 5411 4740 4435 +5824 4 2 709 26 4219 5684 5070 5416 +5825 4 2 709 26 5985 3883 4341 5072 +5826 4 2 709 26 5307 4177 4851 4988 +5827 4 2 709 26 5963 4132 4552 5514 +5828 4 2 709 26 3980 5900 4241 5030 +5829 4 2 709 26 4249 4657 5233 4102 +5830 4 2 709 26 4264 4918 4527 5608 +5831 4 2 709 26 4421 6024 5525 3940 +5832 4 2 709 26 5801 5010 5614 3942 +5833 4 2 709 26 3906 5255 4243 5044 +5834 4 2 709 26 4512 4216 4437 5550 +5835 4 2 709 26 3877 4238 5277 5315 +5836 4 2 709 26 4804 3951 5259 5806 +5837 4 2 709 26 4365 5078 5681 4094 +5838 4 2 709 26 5760 3995 4808 5733 +5839 4 2 709 26 5511 5667 4794 4107 +5840 4 2 709 26 5908 3956 5062 5354 +5841 4 2 709 26 5620 5613 3959 5108 +5842 4 2 709 26 4042 5815 4795 4852 +5843 4 2 709 26 6036 4080 4802 4319 +5844 4 2 709 26 5647 4172 4821 5059 +5845 4 2 709 26 3870 4400 5477 5756 +5846 4 2 709 26 4303 3979 4898 5196 +5847 4 2 709 26 5376 3980 4318 4581 +5848 4 2 709 26 4225 5517 4656 4935 +5849 4 2 709 26 3930 5673 4561 4108 +5850 4 2 709 26 4542 5254 4882 4141 +5851 4 2 709 26 4452 5996 4872 5884 +5852 4 2 709 26 5670 5371 4577 4145 +5853 4 2 709 26 4341 5729 5555 4161 +5854 4 2 709 26 4436 5792 4593 5465 +5855 4 2 709 26 4443 4282 4972 5469 +5856 4 2 709 26 4765 5748 5091 5643 +5857 4 2 709 26 4260 5934 5265 5519 +5858 4 2 709 26 5842 3954 5066 5425 +5859 4 2 709 26 4369 5330 4513 5006 +5860 4 2 709 26 5849 4177 4876 5307 +5861 4 2 709 26 5886 5821 3957 4519 +5862 4 2 709 26 5934 4335 4803 4144 +5863 4 2 709 26 5019 5604 4628 3880 +5864 4 2 709 26 3873 4308 4842 4770 +5865 4 2 709 26 4556 4102 5475 4252 +5866 4 2 709 26 5397 5749 5380 4474 +5867 4 2 709 26 4162 6034 4338 5087 +5868 4 2 709 26 5007 5502 4646 4683 +5869 4 2 709 26 6066 4390 5160 4823 +5870 4 2 709 26 4556 5801 5385 4422 +5871 4 2 709 26 5793 4170 4681 4805 +5872 4 2 709 26 3997 5343 4539 4951 +5873 4 2 709 26 3901 4254 5126 5439 +5874 4 2 709 26 3914 5319 4231 5216 +5875 4 2 709 26 4857 3906 4437 5932 +5876 4 2 709 26 4210 6059 4450 5341 +5877 4 2 709 26 5519 3896 4260 4488 +5878 4 2 709 26 4014 6065 5283 5592 +5879 4 2 709 26 5903 4246 4507 5083 +5880 4 2 709 26 3964 5796 4635 5418 +5881 4 2 709 26 5120 3882 4463 4708 +5882 4 2 709 26 5267 4061 4284 4846 +5883 4 2 709 26 5622 4116 4753 5151 +5884 4 2 709 26 4873 3995 5095 5591 +5885 4 2 709 26 3918 5746 4247 5087 +5886 4 2 709 26 4290 4105 5130 5312 +5887 4 2 709 26 3867 5316 4913 5134 +5888 4 2 709 26 3905 4142 5337 4632 +5889 4 2 709 26 5891 4156 4475 5398 +5890 4 2 709 26 6013 3972 4264 5672 +5891 4 2 709 26 3874 5338 4191 4947 +5892 4 2 709 26 5128 3904 4759 4965 +5893 4 2 709 26 4118 5223 4255 4962 +5894 4 2 709 26 4831 3980 4248 5373 +5895 4 2 709 26 4442 4079 4837 3982 +5896 4 2 709 26 3967 5673 4458 4561 +5897 4 2 709 26 3887 5686 4762 5336 +5898 4 2 709 26 4993 3916 4764 4937 +5899 4 2 709 26 3895 4330 4465 5211 +5900 4 2 709 26 4091 4535 5192 5264 +5901 4 2 709 26 5497 4214 5882 4632 +5902 4 2 709 26 4319 4080 4802 5252 +5903 4 2 709 26 5534 3934 5074 5767 +5904 4 2 709 26 5206 4301 4627 5124 +5905 4 2 709 26 4523 5783 4992 5590 +5906 4 2 709 26 5923 4242 4949 5156 +5907 4 2 709 26 5293 4168 4895 5240 +5908 4 2 709 26 5963 4552 4643 5784 +5909 4 2 709 26 4130 5449 5014 5397 +5910 4 2 709 26 4036 4110 4766 5116 +5911 4 2 709 26 4171 4053 4472 5985 +5912 4 2 709 26 5273 5928 4867 5795 +5913 4 2 709 26 5948 4426 5330 5499 +5914 4 2 709 26 4465 3895 5130 5487 +5915 4 2 709 26 4111 5237 4750 4818 +5916 4 2 709 26 4743 5752 4232 4633 +5917 4 2 709 26 5217 4211 4652 4934 +5918 4 2 709 26 4578 3902 5048 5623 +5919 4 2 709 26 4460 4080 5061 5820 +5920 4 2 709 26 5771 4312 5000 5386 +5921 4 2 709 26 4485 5170 4279 4062 +5922 4 2 709 26 5834 4124 5386 5771 +5923 4 2 709 26 5675 4211 4385 4630 +5924 4 2 709 26 4721 6011 3981 5638 +5925 4 2 709 26 5582 3934 4352 4979 +5926 4 2 709 26 5974 3989 4259 5381 +5927 4 2 709 26 4137 4873 5095 5591 +5928 4 2 709 26 5024 4231 5325 5818 +5929 4 2 709 26 4362 6047 4392 4894 +5930 4 2 709 26 4010 5783 4992 5140 +5931 4 2 709 26 5775 5726 4793 3966 +5932 4 2 709 26 4664 4235 5800 4790 +5933 4 2 709 26 4234 3878 5794 5243 +5934 4 2 709 26 5861 4217 4648 4930 +5935 4 2 709 26 5622 5466 5151 4659 +5936 4 2 709 26 5908 4368 4760 5406 +5937 4 2 709 26 5183 5431 3895 4571 +5938 4 2 709 26 3921 5196 4425 4971 +5939 4 2 709 26 3873 4144 4803 5269 +5940 4 2 709 26 4046 5425 4616 5066 +5941 4 2 709 26 5528 5517 5324 4225 +5942 4 2 709 26 4468 5739 5081 5255 +5943 4 2 709 26 3946 4755 4309 4576 +5944 4 2 709 26 4006 5554 4629 4715 +5945 4 2 709 26 4728 5762 4571 4363 +5946 4 2 709 26 5984 4039 4400 5239 +5947 4 2 709 26 5677 5095 5760 4169 +5948 4 2 709 26 4467 5289 4539 5059 +5949 4 2 709 26 4131 5849 4988 5244 +5950 4 2 709 26 3907 5596 4552 5514 +5951 4 2 709 26 3980 5376 4833 4241 +5952 4 2 709 26 3963 6018 4789 4986 +5953 4 2 709 26 4055 5804 4684 5377 +5954 4 2 709 26 5617 5805 5650 4672 +5955 4 2 709 26 5667 5439 5511 4449 +5956 4 2 709 26 4511 3948 4583 5580 +5957 4 2 709 26 4743 5919 4633 4232 +5958 4 2 709 26 5406 4118 4255 4962 +5959 4 2 709 26 4681 5808 4331 4856 +5960 4 2 709 26 5394 4246 4383 4846 +5961 4 2 709 26 3901 5598 4367 5439 +5962 4 2 709 26 5933 4110 4973 5335 +5963 4 2 709 26 4876 5079 5467 4177 +5964 4 2 709 26 4092 5522 4301 4836 +5965 4 2 709 26 5788 5474 4242 3959 +5966 4 2 709 26 5294 5852 4321 4187 +5967 4 2 709 26 5536 3962 4426 4702 +5968 4 2 709 26 4998 4128 4706 4969 +5969 4 2 709 26 4578 3902 5623 4176 +5970 4 2 709 26 4213 6045 4767 5563 +5971 4 2 709 26 4142 5907 4578 5664 +5972 4 2 709 26 5657 5996 5170 3920 +5973 4 2 709 26 3869 4347 4536 5548 +5974 4 2 709 26 4137 5943 4619 5338 +5975 4 2 709 26 5802 4044 4439 5661 +5976 4 2 709 26 4143 4597 5063 5202 +5977 4 2 709 26 3967 5890 4572 5383 +5978 4 2 709 26 4169 4019 4713 5090 +5979 4 2 709 26 5934 3987 5010 5265 +5980 4 2 709 26 4429 4192 5901 5419 +5981 4 2 709 26 5596 3907 4842 5355 +5982 4 2 709 26 3913 5503 4202 5279 +5983 4 2 709 26 4165 5623 4578 5048 +5984 4 2 709 26 4281 6067 4612 5635 +5985 4 2 709 26 6010 5100 4991 4127 +5986 4 2 709 26 4225 4121 4571 5528 +5987 4 2 709 26 3882 5190 4463 4708 +5988 4 2 709 26 4303 6023 4642 3979 +5989 4 2 709 26 5554 5902 5826 3941 +5990 4 2 709 26 4079 4685 4442 4560 +5991 4 2 709 26 4476 5500 4530 5327 +5992 4 2 709 26 4018 5537 4588 5417 +5993 4 2 709 26 4230 4388 4638 5848 +5994 4 2 709 26 4012 5835 4608 4288 +5995 4 2 709 26 4103 5561 4670 5007 +5996 4 2 709 26 5506 4740 5957 4333 +5997 4 2 709 26 3942 5430 4409 5010 +5998 4 2 709 26 4742 5875 5310 5853 +5999 4 2 709 26 3988 5207 4408 4843 +6000 4 2 709 26 3945 4483 4788 5723 +6001 4 2 709 26 4180 5741 5403 3928 +6002 4 2 709 26 4409 5790 4540 3942 +6003 4 2 709 26 5614 4144 4335 5010 +6004 4 2 709 26 5868 4119 4473 4963 +6005 4 2 709 26 4165 5133 4360 4829 +6006 4 2 709 26 4195 5823 5066 4477 +6007 4 2 709 26 5782 4366 5188 4319 +6008 4 2 709 26 5975 4223 5117 5290 +6009 4 2 709 26 4042 5151 4659 4753 +6010 4 2 709 26 5960 5884 4970 4432 +6011 4 2 709 26 6062 4360 4815 4829 +6012 4 2 709 26 5848 4116 4564 4221 +6013 4 2 709 26 5387 5942 5137 4745 +6014 4 2 709 26 4151 5097 4697 4963 +6015 4 2 709 26 5572 4037 4752 5053 +6016 4 2 709 26 5290 3883 4537 5004 +6017 4 2 709 26 4303 3979 4642 4898 +6018 4 2 709 26 5290 5306 5117 4069 +6019 4 2 709 26 3892 5733 5132 5247 +6020 4 2 709 26 4360 4027 5295 4815 +6021 4 2 709 26 3945 4012 4580 5723 +6022 4 2 709 26 4246 5699 4996 5256 +6023 4 2 709 26 4322 4964 4532 4790 +6024 4 2 709 26 6015 4295 5332 3964 +6025 4 2 709 26 5503 4168 4895 5293 +6026 4 2 709 26 4024 4734 4566 4705 +6027 4 2 709 26 5345 3890 4583 5165 +6028 4 2 709 26 4216 5939 4512 5005 +6029 4 2 709 26 5841 4146 4797 4845 +6030 4 2 709 26 3908 5754 5257 5575 +6031 4 2 709 26 4743 5752 4956 4232 +6032 4 2 709 26 4046 5066 4616 4898 +6033 4 2 709 26 3907 5473 4173 4867 +6034 4 2 709 26 4728 6054 5347 4363 +6035 4 2 709 26 4158 5934 4803 5809 +6036 4 2 709 26 4542 4057 4482 5498 +6037 4 2 709 26 4103 5986 4671 5416 +6038 4 2 709 26 3948 5070 5011 5416 +6039 4 2 709 26 5738 4009 4511 5626 +6040 4 2 709 26 4037 5605 4709 5143 +6041 4 2 709 26 4010 4950 4525 4838 +6042 4 2 709 26 4016 5404 4575 4738 +6043 4 2 709 26 5553 4009 4600 5145 +6044 4 2 709 26 4224 5910 4982 5558 +6045 4 2 709 26 5554 4006 4183 4863 +6046 4 2 709 26 5738 4009 4600 5553 +6047 4 2 709 26 5660 4042 5151 5191 +6048 4 2 709 26 4172 5059 4469 4821 +6049 4 2 709 26 5400 4003 5005 5147 +6050 4 2 709 26 5589 4160 4324 5203 +6051 4 2 709 26 4147 5818 5089 5539 +6052 4 2 709 26 4111 5504 4658 5155 +6053 4 2 709 26 5843 4902 5067 3917 +6054 4 2 709 26 5153 5033 5722 4096 +6055 4 2 709 26 4530 4230 4476 5594 +6056 4 2 709 26 4015 5686 4664 5041 +6057 4 2 709 26 4037 5223 4709 4962 +6058 4 2 709 26 4137 4873 5027 5095 +6059 4 2 709 26 3934 5582 4352 5218 +6060 4 2 709 26 5701 4396 5138 5363 +6061 4 2 709 26 5874 4093 4359 5209 +6062 4 2 709 26 6043 4147 5089 5539 +6063 4 2 709 26 5497 5882 4214 5724 +6064 4 2 709 26 4664 5800 5052 5532 +6065 4 2 709 26 3915 5270 4946 5035 +6066 4 2 709 26 5943 3874 4619 5338 +6067 4 2 709 26 5748 3881 5515 5685 +6068 4 2 709 26 3914 5216 4231 4952 +6069 4 2 709 26 4121 4225 4935 5528 +6070 4 2 709 26 4042 5837 4784 4852 +6071 4 2 709 26 4090 5692 4714 5004 +6072 4 2 709 26 5099 3907 4552 5514 +6073 4 2 709 26 4206 5547 4968 5213 +6074 4 2 709 26 3942 5614 4636 5430 +6075 4 2 709 26 4594 4238 5627 5689 +6076 4 2 709 26 5382 5485 3930 4247 +6077 4 2 709 26 4066 4842 4308 4552 +6078 4 2 709 26 5273 5928 4547 4867 +6079 4 2 709 26 3901 5898 5076 4624 +6080 4 2 709 26 3915 5982 4673 5047 +6081 4 2 709 26 4171 3912 4593 4895 +6082 4 2 709 26 5600 3937 4619 5411 +6083 4 2 709 26 5890 3967 4582 5383 +6084 4 2 709 26 5580 4054 5011 5453 +6085 4 2 709 26 5309 5586 5243 4391 +6086 4 2 709 26 4730 5949 5134 5316 +6087 4 2 709 26 3905 4533 5018 5287 +6088 4 2 709 26 4110 5933 4736 4855 +6089 4 2 709 26 5988 4788 4927 5655 +6090 4 2 709 26 4257 4370 4994 4564 +6091 4 2 709 26 5908 4343 5753 4505 +6092 4 2 709 26 4244 5774 4869 4889 +6093 4 2 709 26 4231 5818 4787 5089 +6094 4 2 709 26 5206 5124 5771 4301 +6095 4 2 709 26 4292 5633 4603 5559 +6096 4 2 709 26 4168 5293 4245 4514 +6097 4 2 709 26 4185 5644 4897 4399 +6098 4 2 709 26 3988 5202 4843 5063 +6099 4 2 709 26 4089 5565 4299 4697 +6100 4 2 709 26 4060 4297 4986 5292 +6101 4 2 709 26 4429 5901 4192 5973 +6102 4 2 709 26 3902 5623 4311 5048 +6103 4 2 709 26 6048 4155 4676 5334 +6104 4 2 709 26 5569 4086 5148 5384 +6105 4 2 709 26 4230 5871 4936 5177 +6106 4 2 709 26 4123 5902 4259 5213 +6107 4 2 709 26 5763 3920 4266 5170 +6108 4 2 709 26 5064 4151 4473 4963 +6109 4 2 709 26 4166 5596 4199 5514 +6110 4 2 709 26 5565 4299 4963 5268 +6111 4 2 709 26 4139 3916 4764 5607 +6112 4 2 709 26 5723 5286 3992 4197 +6113 4 2 709 26 5586 5536 3925 4725 +6114 4 2 709 26 5567 4202 4518 5159 +6115 4 2 709 26 4012 5723 4354 4580 +6116 4 2 709 26 5440 4033 4325 5221 +6117 4 2 709 26 5753 4118 4905 5354 +6118 4 2 709 26 4334 3952 5413 5638 +6119 4 2 709 26 5622 5151 5466 4257 +6120 4 2 709 26 4237 4503 4909 5429 +6121 4 2 709 26 4400 5905 4725 5984 +6122 4 2 709 26 5899 4239 4722 5650 +6123 4 2 709 26 5748 5643 4307 5515 +6124 4 2 709 26 4177 3974 5244 5849 +6125 4 2 709 26 5031 3906 5255 5666 +6126 4 2 709 26 4232 4956 4743 5119 +6127 4 2 709 26 5432 5823 5314 4220 +6128 4 2 709 26 4066 5368 4483 4724 +6129 4 2 709 26 5506 4740 4029 5957 +6130 4 2 709 26 3992 5881 5696 4275 +6131 4 2 709 26 4311 5455 4542 5396 +6132 4 2 709 26 5704 5886 5373 4104 +6133 4 2 709 26 4876 5467 5079 4045 +6134 4 2 709 26 5046 4244 4869 4889 +6135 4 2 709 26 5451 5358 4003 4390 +6136 4 2 709 26 5434 4156 4598 4640 +6137 4 2 709 26 4040 5246 4455 5082 +6138 4 2 709 26 4218 5753 4905 5354 +6139 4 2 709 26 5394 3967 4572 5383 +6140 4 2 709 26 6018 4222 4647 5426 +6141 4 2 709 26 5822 4147 4357 5113 +6142 4 2 709 26 4660 4013 4530 5148 +6143 4 2 709 26 4659 4933 4791 4795 +6144 4 2 709 26 5991 4801 4890 5353 +6145 4 2 709 26 5907 5257 5575 3908 +6146 4 2 709 26 5432 5823 4220 5898 +6147 4 2 709 26 5996 4452 4256 5884 +6148 4 2 709 26 3958 4179 4568 5093 +6149 4 2 709 26 4022 5028 4893 4950 +6150 4 2 709 26 5779 4937 4032 4436 +6151 4 2 709 26 5869 3885 4460 5392 +6152 4 2 709 26 4119 5566 5005 5091 +6153 4 2 709 26 5875 4106 4807 5111 +6154 4 2 709 26 5285 3974 4363 4744 +6155 4 2 709 26 3946 5336 4532 5139 +6156 4 2 709 26 4186 5880 4773 5326 +6157 4 2 709 26 4150 5270 4268 5035 +6158 4 2 709 26 4187 5852 4321 5011 +6159 4 2 709 26 4857 4437 3906 4786 +6160 4 2 709 26 5016 4167 5083 5423 +6161 4 2 709 26 5714 4375 5232 5445 +6162 4 2 709 26 4059 3937 4622 4619 +6163 4 2 709 26 5695 4435 4844 5319 +6164 4 2 709 26 4037 5340 4752 5053 +6165 4 2 709 26 5957 4333 4740 4746 +6166 4 2 709 26 5889 4159 4594 5277 +6167 4 2 709 26 4827 5435 4299 4626 +6168 4 2 709 26 4300 5759 5013 5072 +6169 4 2 709 26 5517 4113 4656 4870 +6170 4 2 709 26 4084 6025 4557 4337 +6171 4 2 709 26 3984 4556 4422 5104 +6172 4 2 709 26 6041 4233 4517 4562 +6173 4 2 709 26 5837 4042 4795 4852 +6174 4 2 709 26 5995 4012 4608 5234 +6175 4 2 709 26 3993 5163 4805 4967 +6176 4 2 709 26 5125 5079 4177 4398 +6177 4 2 709 26 5623 3902 4311 4882 +6178 4 2 709 26 5986 5765 4280 4511 +6179 4 2 709 26 3983 4178 6008 5598 +6180 4 2 709 26 5987 4380 4682 4774 +6181 4 2 709 26 3904 4965 4157 4759 +6182 4 2 709 26 5479 4050 4686 5107 +6183 4 2 709 26 4728 6054 4363 5528 +6184 4 2 709 26 5508 5295 3975 4815 +6185 4 2 709 26 4280 5738 4600 5553 +6186 4 2 709 26 5936 4096 4740 4029 +6187 4 2 709 26 4182 5600 4435 4844 +6188 4 2 709 26 5813 5120 4543 4016 +6189 4 2 709 26 4247 6055 4777 5165 +6190 4 2 709 26 4250 5990 4412 5135 +6191 4 2 709 26 6017 4323 4566 4756 +6192 4 2 709 26 5586 3925 4391 5309 +6193 4 2 709 26 5658 4484 4150 5270 +6194 4 2 709 26 3960 4230 4388 5500 +6195 4 2 709 26 5518 5291 4034 5069 +6196 4 2 709 26 4014 5275 4592 4731 +6197 4 2 709 26 5903 3930 4246 5083 +6198 4 2 709 26 3963 5774 4674 4889 +6199 4 2 709 26 4843 4143 5063 5202 +6200 4 2 709 26 4283 5953 4611 4887 +6201 4 2 709 26 5807 4254 4717 5114 +6202 4 2 709 26 5062 4563 4255 3900 +6203 4 2 709 26 4484 5658 5375 3909 +6204 4 2 709 26 4095 5758 4713 5132 +6205 4 2 709 26 4867 5795 4352 3876 +6206 4 2 709 26 4039 5756 4462 5424 +6207 4 2 709 26 3980 5900 4248 5373 +6208 4 2 709 26 5465 4052 5032 5359 +6209 4 2 709 26 5929 5457 4346 4531 +6210 4 2 709 26 5614 5801 3942 4636 +6211 4 2 709 26 5690 4052 4593 5084 +6212 4 2 709 26 4118 5406 4255 5062 +6213 4 2 709 26 6008 3983 4401 4903 +6214 4 2 709 26 4079 3982 4442 4614 +6215 4 2 709 26 5506 3904 4759 5032 +6216 4 2 709 26 5490 3939 4345 4815 +6217 4 2 709 26 4124 5567 4443 5124 +6218 4 2 709 26 3892 5733 5095 5132 +6219 4 2 709 26 4103 5684 4219 5416 +6220 4 2 709 26 5889 4149 4594 5452 +6221 4 2 709 26 5061 3950 4382 4639 +6222 4 2 709 26 3973 5125 4330 4974 +6223 4 2 709 26 5586 5330 5536 3962 +6224 4 2 709 26 5893 4125 4255 5194 +6225 4 2 709 26 3980 5373 4357 4581 +6226 4 2 709 26 5731 4229 4944 5150 +6227 4 2 709 26 4384 5425 5051 5308 +6228 4 2 709 26 5980 4258 4718 4975 +6229 4 2 709 26 4221 5158 4703 5660 +6230 4 2 709 26 4033 6015 5332 3964 +6231 4 2 709 26 5898 4477 3954 5823 +6232 4 2 709 26 5175 4262 4680 4002 +6233 4 2 709 26 5633 4292 4603 5584 +6234 4 2 709 26 4226 4314 5964 5321 +6235 4 2 709 26 3940 5036 4446 5260 +6236 4 2 709 26 5518 5291 5069 5172 +6237 4 2 709 26 6016 4242 5288 5747 +6238 4 2 709 26 4131 5241 4585 5012 +6239 4 2 709 26 4048 4274 4673 5296 +6240 4 2 709 26 5647 4136 4467 5059 +6241 4 2 709 26 5895 4903 5152 5842 +6242 4 2 709 26 5079 5987 3944 4774 +6243 4 2 709 26 5182 4034 4689 4942 +6244 4 2 709 26 4834 5707 4463 5120 +6245 4 2 709 26 5682 3984 4556 5385 +6246 4 2 709 26 5513 6016 5222 4011 +6247 4 2 709 26 4074 5222 4786 5371 +6248 4 2 709 26 4042 4795 4659 4791 +6249 4 2 709 26 4222 6018 4733 5426 +6250 4 2 709 26 4250 5807 4693 5076 +6251 4 2 709 26 5197 4114 4688 4934 +6252 4 2 709 26 4181 5979 4361 5940 +6253 4 2 709 26 4171 4472 5305 5352 +6254 4 2 709 26 4499 4009 4555 5345 +6255 4 2 709 26 5445 4007 4375 5232 +6256 4 2 709 26 4075 5374 4310 4558 +6257 4 2 709 26 5790 4102 5233 4841 +6258 4 2 709 26 4041 5807 4717 5114 +6259 4 2 709 26 4046 5425 4384 5308 +6260 4 2 709 26 5265 5385 5010 4260 +6261 4 2 709 26 4041 5114 4717 4747 +6262 4 2 709 26 4380 5987 4682 5618 +6263 4 2 709 26 4229 5425 4466 5051 +6264 4 2 709 26 4058 3981 4947 5103 +6265 4 2 709 26 4074 4457 4832 5263 +6266 4 2 709 26 4141 5889 4542 4727 +6267 4 2 709 26 4168 5240 4593 4895 +6268 4 2 709 26 4110 5992 4973 5335 +6269 4 2 709 26 5845 5005 5147 5400 +6270 4 2 709 26 4128 5110 4706 4969 +6271 4 2 709 26 5876 4228 4471 4554 +6272 4 2 709 26 5477 4175 4601 4035 +6273 4 2 709 26 5800 3946 4924 5336 +6274 4 2 709 26 4074 4786 4857 5371 +6275 4 2 709 26 4242 4501 5474 5642 +6276 4 2 709 26 4250 3901 5058 5807 +6277 4 2 709 26 5754 4234 4004 5257 +6278 4 2 709 26 5297 4159 4434 4796 +6279 4 2 709 26 5884 3977 4432 5836 +6280 4 2 709 26 4363 5528 4571 4728 +6281 4 2 709 26 4128 4998 4706 4978 +6282 4 2 709 26 3948 5070 4187 5011 +6283 4 2 709 26 4119 6045 4418 4711 +6284 4 2 709 26 4520 5918 4292 5806 +6285 4 2 709 26 5917 3895 5199 5669 +6286 4 2 709 26 5065 4053 5186 5305 +6287 4 2 709 26 5290 3883 4472 4537 +6288 4 2 709 26 4470 5892 4690 4087 +6289 4 2 709 26 3946 5742 4309 5139 +6290 4 2 709 26 4499 4555 5165 5345 +6291 4 2 709 26 4772 5657 5170 5469 +6292 4 2 709 26 4768 6050 4820 4351 +6293 4 2 709 26 5946 4090 4714 5004 +6294 4 2 709 26 4726 5790 3942 4286 +6295 4 2 709 26 4263 4068 4720 4741 +6296 4 2 709 26 4202 5279 5159 5567 +6297 4 2 709 26 5934 3987 5265 5519 +6298 4 2 709 26 4061 5267 4284 5074 +6299 4 2 709 26 5232 4007 4375 4544 +6300 4 2 709 26 4263 5576 4720 4960 +6301 4 2 709 26 5956 3997 4269 5189 +6302 4 2 709 26 4091 5988 4927 5192 +6303 4 2 709 26 5928 4021 4352 4979 +6304 4 2 709 26 4254 4747 4717 5114 +6305 4 2 709 26 5992 4445 4973 5335 +6306 4 2 709 26 5453 4305 5434 5437 +6307 4 2 709 26 4108 5880 4799 5673 +6308 4 2 709 26 5223 5340 4905 4675 +6309 4 2 709 26 5813 5120 6024 4543 +6310 4 2 709 26 5153 4021 4547 5134 +6311 4 2 709 26 4009 5626 4600 5003 +6312 4 2 709 26 5951 4081 4769 5651 +6313 4 2 709 26 3936 5777 4329 5636 +6314 4 2 709 26 4150 5273 4946 5035 +6315 4 2 709 26 5383 4071 4586 4915 +6316 4 2 709 26 4151 5703 4473 4963 +6317 4 2 709 26 3943 4185 4584 5589 +6318 4 2 709 26 4186 4162 5304 5326 +6319 4 2 709 26 5705 4216 4001 5609 +6320 4 2 709 26 3931 4751 4353 4537 +6321 4 2 709 26 4324 4185 5589 4939 +6322 4 2 709 26 3944 5399 4398 5348 +6323 4 2 709 26 5863 5327 5500 4047 +6324 4 2 709 26 4915 4071 4586 4878 +6325 4 2 709 26 4061 5699 4762 4846 +6326 4 2 709 26 4583 6055 4133 3918 +6327 4 2 709 26 4210 5110 4658 5504 +6328 4 2 709 26 4282 5279 4544 5803 +6329 4 2 709 26 5820 4080 5061 5420 +6330 4 2 709 26 5399 3944 4398 4710 +6331 4 2 709 26 4302 4967 5072 3993 +6332 4 2 709 26 5140 4010 4838 4950 +6333 4 2 709 26 5348 5956 5399 4398 +6334 4 2 709 26 5035 3915 4326 4673 +6335 4 2 709 26 5636 4359 4467 5376 +6336 4 2 709 26 4531 4346 4884 5457 +6337 4 2 709 26 5852 4966 4531 4321 +6338 4 2 709 26 5309 4140 4798 4961 +6339 4 2 709 26 4422 5385 5009 5801 +6340 4 2 709 26 4203 5649 4851 5187 +6341 4 2 709 26 6053 4181 4573 4771 +6342 4 2 709 26 5381 5061 5121 4215 +6343 4 2 709 26 5719 4299 4489 4626 +6344 4 2 709 26 5513 5222 6016 4504 +6345 4 2 709 26 4056 5957 4746 5685 +6346 4 2 709 26 5763 5884 5996 4485 +6347 4 2 709 26 5995 4229 4944 5731 +6348 4 2 709 26 5885 4558 4575 5390 +6349 4 2 709 26 4922 6038 5207 4358 +6350 4 2 709 26 4119 5005 5566 4428 +6351 4 2 709 26 4311 5623 4882 5210 +6352 4 2 709 26 4074 5474 5222 5371 +6353 4 2 709 26 6065 3911 5627 5689 +6354 4 2 709 26 3889 5863 4836 5327 +6355 4 2 709 26 5442 4130 4430 5014 +6356 4 2 709 26 4270 6049 4799 4551 +6357 4 2 709 26 4472 5352 5186 5305 +6358 4 2 709 26 5932 4765 5451 4307 +6359 4 2 709 26 4090 5872 4722 4849 +6360 4 2 709 26 4258 5122 4718 4975 +6361 4 2 709 26 3919 4470 5496 4961 +6362 4 2 709 26 3883 5985 4341 4472 +6363 4 2 709 26 5880 4108 5304 5673 +6364 4 2 709 26 3914 4163 4231 5319 +6365 4 2 709 26 4274 5889 4434 5201 +6366 4 2 709 26 5775 4353 4848 4394 +6367 4 2 709 26 4898 4425 5196 3979 +6368 4 2 709 26 4180 5817 4610 5054 +6369 4 2 709 26 5756 4175 4406 5424 +6370 4 2 709 26 4007 5759 4375 4544 +6371 4 2 709 26 6051 4303 3979 5727 +6372 4 2 709 26 5506 4740 4333 4550 +6373 4 2 709 26 4136 4334 4467 5289 +6374 4 2 709 26 3923 4296 4486 4618 +6375 4 2 709 26 4804 4148 4400 5477 +6376 4 2 709 26 6045 4119 4428 4711 +6377 4 2 709 26 5932 3906 4765 4307 +6378 4 2 709 26 5586 4310 4513 5006 +6379 4 2 709 26 4056 5653 4436 5344 +6380 4 2 709 26 5995 5655 4012 5988 +6381 4 2 709 26 5212 4347 4868 5093 +6382 4 2 709 26 5971 4251 4940 5092 +6383 4 2 709 26 3916 5994 5081 5739 +6384 4 2 709 26 4268 5817 4326 5713 +6385 4 2 709 26 5348 3944 4189 4420 +6386 4 2 709 26 4017 5683 4454 5579 +6387 4 2 709 26 3945 5619 4488 5286 +6388 4 2 709 26 5979 4181 4771 5940 +6389 4 2 709 26 5391 4298 5227 5316 +6390 4 2 709 26 5208 4051 4498 4838 +6391 4 2 709 26 5586 3925 5536 4391 +6392 4 2 709 26 4648 5893 4930 4217 +6393 4 2 709 26 4214 3936 4539 5059 +6394 4 2 709 26 4240 5476 4462 4971 +6395 4 2 709 26 4010 5590 4992 5783 +6396 4 2 709 26 4028 5443 4598 4902 +6397 4 2 709 26 5136 3965 4705 4761 +6398 4 2 709 26 5056 3994 4276 4884 +6399 4 2 709 26 5281 5101 4366 5782 +6400 4 2 709 26 4138 5516 4593 5240 +6401 4 2 709 26 4157 4273 4719 4373 +6402 4 2 709 26 4144 5934 4335 5010 +6403 4 2 709 26 4023 5742 4322 4532 +6404 4 2 709 26 4488 3896 4260 4411 +6405 4 2 709 26 5222 3884 4565 4899 +6406 4 2 709 26 4360 5489 4100 5210 +6407 4 2 709 26 4768 6050 4351 5433 +6408 4 2 709 26 5882 4578 5248 4142 +6409 4 2 709 26 4060 4986 4297 4789 +6410 4 2 709 26 6022 589 6078 5080 +6411 4 2 709 26 4528 5780 4713 5482 +6412 4 2 709 26 4000 5979 4266 5170 +6413 4 2 709 26 3923 6068 4643 4296 +6414 4 2 709 26 6043 3957 4471 4085 +6415 4 2 709 26 5510 4112 4942 5182 +6416 4 2 709 26 5657 5206 5567 4518 +6417 4 2 709 26 4065 5907 4641 4347 +6418 4 2 709 26 4164 5748 4765 5255 +6419 4 2 709 26 5994 4585 4763 5456 +6420 4 2 709 26 3935 5680 4610 5054 +6421 4 2 709 26 4221 4116 4703 5408 +6422 4 2 709 26 4127 5588 5100 5193 +6423 4 2 709 26 3887 5259 4601 4915 +6424 4 2 709 26 5255 3906 4765 5044 +6425 4 2 709 26 4619 5578 4182 4622 +6426 4 2 709 26 6052 3991 5256 5106 +6427 4 2 709 26 4235 3946 5742 4576 +6428 4 2 709 26 5777 3936 4329 5039 +6429 4 2 709 26 5563 5796 3964 5418 +6430 4 2 709 26 5979 4771 5648 5940 +6431 4 2 709 26 5302 4558 4575 4738 +6432 4 2 709 26 4269 4461 5787 4637 +6433 4 2 709 26 6068 3987 5331 5519 +6434 4 2 709 26 4242 4397 4810 5788 +6435 4 2 709 26 4121 5791 4405 5505 +6436 4 2 709 26 5504 4111 4818 5155 +6437 4 2 709 26 5241 4131 4585 4988 +6438 4 2 709 26 6018 4222 4733 4789 +6439 4 2 709 26 3992 4354 4886 5715 +6440 4 2 709 26 4176 5794 5248 5710 +6441 4 2 709 26 4872 3977 4266 4865 +6442 4 2 709 26 5680 4180 4610 5054 +6443 4 2 709 26 5579 4283 4611 4887 +6444 4 2 709 26 3975 4345 4749 5778 +6445 4 2 709 26 4325 6015 4822 5332 +6446 4 2 709 26 3953 5665 4327 4191 +6447 4 2 709 26 5957 4333 4746 5685 +6448 4 2 709 26 5817 4326 4610 5054 +6449 4 2 709 26 3988 5916 4370 4919 +6450 4 2 709 26 5378 5880 4799 4108 +6451 4 2 709 26 4054 5453 4321 5011 +6452 4 2 709 26 4545 4326 4673 5296 +6453 4 2 709 26 5906 3905 4172 4632 +6454 4 2 709 26 5919 4083 4676 5119 +6455 4 2 709 26 4187 3948 4583 4453 +6456 4 2 709 26 5295 4027 4749 4815 +6457 4 2 709 26 4050 5235 4652 4694 +6458 4 2 709 26 3963 5426 4430 4733 +6459 4 2 709 26 5582 4175 5218 5534 +6460 4 2 709 26 5189 3997 4329 4987 +6461 4 2 709 26 5389 4081 4454 4584 +6462 4 2 709 26 6028 4121 4696 5122 +6463 4 2 709 26 5569 5847 4602 4286 +6464 4 2 709 26 4946 4162 5273 5407 +6465 4 2 709 26 4275 3971 4595 4812 +6466 4 2 709 26 5519 3896 5265 4260 +6467 4 2 709 26 5276 5513 4068 4569 +6468 4 2 709 26 4382 5820 5061 5420 +6469 4 2 709 26 5420 4382 4802 5061 +6470 4 2 709 26 4290 5997 4785 5253 +6471 4 2 709 26 6051 4303 5196 3979 +6472 4 2 709 26 6011 3899 4630 5472 +6473 4 2 709 26 3930 5085 5833 5903 +6474 4 2 709 26 4086 5614 4335 5430 +6475 4 2 709 26 4829 4027 4815 5490 +6476 4 2 709 26 4055 5954 4508 5015 +6477 4 2 709 26 5693 4111 4750 4818 +6478 4 2 709 26 3992 5368 5088 5258 +6479 4 2 709 26 5775 4729 4353 4394 +6480 4 2 709 26 5670 3884 4243 5012 +6481 4 2 709 26 5877 3940 4624 4834 +6482 4 2 709 26 5622 4116 4257 4994 +6483 4 2 709 26 4325 5591 4830 4184 +6484 4 2 709 26 4507 5903 5083 5485 +6485 4 2 709 26 4257 4370 4564 3988 +6486 4 2 709 26 5856 4161 4455 5043 +6487 4 2 709 26 4388 4230 4638 5077 +6488 4 2 709 26 4103 4646 4670 5684 +6489 4 2 709 26 4495 4125 4576 4928 +6490 4 2 709 26 5390 4075 4310 4558 +6491 4 2 709 26 5743 4410 4615 4757 +6492 4 2 709 26 4515 6005 4742 5521 +6493 4 2 709 26 5032 4174 5250 5465 +6494 4 2 709 26 5744 4931 5136 4315 +6495 4 2 709 26 5110 4128 4706 4978 +6496 4 2 709 26 4068 4569 4960 5276 +6497 4 2 709 26 4074 5474 4457 5222 +6498 4 2 709 26 3993 4681 4805 5329 +6499 4 2 709 26 5960 5207 4922 3898 +6500 4 2 709 26 4423 4270 4799 5880 +6501 4 2 709 26 5688 3886 4552 4643 +6502 4 2 709 26 4194 5884 4432 5836 +6503 4 2 709 26 4146 5570 4797 5105 +6504 4 2 709 26 4166 5963 5514 5231 +6505 4 2 709 26 5908 3956 4368 5062 +6506 4 2 709 26 5954 3930 4108 5903 +6507 4 2 709 26 4882 4176 5710 5587 +6508 4 2 709 26 5444 5857 4589 4293 +6509 4 2 709 26 3904 4062 4245 5250 +6510 4 2 709 26 3879 5701 4396 4957 +6511 4 2 709 26 3967 5890 4262 5427 +6512 4 2 709 26 5659 4632 5248 5287 +6513 4 2 709 26 5270 4150 4946 5035 +6514 4 2 709 26 4188 3880 4545 5084 +6515 4 2 709 26 3930 4246 5085 5903 +6516 4 2 709 26 4121 5183 4571 5505 +6517 4 2 709 26 4628 4761 4705 5737 +6518 4 2 709 26 5024 4231 5319 5325 +6519 4 2 709 26 5198 6048 5716 4676 +6520 4 2 709 26 5522 4092 4301 5320 +6521 4 2 709 26 5320 4092 4301 4892 +6522 4 2 709 26 4203 5640 4585 4988 +6523 4 2 709 26 4674 4986 5148 5544 +6524 4 2 709 26 5148 5863 4530 5491 +6525 4 2 709 26 4420 5917 5211 5708 +6526 4 2 709 26 4108 5673 4799 5300 +6527 4 2 709 26 3916 5739 4937 4993 +6528 4 2 709 26 5190 4039 4462 4952 +6529 4 2 709 26 3972 4665 5677 5760 +6530 4 2 709 26 4061 5699 4846 5083 +6531 4 2 709 26 5354 4118 4905 5223 +6532 4 2 709 26 4312 5834 5386 5771 +6533 4 2 709 26 5484 4161 4455 5082 +6534 4 2 709 26 5933 4283 4855 5037 +6535 4 2 709 26 5503 5013 3913 5293 +6536 4 2 709 26 3867 5779 4274 5296 +6537 4 2 709 26 5392 4129 4460 5246 +6538 4 2 709 26 4428 5761 4711 5512 +6539 4 2 709 26 4156 4640 5398 5891 +6540 4 2 709 26 3961 6040 4361 4493 +6541 4 2 709 26 3934 5455 5074 5254 +6542 4 2 709 26 5378 4108 4799 5300 +6543 4 2 709 26 5594 4013 4602 5161 +6544 4 2 709 26 5766 4164 4473 5272 +6545 4 2 709 26 3943 4584 4185 5683 +6546 4 2 709 26 5571 5590 5634 4596 +6547 4 2 709 26 4170 5793 4715 4805 +6548 4 2 709 26 4892 4092 4301 4836 +6549 4 2 709 26 5657 4174 4518 5436 +6550 4 2 709 26 4517 4018 4506 4562 +6551 4 2 709 26 3905 4632 5287 5018 +6552 4 2 709 26 5259 3887 4825 4964 +6553 4 2 709 26 4567 5097 4821 5064 +6554 4 2 709 26 5777 4369 4625 5671 +6555 4 2 709 26 4419 5643 5358 5566 +6556 4 2 709 26 3906 5932 5031 4307 +6557 4 2 709 26 5764 3985 5135 4574 +6558 4 2 709 26 4878 4071 4590 5266 +6559 4 2 709 26 5376 5395 4318 3936 +6560 4 2 709 26 4490 3911 5306 5689 +6561 4 2 709 26 5738 4280 4600 5626 +6562 4 2 709 26 5809 4411 5274 4546 +6563 4 2 709 26 4096 5936 4435 5115 +6564 4 2 709 26 4079 5483 4491 4662 +6565 4 2 709 26 5091 5272 5609 5868 +6566 4 2 709 26 5423 4061 4924 5365 +6567 4 2 709 26 4159 4311 5396 4813 +6568 4 2 709 26 5672 4264 4692 5608 +6569 4 2 709 26 4226 4314 5321 5204 +6570 4 2 709 26 5742 4309 5139 5262 +6571 4 2 709 26 3937 5600 4619 4822 +6572 4 2 709 26 4110 5933 5037 5335 +6573 4 2 709 26 5649 4177 4851 5125 +6574 4 2 709 26 4740 5957 4746 4913 +6575 4 2 709 26 4532 5742 5139 5262 +6576 4 2 709 26 4355 5961 4848 5364 +6577 4 2 709 26 5474 5620 4395 4501 +6578 4 2 709 26 4307 3906 4765 5255 +6579 4 2 709 26 3904 5792 4514 5128 +6580 4 2 709 26 5316 5018 5287 4073 +6581 4 2 709 26 5402 4116 4703 4753 +6582 4 2 709 26 3912 5690 4593 5084 +6583 4 2 709 26 3979 5877 4816 5823 +6584 4 2 709 26 4353 4537 3994 5205 +6585 4 2 709 26 5520 4371 5219 5230 +6586 4 2 709 26 4243 4164 5044 5255 +6587 4 2 709 26 5759 3993 4375 4544 +6588 4 2 709 26 6062 4100 4360 4829 +6589 4 2 709 26 4408 4109 5466 4792 +6590 4 2 709 26 5002 4066 4552 4842 +6591 4 2 709 26 5030 3980 4248 4831 +6592 4 2 709 26 5699 4061 4762 5336 +6593 4 2 709 26 5883 4026 4439 4448 +6594 4 2 709 26 5960 4922 5207 4358 +6595 4 2 709 26 5663 4112 4639 5182 +6596 4 2 709 26 5004 4346 4183 5851 +6597 4 2 709 26 5867 4269 4868 4890 +6598 4 2 709 26 4125 5893 4255 4563 +6599 4 2 709 26 5508 4340 4815 4896 +6600 4 2 709 26 3987 6068 4350 5519 +6601 4 2 709 26 5907 4142 4641 5664 +6602 4 2 709 26 5853 4331 4856 5617 +6603 4 2 709 26 4765 5005 4003 5091 +6604 4 2 709 26 5281 5101 4417 4366 +6605 4 2 709 26 4274 4048 5201 5227 +6606 4 2 709 26 5711 4090 4355 4751 +6607 4 2 709 26 3905 5540 4479 4533 +6608 4 2 709 26 5346 3887 4601 4915 +6609 4 2 709 26 4120 5461 4698 5387 +6610 4 2 709 26 4076 5698 4332 4825 +6611 4 2 709 26 5861 4217 4930 4981 +6612 4 2 709 26 5880 4002 4799 5673 +6613 4 2 709 26 5912 3974 4571 5431 +6614 4 2 709 26 4073 3902 5018 5248 +6615 4 2 709 26 5262 4023 4309 5301 +6616 4 2 709 26 4423 4799 4270 6049 +6617 4 2 709 26 5662 4157 4965 5515 +6618 4 2 709 26 4787 4082 4471 5539 +6619 4 2 709 26 4033 6015 4635 5440 +6620 4 2 709 26 5899 4090 4722 4849 +6621 4 2 709 26 3973 5867 4868 4890 +6622 4 2 709 26 4140 5494 4548 5419 +6623 4 2 709 26 4353 3994 4537 5946 +6624 4 2 709 26 4053 5305 4472 5186 +6625 4 2 709 26 5907 4372 4578 4135 +6626 4 2 709 26 5560 4050 4686 5479 +6627 4 2 709 26 4123 5245 4259 5073 +6628 4 2 709 26 4460 5989 5246 4129 +6629 4 2 709 26 4076 5414 4520 4800 +6630 4 2 709 26 4080 5420 4802 5061 +6631 4 2 709 26 5069 297 6084 5172 +6632 4 2 709 26 5786 4160 4389 5589 +6633 4 2 709 26 5425 5895 5842 3954 +6634 4 2 709 26 5455 3871 4429 5074 +6635 4 2 709 26 4900 6032 5178 4294 +6636 4 2 709 26 3953 5720 4496 5675 +6637 4 2 709 26 4827 5595 4089 4562 +6638 4 2 709 26 4534 3942 4286 4726 +6639 4 2 709 26 5873 4336 5185 5433 +6640 4 2 709 26 4835 3961 4361 4493 +6641 4 2 709 26 5612 3963 4396 4464 +6642 4 2 709 26 5809 4158 4488 4546 +6643 4 2 709 26 3991 5016 4507 5083 +6644 4 2 709 26 5813 4016 4543 4853 +6645 4 2 709 26 5960 5884 4432 4194 +6646 4 2 709 26 3987 5776 4618 5331 +6647 4 2 709 26 4047 5327 4476 4892 +6648 4 2 709 26 4362 5904 4903 5228 +6649 4 2 709 26 4765 5005 5091 4216 +6650 4 2 709 26 4342 5755 4631 5659 +6651 4 2 709 26 5501 3950 4281 4444 +6652 4 2 709 26 5536 4426 4631 4702 +6653 4 2 709 26 3987 5519 4350 4818 +6654 4 2 709 26 6022 6078 1029 5080 +6655 4 2 709 26 4216 5091 5272 5609 +6656 4 2 709 26 5498 4057 4607 5455 +6657 4 2 709 26 5472 4211 4407 4976 +6658 4 2 709 26 4318 5647 4467 5059 +6659 4 2 709 26 3915 5947 4456 5870 +6660 4 2 709 26 6024 3940 4834 5120 +6661 4 2 709 26 5934 4158 4803 5331 +6662 4 2 709 26 4198 6051 4826 4543 +6663 4 2 709 26 4282 5803 4544 4769 +6664 4 2 709 26 5979 3977 4361 5648 +6665 4 2 709 26 5511 3951 4449 5439 +6666 4 2 709 26 4015 4948 4603 5322 +6667 4 2 709 26 4686 5732 4977 5092 +6668 4 2 709 26 4137 5492 4822 5095 +6669 4 2 709 26 4844 5024 5319 5325 +6670 4 2 709 26 3879 4621 5701 5231 +6671 4 2 709 26 4334 4136 4467 5647 +6672 4 2 709 26 4289 5708 4691 5537 +6673 4 2 709 26 5853 4239 4515 4849 +6674 4 2 709 26 4009 5345 4499 4840 +6675 4 2 709 26 4607 4846 5083 4061 +6676 4 2 709 26 3993 5329 4375 4544 +6677 4 2 709 26 4060 5523 4919 5491 +6678 4 2 709 26 4414 5900 5373 4104 +6679 4 2 709 26 5109 5922 4739 4442 +6680 4 2 709 26 5813 4285 4587 5621 +6681 4 2 709 26 5444 4293 4589 5441 +6682 4 2 709 26 5970 4040 4455 4761 +6683 4 2 709 26 4020 4048 4673 5296 +6684 4 2 709 26 4390 5451 5038 5400 +6685 4 2 709 26 4376 4525 4010 5964 +6686 4 2 709 26 5031 4468 4541 5666 +6687 4 2 709 26 5708 4289 4691 5526 +6688 4 2 709 26 5676 4106 4807 5310 +6689 4 2 709 26 5336 3946 4924 5139 +6690 4 2 709 26 4098 5563 4767 5418 +6691 4 2 709 26 6068 3987 4618 5331 +6692 4 2 709 26 5273 5928 4048 4547 +6693 4 2 709 26 4873 4184 5361 5591 +6694 4 2 709 26 5723 3992 5286 4483 +6695 4 2 709 26 3995 4873 5361 5591 +6696 4 2 709 26 5974 3941 5213 5902 +6697 4 2 709 26 4079 4920 4635 4837 +6698 4 2 709 26 4970 4564 3960 4919 +6699 4 2 709 26 5770 4005 4371 5284 +6700 4 2 709 26 5713 5403 5154 4268 +6701 4 2 709 26 5956 5858 5189 4269 +6702 4 2 709 26 5572 4930 5194 4669 +6703 4 2 709 26 5742 4322 5229 4023 +6704 4 2 709 26 4020 5529 4547 4858 +6705 4 2 709 26 4237 5094 4503 4881 +6706 4 2 709 26 4216 5272 4765 5044 +6707 4 2 709 26 5918 4076 4520 4800 +6708 4 2 709 26 4106 5533 4742 5310 +6709 4 2 709 26 5192 4091 4644 4927 +6710 4 2 709 26 4427 4193 5078 5423 +6711 4 2 709 26 5760 4169 5095 5733 +6712 4 2 709 26 5917 4209 5211 5669 +6713 4 2 709 26 4099 5895 4903 5152 +6714 4 2 709 26 3963 5612 4396 4889 +6715 4 2 709 26 6015 5418 3964 4635 +6716 4 2 709 26 4100 5674 4360 5210 +6717 4 2 709 26 5992 5100 4634 5588 +6718 4 2 709 26 5528 5517 4225 4935 +6719 4 2 709 26 4198 6024 4708 4543 +6720 4 2 709 26 5285 5849 5244 3974 +6721 4 2 709 26 3976 5067 4654 4839 +6722 4 2 709 26 5136 3965 4761 4931 +6723 4 2 709 26 4006 5554 4183 4629 +6724 4 2 709 26 4038 5470 4658 4732 +6725 4 2 709 26 5874 4359 4833 5030 +6726 4 2 709 26 4011 4565 5222 5513 +6727 4 2 709 26 4913 5936 5134 5316 +6728 4 2 709 26 5041 4071 4451 4586 +6729 4 2 709 26 4022 5843 4737 4860 +6730 4 2 709 26 5758 3949 4528 5444 +6731 4 2 709 26 5151 5466 4109 4659 +6732 4 2 709 26 4193 5674 5365 5508 +6733 4 2 709 26 5905 4446 4574 4459 +6734 4 2 709 26 5625 6080 741 4776 +6735 4 2 709 26 5957 4056 4746 4913 +6736 4 2 709 26 5842 4494 4616 5152 +6737 4 2 709 26 4092 5327 4836 4892 +6738 4 2 709 26 4098 5418 4491 4662 +6739 4 2 709 26 6067 4281 4612 5501 +6740 4 2 709 26 4288 4012 4535 5785 +6741 4 2 709 26 4128 4881 4503 4998 +6742 4 2 709 26 5951 5469 4972 4282 +6743 4 2 709 26 4117 6051 4708 3999 +6744 4 2 709 26 5892 4470 4874 4087 +6745 4 2 709 26 5645 4237 4881 5094 +6746 4 2 709 26 5916 4370 4919 5523 +6747 4 2 709 26 4570 5794 4798 5587 +6748 4 2 709 26 4081 5651 5481 4454 +6749 4 2 709 26 3985 5260 4446 5036 +6750 4 2 709 26 4711 5565 4963 5268 +6751 4 2 709 26 4466 4046 4927 4644 +6752 4 2 709 26 4136 5289 4467 5059 +6753 4 2 709 26 4130 5442 4430 5046 +6754 4 2 709 26 5972 5582 4021 5060 +6755 4 2 709 26 4994 4116 4257 4564 +6756 4 2 709 26 4253 5838 5111 5926 +6757 4 2 709 26 5456 4131 4585 4763 +6758 4 2 709 26 5614 4086 4335 4674 +6759 4 2 709 26 3929 5097 4567 5064 +6760 4 2 709 26 5122 4121 4696 4975 +6761 4 2 709 26 4296 5380 4130 4486 +6762 4 2 709 26 4233 4018 4517 4562 +6763 4 2 709 26 4042 5660 4703 4850 +6764 4 2 709 26 5289 4093 4539 4951 +6765 4 2 709 26 5088 5723 4483 3992 +6766 4 2 709 26 5561 4103 4817 5007 +6767 4 2 709 26 4455 5970 4761 5252 +6768 4 2 709 26 4400 5756 3925 5477 +6769 4 2 709 26 4935 4121 4696 6028 +6770 4 2 709 26 4321 4133 4583 5453 +6771 4 2 709 26 4764 4533 5018 3905 +6772 4 2 709 26 3945 4288 4580 4012 +6773 4 2 709 26 5518 4034 4689 5069 +6774 4 2 709 26 5039 3997 4625 4004 +6775 4 2 709 26 4349 3868 4719 5221 +6776 4 2 709 26 5710 4882 3902 4176 +6777 4 2 709 26 5572 5194 4930 4648 +6778 4 2 709 26 4174 5032 5359 5465 +6779 4 2 709 26 3945 4197 5619 5286 +6780 4 2 709 26 4477 5823 5066 3954 +6781 4 2 709 26 3957 6043 4581 4085 +6782 4 2 709 26 4266 6039 5879 4627 +6783 4 2 709 26 5133 4165 4372 4829 +6784 4 2 709 26 4578 5048 3902 5664 +6785 4 2 709 26 5600 4137 4619 4822 +6786 4 2 709 26 5004 4183 4346 4629 +6787 4 2 709 26 3950 4382 4639 5510 +6788 4 2 709 26 5956 4478 5858 4189 +6789 4 2 709 26 3907 4173 5099 5002 +6790 4 2 709 26 5824 3971 4393 5105 +6791 4 2 709 26 5972 5582 5473 4021 +6792 4 2 709 26 4106 5875 4515 5111 +6793 4 2 709 26 4159 5889 4434 5277 +6794 4 2 709 26 5079 5987 4380 4045 +6795 4 2 709 26 5776 4086 4335 5430 +6796 4 2 709 26 4569 5726 4960 5021 +6797 4 2 709 26 4000 5920 4771 4972 +6798 4 2 709 26 3968 4379 5457 5606 +6799 4 2 709 26 4658 4210 4969 5110 +6800 4 2 709 26 4174 5168 5250 5657 +6801 4 2 709 26 5276 5513 4569 5127 +6802 4 2 709 26 5425 5895 4229 4494 +6803 4 2 709 26 4171 4053 4895 5240 +6804 4 2 709 26 4583 5580 5011 5453 +6805 4 2 709 26 4585 5994 4763 5012 +6806 4 2 709 26 3934 5582 5218 5534 +6807 4 2 709 26 5777 4241 4833 5376 +6808 4 2 709 26 4053 4171 4472 5305 +6809 4 2 709 26 5458 4320 4390 5147 +6810 4 2 709 26 5165 5015 4555 4077 +6811 4 2 709 26 5079 5987 4774 4380 +6812 4 2 709 26 5262 4874 5301 4317 +6813 4 2 709 26 4274 5982 4673 5690 +6814 4 2 709 26 5246 4215 4455 5043 +6815 4 2 709 26 3984 5385 4422 4556 +6816 4 2 709 26 4211 5704 4976 5472 +6817 4 2 709 26 3933 6047 5152 5258 +6818 4 2 709 26 4245 5356 4514 5293 +6819 4 2 709 26 5657 5206 3920 5567 +6820 4 2 709 26 5704 3899 4976 5472 +6821 4 2 709 26 5703 4151 4851 5307 +6822 4 2 709 26 5083 3991 4246 4507 +6823 4 2 709 26 4214 5343 4539 5039 +6824 4 2 709 26 4456 5982 5040 5947 +6825 4 2 709 26 4981 3975 4217 4755 +6826 4 2 709 26 3898 4970 4432 5960 +6827 4 2 709 26 4011 6016 4457 5288 +6828 4 2 709 26 4264 4918 4665 5760 +6829 4 2 709 26 3946 5139 4309 4755 +6830 4 2 709 26 4214 5882 4632 5337 +6831 4 2 709 26 4002 5880 5304 5673 +6832 4 2 709 26 4848 5961 3990 5576 +6833 4 2 709 26 5948 5497 5724 4426 +6834 4 2 709 26 4446 4250 5260 3985 +6835 4 2 709 26 4446 4250 3985 5135 +6836 4 2 709 26 5907 4142 4065 4641 +6837 4 2 709 26 3980 5030 4359 4831 +6838 4 2 709 26 4464 5527 4297 4789 +6839 4 2 709 26 5245 4123 4677 5073 +6840 4 2 709 26 5302 4075 4459 4575 +6841 4 2 709 26 4070 5812 4820 5541 +6842 4 2 709 26 5025 5799 4001 4267 +6843 4 2 709 26 3978 6032 4381 4453 +6844 4 2 709 26 4113 4758 4656 4870 +6845 4 2 709 26 4351 4820 4768 5593 +6846 4 2 709 26 4168 5465 4514 5250 +6847 4 2 709 26 4009 5345 4511 4555 +6848 4 2 709 26 5669 5917 4650 5199 +6849 4 2 709 26 5144 4010 4376 4838 +6850 4 2 709 26 4758 4113 4656 5199 +6851 4 2 709 26 4246 3930 4383 4846 +6852 4 2 709 26 5020 6062 5509 3939 +6853 4 2 709 26 5316 5287 5018 4533 +6854 4 2 709 26 5381 5121 5061 4639 +6855 4 2 709 26 4083 5937 4939 5716 +6856 4 2 709 26 4376 4010 4525 4838 +6857 4 2 709 26 4211 4407 5098 5827 +6858 4 2 709 26 5461 4120 4850 5137 +6859 4 2 709 26 3871 5498 4607 5455 +6860 4 2 709 26 5409 5610 4606 4011 +6861 4 2 709 26 5436 4174 4518 4610 +6862 4 2 709 26 4906 4284 4561 5267 +6863 4 2 709 26 4088 4731 4475 5468 +6864 4 2 709 26 3897 5574 4219 5070 +6865 4 2 709 26 5506 4157 4333 4759 +6866 4 2 709 26 6004 4259 4417 5101 +6867 4 2 709 26 4019 4169 4227 5090 +6868 4 2 709 26 5851 4183 4891 5457 +6869 4 2 709 26 3881 5748 5515 5643 +6870 4 2 709 26 3962 5499 4369 5330 +6871 4 2 709 26 5546 4438 4609 3927 +6872 4 2 709 26 4365 5674 5509 4100 +6873 4 2 709 26 5733 4169 4713 4808 +6874 4 2 709 26 4149 4153 4490 5452 +6875 4 2 709 26 5348 5079 4330 5125 +6876 4 2 709 26 4121 5505 4571 4728 +6877 4 2 709 26 4171 5975 5352 5367 +6878 4 2 709 26 3877 5283 4438 4609 +6879 4 2 709 26 4007 5279 4544 5232 +6880 4 2 709 26 5992 3894 4445 5335 +6881 4 2 709 26 5992 3894 5100 5588 +6882 4 2 709 26 4112 4402 4925 5663 +6883 4 2 709 26 4170 3993 4805 4967 +6884 4 2 709 26 4974 5431 4196 5244 +6885 4 2 709 26 4500 5931 4701 4977 +6886 4 2 709 26 5758 4837 5247 6038 +6887 4 2 709 26 5122 4650 4718 4043 +6888 4 2 709 26 4117 5728 4971 5196 +6889 4 2 709 26 4209 5669 4465 5211 +6890 4 2 709 26 6042 4385 5017 5677 +6891 4 2 709 26 5279 4124 5159 5567 +6892 4 2 709 26 4280 4511 5626 5738 +6893 4 2 709 26 5287 4073 5018 5248 +6894 4 2 709 26 5664 5187 5018 4142 +6895 4 2 709 26 5570 4146 4734 4756 +6896 4 2 709 26 5078 3976 4839 5067 +6897 4 2 709 26 3902 4073 5018 5391 +6898 4 2 709 26 4785 4258 4413 5130 +6899 4 2 709 26 5985 4341 4472 5652 +6900 4 2 709 26 4002 5880 5226 5304 +6901 4 2 709 26 4261 4109 5328 4791 +6902 4 2 709 26 5625 445 6080 4776 +6903 4 2 709 26 4300 5759 5163 4375 +6904 4 2 709 26 5482 4019 4589 5090 +6905 4 2 709 26 4774 4225 5431 5912 +6906 4 2 709 26 5506 3904 4157 4759 +6907 4 2 709 26 4122 3940 4421 5525 +6908 4 2 709 26 4042 5191 4791 5151 +6909 4 2 709 26 5870 5129 5392 4129 +6910 4 2 709 26 5902 4123 4811 4862 +6911 4 2 709 26 4341 5729 4161 5082 +6912 4 2 709 26 280 6056 4505 5753 +6913 4 2 709 26 5248 5664 5018 4142 +6914 4 2 709 26 5235 4652 4694 4916 +6915 4 2 709 26 5765 5626 4280 4511 +6916 4 2 709 26 5948 5497 4214 5724 +6917 4 2 709 26 5124 5386 5771 5000 +6918 4 2 709 26 4627 3920 5206 5567 +6919 4 2 709 26 4922 3898 4261 5146 +6920 4 2 709 26 4672 4090 4537 5004 +6921 4 2 709 26 4684 4381 5377 5765 +6922 4 2 709 26 4143 4358 3868 5202 +6923 4 2 709 26 4487 4797 4734 5570 +6924 4 2 709 26 4001 5025 4267 4744 +6925 4 2 709 26 5891 4156 4598 4902 +6926 4 2 709 26 5840 3870 4651 5476 +6927 4 2 709 26 4205 5676 5310 5533 +6928 4 2 709 26 4163 4240 4462 4971 +6929 4 2 709 26 5385 5009 5801 5850 +6930 4 2 709 26 5499 3962 4426 5330 +6931 4 2 709 26 4267 4489 4876 5799 +6932 4 2 709 26 4031 4913 4740 4746 +6933 4 2 709 26 5250 4168 4245 4514 +6934 4 2 709 26 5621 4285 4781 5525 +6935 4 2 709 26 4083 5716 4676 5119 +6936 4 2 709 26 4348 5925 4819 5171 +6937 4 2 709 26 4548 3887 4532 5494 +6938 4 2 709 26 3911 4276 4531 4884 +6939 4 2 709 26 3914 5755 4952 5424 +6940 4 2 709 26 4594 4238 5277 5339 +6941 4 2 709 26 3883 5555 4629 4346 +6942 4 2 709 26 3929 5103 4567 4712 +6943 4 2 709 26 4184 4873 4844 5591 +6944 4 2 709 26 3907 5099 4552 5002 +6945 4 2 709 26 4047 5500 4476 5327 +6946 4 2 709 26 5319 4182 4435 4844 +6947 4 2 709 26 5988 4466 4494 4927 +6948 4 2 709 26 3919 5496 4798 4961 +6949 4 2 709 26 4211 5472 4385 4630 +6950 4 2 709 26 5107 4050 4686 4940 +6951 4 2 709 26 5244 3869 4988 5241 +6952 4 2 709 26 5486 4083 4633 4743 +6953 4 2 709 26 5433 4067 4336 5459 +6954 4 2 709 26 4743 5919 4083 4633 +6955 4 2 709 26 5272 4164 4765 5044 +6956 4 2 709 26 4692 4407 5859 6013 +6957 4 2 709 26 5754 4154 5496 5575 +6958 4 2 709 26 5979 4181 4361 4676 +6959 4 2 709 26 5908 3956 4505 4760 +6960 4 2 709 26 3919 4192 4961 5419 +6961 4 2 709 26 5222 6016 4457 4011 +6962 4 2 709 26 4093 5725 4951 5289 +6963 4 2 709 26 4260 5934 5809 4144 +6964 4 2 709 26 5854 4493 4745 5142 +6965 4 2 709 26 5259 4878 4915 4586 +6966 4 2 709 26 4765 4003 4512 5451 +6967 4 2 709 26 5597 4041 4775 5029 +6968 4 2 709 26 5917 4113 4420 4929 +6969 4 2 709 26 3881 5748 4993 5685 +6970 4 2 709 26 4187 3948 5011 4583 +6971 4 2 709 26 5803 4302 5013 3993 +6972 4 2 709 26 5929 4415 3968 5852 +6973 4 2 709 26 5290 3883 5004 4346 +6974 4 2 709 26 5933 3943 4283 5037 +6975 4 2 709 26 5979 4000 4771 5198 +6976 4 2 709 26 4123 5245 4968 5213 +6977 4 2 709 26 5285 5849 4131 5244 +6978 4 2 709 26 4501 5642 4832 5474 +6979 4 2 709 26 5954 4055 4508 5746 +6980 4 2 709 26 5938 4130 4621 5701 +6981 4 2 709 26 5215 3986 4405 4820 +6982 4 2 709 26 3908 4065 5343 4687 +6983 4 2 709 26 4393 5824 5105 5415 +6984 4 2 709 26 6013 4692 4407 5672 +6985 4 2 709 26 5809 4411 4488 4260 +6986 4 2 709 26 5105 3971 4393 4595 +6987 4 2 709 26 3885 4859 4208 5392 +6988 4 2 709 26 5163 4097 4805 4967 +6989 4 2 709 26 4225 5912 4571 5431 +6990 4 2 709 26 4571 4121 4728 5528 +6991 4 2 709 26 5624 4490 5086 5452 +6992 4 2 709 26 5688 4066 4552 5368 +6993 4 2 709 26 5955 4248 4694 4984 +6994 4 2 709 26 4989 5734 4991 6010 +6995 4 2 709 26 3985 4250 4412 5135 +6996 4 2 709 26 5609 5799 5705 4489 +6997 4 2 709 26 3943 5589 4584 4389 +6998 4 2 709 26 5549 4103 4646 5007 +6999 4 2 709 26 4778 4043 4650 4758 +7000 4 2 709 26 4302 4053 5072 5186 +7001 4 2 709 26 4018 4517 4506 4710 +7002 4 2 709 26 4016 3882 4575 5120 +7003 4 2 709 26 4588 5844 5417 5537 +7004 4 2 709 26 5974 3989 4417 4259 +7005 4 2 709 26 4379 5606 4891 5457 +7006 4 2 709 26 3890 6055 4777 4305 +7007 4 2 709 26 4199 5529 5153 5355 +7008 4 2 709 26 4217 4101 5694 4896 +7009 4 2 709 26 5395 5948 5499 4426 +7010 4 2 709 26 4773 6003 5326 5880 +7011 4 2 709 26 5614 5801 5850 5385 +7012 4 2 709 26 4913 4031 4533 4746 +7013 4 2 709 26 4843 3988 4387 4408 +7014 4 2 709 26 4278 5902 4811 4862 +7015 4 2 709 26 5088 5723 4354 5655 +7016 4 2 709 26 5658 4208 4946 5238 +7017 4 2 709 26 445 5360 6080 4776 +7018 4 2 709 26 4490 4594 5689 4149 +7019 4 2 709 26 4149 5889 5026 5452 +7020 4 2 709 26 4882 3934 5587 5710 +7021 4 2 709 26 5413 4089 4697 5565 +7022 4 2 709 26 4919 3960 4452 5491 +7023 4 2 709 26 5932 4277 5552 4857 +7024 4 2 709 26 6011 4334 4721 4831 +7025 4 2 709 26 4077 4553 4507 5236 +7026 4 2 709 26 5132 5444 4019 4560 +7027 4 2 709 26 5675 4114 4496 5197 +7028 4 2 709 26 4292 4451 5173 5511 +7029 4 2 709 26 5842 4178 4903 5152 +7030 4 2 709 26 4230 3960 4388 5848 +7031 4 2 709 26 5673 4002 4458 5304 +7032 4 2 709 26 4160 5589 4445 4389 +7033 4 2 709 26 3963 5774 4647 5544 +7034 4 2 709 26 4876 5799 4980 4267 +7035 4 2 709 26 5669 4650 5917 4209 +7036 4 2 709 26 5125 4065 4347 4687 +7037 4 2 709 26 6027 4200 5045 5422 +7038 4 2 709 26 4646 4103 4670 5007 +7039 4 2 709 26 4052 5465 4436 4593 +7040 4 2 709 26 5902 3941 5213 5826 +7041 4 2 709 26 4368 6052 4507 4553 +7042 4 2 709 26 5520 4095 4387 5219 +7043 4 2 709 26 4015 4964 4322 4790 +7044 4 2 709 26 5039 5948 4625 5777 +7045 4 2 709 26 3940 4446 5707 4459 +7046 4 2 709 26 6006 4144 5045 3928 +7047 4 2 709 26 5488 4703 4753 5402 +7048 4 2 709 26 4064 6002 4866 5527 +7049 4 2 709 26 3910 5024 5818 4431 +7050 4 2 709 26 5485 5165 4247 4777 +7051 4 2 709 26 4054 5351 4598 4840 +7052 4 2 709 26 4248 5107 4694 4984 +7053 4 2 709 26 4020 5355 4268 5035 +7054 4 2 709 26 4021 5582 4352 4979 +7055 4 2 709 26 5959 4125 4669 5200 +7056 4 2 709 26 4345 4027 4815 4749 +7057 4 2 709 26 5691 4224 4982 5558 +7058 4 2 709 26 6042 4227 5743 4679 +7059 4 2 709 26 4664 6020 5052 4235 +7060 4 2 709 26 3912 5652 5117 4153 +7061 4 2 709 26 5619 4210 4450 5504 +7062 4 2 709 26 5733 4169 5095 5132 +7063 4 2 709 26 4731 4156 4424 5398 +7064 4 2 709 26 5960 4358 4194 5333 +7065 4 2 709 26 3973 5348 4801 5211 +7066 4 2 709 26 4290 4105 4668 5253 +7067 4 2 709 26 5212 4051 4568 5093 +7068 4 2 709 26 4074 4857 4437 5263 +7069 4 2 709 26 5917 4225 5199 3895 +7070 4 2 709 26 4077 4499 4555 5165 +7071 4 2 709 26 3947 4331 3969 5310 +7072 4 2 709 26 5547 4379 4862 5213 +7073 4 2 709 26 4210 5824 5415 5110 +7074 4 2 709 26 4629 3941 4346 5773 +7075 4 2 709 26 3911 4490 5437 5689 +7076 4 2 709 26 4132 5099 4552 5514 +7077 4 2 709 26 4442 3982 4922 5109 +7078 4 2 709 26 4282 4769 4972 5951 +7079 4 2 709 26 6013 4264 4692 5672 +7080 4 2 709 26 4241 5777 4833 5671 +7081 4 2 709 26 3877 5592 5283 5315 +7082 4 2 709 26 5900 4248 5373 4104 +7083 4 2 709 26 4927 4046 4616 5280 +7084 4 2 709 26 5002 3907 4173 4867 +7085 4 2 709 26 4901 3956 4343 4839 +7086 4 2 709 26 5417 5725 4018 5399 +7087 4 2 709 26 4429 4176 4882 5587 +7088 4 2 709 26 5455 4057 4607 5074 +7089 4 2 709 26 3899 5472 4357 4976 +7090 4 2 709 26 5733 3892 4830 5247 +7091 4 2 709 26 6011 4831 5971 3899 +7092 4 2 709 26 4353 5946 4537 4751 +7093 4 2 709 26 5626 4009 4511 4555 +7094 4 2 709 26 4074 4832 4395 4591 +7095 4 2 709 26 5373 3899 4357 4976 +7096 4 2 709 26 3986 4405 4258 5215 +7097 4 2 709 26 4840 5351 5145 4492 +7098 4 2 709 26 3889 5614 5251 4674 +7099 4 2 709 26 4258 5980 4405 4975 +7100 4 2 709 26 5567 4627 5124 5206 +7101 4 2 709 26 5588 5214 5700 4634 +7102 4 2 709 26 4094 4365 5339 5396 +7103 4 2 709 26 5248 5664 4142 4578 +7104 4 2 709 26 4113 5708 4420 5526 +7105 4 2 709 26 4181 5979 4771 5198 +7106 4 2 709 26 5453 4054 4321 5434 +7107 4 2 709 26 4090 5946 4537 5004 +7108 4 2 709 26 5586 4328 4310 4725 +7109 4 2 709 26 4273 5506 4550 4866 +7110 4 2 709 26 4284 5534 5074 5767 +7111 4 2 709 26 5279 4282 4544 5232 +7112 4 2 709 26 5919 4416 4633 5854 +7113 4 2 709 26 3994 5851 4276 4884 +7114 4 2 709 26 5473 4021 4547 5153 +7115 4 2 709 26 5611 4045 4827 4626 +7116 4 2 709 26 6002 5998 4866 5527 +7117 4 2 709 26 4136 5647 4334 4947 +7118 4 2 709 26 4295 5064 3881 4418 +7119 4 2 709 26 3988 5118 4387 4408 +7120 4 2 709 26 5851 4183 4714 4891 +7121 4 2 709 26 4510 5460 4653 5150 +7122 4 2 709 26 4584 5786 4389 5589 +7123 4 2 709 26 5744 4084 4623 5495 +7124 4 2 709 26 5463 4184 5573 5695 +7125 4 2 709 26 5073 4123 4677 4811 +7126 4 2 709 26 4036 4699 4663 4766 +7127 4 2 709 26 4261 5387 4416 5146 +7128 4 2 709 26 4331 5853 4742 5310 +7129 4 2 709 26 4252 5999 4978 5958 +7130 4 2 709 26 4336 5873 5185 5546 +7131 4 2 709 26 5267 4061 4607 5074 +7132 4 2 709 26 5263 4074 4591 4832 +7133 4 2 709 26 5081 5666 4243 4145 +7134 4 2 709 26 4162 4186 5304 5407 +7135 4 2 709 26 5390 3962 4310 4725 +7136 4 2 709 26 4119 5268 4711 4963 +7137 4 2 709 26 3884 5513 4504 5222 +7138 4 2 709 26 3886 5655 4494 4927 +7139 4 2 709 26 4640 4156 4598 5891 +7140 4 2 709 26 5870 5238 4946 4208 +7141 4 2 709 26 4843 6038 5202 5207 +7142 4 2 709 26 5239 4039 4462 5190 +7143 4 2 709 26 5259 4878 4148 4915 +7144 4 2 709 26 5641 4376 4010 5964 +7145 4 2 709 26 4693 5807 5058 4107 +7146 4 2 709 26 5514 4240 4971 5476 +7147 4 2 709 26 5868 4963 5307 5435 +7148 4 2 709 26 3985 4412 4250 5058 +7149 4 2 709 26 5728 4224 3999 5024 +7150 4 2 709 26 5824 4210 5504 5110 +7151 4 2 709 26 4337 6009 5000 5522 +7152 4 2 709 26 4471 6043 5089 5539 +7153 4 2 709 26 3956 5908 4368 4760 +7154 4 2 709 26 5217 5551 4934 4652 +7155 4 2 709 26 4243 5670 5081 4145 +7156 4 2 709 26 4184 5591 4830 5361 +7157 4 2 709 26 4162 4338 5304 5326 +7158 4 2 709 26 4261 6007 4416 5387 +7159 4 2 709 26 3897 5381 4415 4259 +7160 4 2 709 26 4121 5122 4258 4975 +7161 4 2 709 26 4483 4158 4643 5688 +7162 4 2 709 26 4131 5012 4585 4763 +7163 4 2 709 26 5641 4010 4376 5144 +7164 4 2 709 26 5591 3892 4830 5095 +7165 4 2 709 26 4347 4179 4536 5548 +7166 4 2 709 26 4075 4459 4574 5374 +7167 4 2 709 26 6051 4198 4708 4543 +7168 4 2 709 26 5758 5780 4713 4528 +7169 4 2 709 26 4290 5997 5253 5634 +7170 4 2 709 26 5919 3961 4416 5854 +7171 4 2 709 26 5499 5671 4908 4369 +7172 4 2 709 26 4086 5774 4335 4674 +7173 4 2 709 26 4164 5255 4765 5044 +7174 4 2 709 26 5819 4227 4019 4169 +7175 4 2 709 26 4189 5816 4691 4478 +7176 4 2 709 26 5218 5393 4406 4173 +7177 4 2 709 26 4345 3975 4749 4815 +7178 4 2 709 26 5506 4740 4550 4029 +7179 4 2 709 26 3985 5905 4400 5036 +7180 4 2 709 26 5218 5393 4035 4406 +7181 4 2 709 26 3909 5841 5238 4700 +7182 4 2 709 26 4508 6003 4055 5531 +7183 4 2 709 26 4275 3971 4812 5619 +7184 4 2 709 26 4583 6055 5165 3890 +7185 4 2 709 26 4225 4774 5324 5912 +7186 4 2 709 26 4232 4879 5149 5862 +7187 4 2 709 26 298 6035 6081 5057 +7188 4 2 709 26 4515 5875 4742 5853 +7189 4 2 709 26 5988 4466 4927 5192 +7190 4 2 709 26 4758 4650 4929 5199 +7191 4 2 709 26 4321 5453 4583 5011 +7192 4 2 709 26 4060 5527 4597 4789 +7193 4 2 709 26 3978 5989 4661 5178 +7194 4 2 709 26 4139 3916 4585 5802 +7195 4 2 709 26 5962 4320 4920 5796 +7196 4 2 709 26 4109 4257 5466 5151 +7197 4 2 709 26 4339 5903 4108 5833 +7198 4 2 709 26 4009 5580 4511 5345 +7199 4 2 709 26 5093 3973 4347 4868 +7200 4 2 709 26 5444 5441 4491 4685 +7201 4 2 709 26 4036 5311 4766 4110 +7202 4 2 709 26 4089 5413 4348 4712 +7203 4 2 709 26 5641 4010 4596 5321 +7204 4 2 709 26 4379 3968 5547 5606 +7205 4 2 709 26 4033 5221 4349 4719 +7206 4 2 709 26 4175 5756 4406 4035 +7207 4 2 709 26 4173 3876 4291 4867 +7208 4 2 709 26 4112 5769 4809 5225 +7209 4 2 709 26 3888 5289 4539 4951 +7210 4 2 709 26 5298 5525 4122 4781 +7211 4 2 709 26 5929 5457 3941 4346 +7212 4 2 709 26 5245 4123 4259 5213 +7213 4 2 709 26 5855 4268 5154 5403 +7214 4 2 709 26 5704 4050 4694 5107 +7215 4 2 709 26 6052 3991 4507 5256 +7216 4 2 709 26 4474 4296 5938 5280 +7217 4 2 709 26 3870 5840 4651 4178 +7218 4 2 709 26 5395 5948 4214 3936 +7219 4 2 709 26 5429 4393 4503 4909 +7220 4 2 709 26 5376 5395 3936 5499 +7221 4 2 709 26 5785 4012 4535 5234 +7222 4 2 709 26 4632 3905 4469 5337 +7223 4 2 709 26 5030 3980 4833 4241 +7224 4 2 709 26 4048 4020 4673 5035 +7225 4 2 709 26 5354 3976 4343 4839 +7226 4 2 709 26 4007 5759 4544 5279 +7227 4 2 709 26 3999 6051 4826 4982 +7228 4 2 709 26 5372 4362 4590 5266 +7229 4 2 709 26 4088 5843 4737 5468 +7230 4 2 709 26 4047 6039 4627 5313 +7231 4 2 709 26 4146 6017 4734 4756 +7232 4 2 709 26 4658 5110 5155 5504 +7233 4 2 709 26 4168 5503 4895 5084 +7234 4 2 709 26 5256 3991 4356 5106 +7235 4 2 709 26 6024 4198 4708 4834 +7236 4 2 709 26 4020 4048 4547 5035 +7237 4 2 709 26 4157 5685 4333 4759 +7238 4 2 709 26 3970 4277 4591 5454 +7239 4 2 709 26 4035 4915 4364 4582 +7240 4 2 709 26 4063 5075 4509 3927 +7241 4 2 709 26 5677 4169 4665 5017 +7242 4 2 709 26 4489 5799 4626 4876 +7243 4 2 709 26 4144 4260 5010 5385 +7244 4 2 709 26 3947 5711 4807 5388 +7245 4 2 709 26 5426 3963 4430 4869 +7246 4 2 709 26 3947 5853 4331 5310 +7247 4 2 709 26 4331 5808 4742 4856 +7248 4 2 709 26 4071 4451 4590 5480 +7249 4 2 709 26 3988 5916 4919 5063 +7250 4 2 709 26 5917 4225 4774 4113 +7251 4 2 709 26 3987 6068 4618 4350 +7252 4 2 709 26 6011 5971 4831 4721 +7253 4 2 709 26 5262 4874 4317 4961 +7254 4 2 709 26 5248 5664 3902 5018 +7255 4 2 709 26 4834 5707 5120 3940 +7256 4 2 709 26 5935 4135 4509 5075 +7257 4 2 709 26 5806 4412 4520 5414 +7258 4 2 709 26 4216 5091 4765 5272 +7259 4 2 709 26 4266 6039 4627 4872 +7260 4 2 709 26 3892 5733 4830 5095 +7261 4 2 709 26 5772 4097 4805 5188 +7262 4 2 709 26 4360 5489 4165 4829 +7263 4 2 709 26 5067 4316 4654 4902 +7264 4 2 709 26 5993 5618 4588 4506 +7265 4 2 709 26 3992 5421 4275 4724 +7266 4 2 709 26 4437 5932 5552 4857 +7267 4 2 709 26 4346 5929 4531 5484 +7268 4 2 709 26 4030 5269 4335 5251 +7269 4 2 709 26 3898 5151 4261 5191 +7270 4 2 709 26 4395 5474 4501 4832 +7271 4 2 709 26 4068 4263 4720 4960 +7272 4 2 709 26 443 6029 4666 5432 +7273 4 2 709 26 5470 4038 4706 5080 +7274 4 2 709 26 3975 4749 4815 5295 +7275 4 2 709 26 5283 6065 5315 5592 +7276 4 2 709 26 4250 3901 5260 5058 +7277 4 2 709 26 3949 4408 4528 4792 +7278 4 2 709 26 4138 4436 4593 5516 +7279 4 2 709 26 5701 3879 4199 4957 +7280 4 2 709 26 6064 5888 5209 4233 +7281 4 2 709 26 5885 5839 4575 3882 +7282 4 2 709 26 5231 4163 4240 5033 +7283 4 2 709 26 3928 4337 5522 6009 +7284 4 2 709 26 5317 5717 4378 4671 +7285 4 2 709 26 5416 4378 4671 5317 +7286 4 2 709 26 4033 4719 4349 4920 +7287 4 2 709 26 4099 4883 4559 5895 +7288 4 2 709 26 4693 5807 4250 5058 +7289 4 2 709 26 5504 4210 4450 5341 +7290 4 2 709 26 5775 5726 3966 4394 +7291 4 2 709 26 3911 6065 4424 5056 +7292 4 2 709 26 5527 4060 4297 4789 +7293 4 2 709 26 4530 4013 4936 5594 +7294 4 2 709 26 4035 4175 5534 5218 +7295 4 2 709 26 4065 5343 5337 5257 +7296 4 2 709 26 4822 4137 4619 5338 +7297 4 2 709 26 5125 5079 5244 4177 +7298 4 2 709 26 5202 3988 4919 5063 +7299 4 2 709 26 3899 6033 4630 5217 +7300 4 2 709 26 5393 4035 4364 4582 +7301 4 2 709 26 5934 4260 5010 4144 +7302 4 2 709 26 4360 4027 5133 5295 +7303 4 2 709 26 4710 5079 5467 4045 +7304 4 2 709 26 5079 3944 4330 4774 +7305 4 2 709 26 3980 4318 4467 5376 +7306 4 2 709 26 5744 4931 4315 4623 +7307 4 2 709 26 4903 6047 5152 3933 +7308 4 2 709 26 4119 6045 4428 5566 +7309 4 2 709 26 4119 5705 5005 5512 +7310 4 2 709 26 4862 5902 5213 5826 +7311 4 2 709 26 5403 3873 4268 4770 +7312 4 2 709 26 4197 3992 4354 4886 +7313 4 2 709 26 4051 5212 4868 5093 +7314 4 2 709 26 4242 5642 4949 5156 +7315 4 2 709 26 3886 5655 4483 5088 +7316 4 2 709 26 3993 5072 4302 5013 +7317 4 2 709 26 4038 4779 4657 4695 +7318 4 2 709 26 4123 5220 4811 5073 +7319 4 2 709 26 4033 5440 4635 4920 +7320 4 2 709 26 5506 4029 4550 4866 +7321 4 2 709 26 5770 4371 4733 5230 +7322 4 2 709 26 5882 4578 4142 5257 +7323 4 2 709 26 5809 3873 4546 5274 +7324 4 2 709 26 4412 5511 5049 5058 +7325 4 2 709 26 4638 4230 5177 5871 +7326 4 2 709 26 5440 4830 3892 5247 +7327 4 2 709 26 3873 5855 4546 5274 +7328 4 2 709 26 5884 3977 4970 4432 +7329 4 2 709 26 3956 5354 4343 4839 +7330 4 2 709 26 4377 5814 4901 4236 +7331 4 2 709 26 6074 5184 1019 4841 +7332 4 2 709 26 3916 4139 4585 5607 +7333 4 2 709 26 5929 4531 5043 5852 +7334 4 2 709 26 5803 3913 4282 5279 +7335 4 2 709 26 6003 5087 4773 5326 +7336 4 2 709 26 4133 4321 5437 5453 +7337 4 2 709 26 4331 5617 4681 4856 +7338 4 2 709 26 4039 5424 4462 4952 +7339 4 2 709 26 4697 4710 5467 4045 +7340 4 2 709 26 3876 5407 4867 5273 +7341 4 2 709 26 4146 5274 4546 5855 +7342 4 2 709 26 4010 5641 4596 5144 +7343 4 2 709 26 5570 3955 4487 5429 +7344 4 2 709 26 4339 5954 4108 5903 +7345 4 2 709 26 5555 3883 4967 5072 +7346 4 2 709 26 4055 6032 4381 4684 +7347 4 2 709 26 4079 4685 4560 4491 +7348 4 2 709 26 3950 5820 4382 4444 +7349 4 2 709 26 5972 5582 4406 5473 +7350 4 2 709 26 3996 4277 4897 5038 +7351 4 2 709 26 6031 4126 4686 4977 +7352 4 2 709 26 5591 4137 4822 5095 +7353 4 2 709 26 5974 4415 5213 3941 +7354 4 2 709 26 4594 4238 5339 5627 +7355 4 2 709 26 5413 4697 5097 5565 +7356 4 2 709 26 4323 5682 4756 5274 +7357 4 2 709 26 4122 5525 4421 4926 +7358 4 2 709 26 3901 5439 4367 5058 +7359 4 2 709 26 3988 5207 4843 5202 +7360 4 2 709 26 3932 4320 4920 5358 +7361 4 2 709 26 4298 4764 4533 5018 +7362 4 2 709 26 3974 4774 5431 5912 +7363 4 2 709 26 5269 4144 4335 5251 +7364 4 2 709 26 4939 4324 5203 5589 +7365 4 2 709 26 4490 5689 4594 5437 +7366 4 2 709 26 6068 3923 4618 4296 +7367 4 2 709 26 5874 5577 4359 5030 +7368 4 2 709 26 5673 4458 4561 5304 +7369 4 2 709 26 5692 4006 4183 4629 +7370 4 2 709 26 4702 5089 4952 5190 +7371 4 2 709 26 3867 4048 4716 5134 +7372 4 2 709 26 4012 5988 4535 5234 +7373 4 2 709 26 5712 3997 4625 5189 +7374 4 2 709 26 5441 4955 4019 4904 +7375 4 2 709 26 5691 4224 3999 4982 +7376 4 2 709 26 5348 5079 4398 3944 +7377 4 2 709 26 3917 5627 4238 5468 +7378 4 2 709 26 4415 5974 4259 5381 +7379 4 2 709 26 5425 4046 4384 5066 +7380 4 2 709 26 4291 3876 5304 5407 +7381 4 2 709 26 3943 5683 4454 4584 +7382 4 2 709 26 5725 3888 4710 4951 +7383 4 2 709 26 4105 4290 4785 5253 +7384 4 2 709 26 5631 5857 5318 4293 +7385 4 2 709 26 5045 4645 6006 4200 +7386 4 2 709 26 5285 5849 3974 4744 +7387 4 2 709 26 5790 4102 4409 5233 +7388 4 2 709 26 5978 4122 4926 5525 +7389 4 2 709 26 6033 4410 3981 5720 +7390 4 2 709 26 4026 5661 4439 4448 +7391 4 2 709 26 3987 5519 4818 5265 +7392 4 2 709 26 3992 4197 4354 5723 +7393 4 2 709 26 4657 5184 4695 4779 +7394 4 2 709 26 4578 3902 5248 5664 +7395 4 2 709 26 6045 4119 4418 5566 +7396 4 2 709 26 4061 5074 4284 4548 +7397 4 2 709 26 3916 4139 4704 5802 +7398 4 2 709 26 4025 5578 4272 5216 +7399 4 2 709 26 4262 5890 5266 5372 +7400 4 2 709 26 4664 6020 4235 4948 +7401 4 2 709 26 5451 5358 5643 4003 +7402 4 2 709 26 4245 5362 4514 5356 +7403 4 2 709 26 5912 3974 4363 4571 +7404 4 2 709 26 4485 4155 4373 5334 +7405 4 2 709 26 4252 3896 5050 5682 +7406 4 2 709 26 5091 4216 5005 5705 +7407 4 2 709 26 5348 3944 4420 5211 +7408 4 2 709 26 4217 5893 4930 4981 +7409 4 2 709 26 3995 5520 5733 4830 +7410 4 2 709 26 4124 5567 4518 5159 +7411 4 2 709 26 3924 5615 4455 5082 +7412 4 2 709 26 4022 4316 4923 5843 +7413 4 2 709 26 3876 4291 4867 5407 +7414 4 2 709 26 5606 4276 4891 5457 +7415 4 2 709 26 4466 5192 4644 4927 +7416 4 2 709 26 5519 3896 4488 4818 +7417 4 2 709 26 5424 4039 4631 4952 +7418 4 2 709 26 5623 4176 4882 5210 +7419 4 2 709 26 4451 4449 5173 5511 +7420 4 2 709 26 5567 4282 4124 4443 +7421 4 2 709 26 3952 5413 4348 6041 +7422 4 2 709 26 4016 4853 4306 4543 +7423 4 2 709 26 5618 4289 4588 5537 +7424 4 2 709 26 4918 4264 4665 5672 +7425 4 2 709 26 5954 3930 5903 5485 +7426 4 2 709 26 5446 3885 4460 4999 +7427 4 2 709 26 6048 3893 4049 5557 +7428 4 2 709 26 5555 4341 5072 5163 +7429 4 2 709 26 4228 5581 4519 4554 +7430 4 2 709 26 4067 5668 4950 5140 +7431 4 2 709 26 5097 4136 4567 4821 +7432 4 2 709 26 5882 4578 5257 4234 +7433 4 2 709 26 5265 5385 4260 5682 +7434 4 2 709 26 3897 5684 5182 5245 +7435 4 2 709 26 3964 5358 5962 5566 +7436 4 2 709 26 4432 3977 4835 5583 +7437 4 2 709 26 5584 4292 4603 5322 +7438 4 2 709 26 5960 3898 4564 5207 +7439 4 2 709 26 4901 4343 4654 4839 +7440 4 2 709 26 5132 5444 4560 5758 +7441 4 2 709 26 5921 4304 4768 4617 +7442 4 2 709 26 4151 5703 4963 5307 +7443 4 2 709 26 4848 4960 5576 4263 +7444 4 2 709 26 4032 5779 4274 5227 +7445 4 2 709 26 4089 6041 4517 4562 +7446 4 2 709 26 4418 5064 4473 4963 +7447 4 2 709 26 3977 5976 4388 4865 +7448 4 2 709 26 5523 3960 4919 5491 +7449 4 2 709 26 3883 4672 4537 5004 +7450 4 2 709 26 4336 5546 4737 5028 +7451 4 2 709 26 3986 4258 4405 5183 +7452 4 2 709 26 3982 4358 4349 4837 +7453 4 2 709 26 3896 5504 4488 4818 +7454 4 2 709 26 6027 4518 5422 5771 +7455 4 2 709 26 5956 5858 4478 5189 +7456 4 2 709 26 4234 5243 5496 5754 +7457 4 2 709 26 4302 5072 4053 5013 +7458 4 2 709 26 5327 4047 4836 4892 +7459 4 2 709 26 5972 5582 5060 4406 +7460 4 2 709 26 3912 5117 4526 5026 +7461 4 2 709 26 3943 5335 4445 4389 +7462 4 2 709 26 4956 4017 4611 5965 +7463 4 2 709 26 5374 4075 4310 4574 +7464 4 2 709 26 4033 3964 5332 4419 +7465 4 2 709 26 4432 3898 5146 5660 +7466 4 2 709 26 5089 4231 4952 5190 +7467 4 2 709 26 4125 5893 4930 5194 +7468 4 2 709 26 4069 5290 4472 5117 +7469 4 2 709 26 4360 4027 4815 4829 +7470 4 2 709 26 4857 4437 5263 5552 +7471 4 2 709 26 5613 4145 5108 4541 +7472 4 2 709 26 3918 4055 4453 4583 +7473 4 2 709 26 4650 5917 4929 5199 +7474 4 2 709 26 5775 4729 4394 4014 +7475 4 2 709 26 5919 4083 4633 4271 +7476 4 2 709 26 4858 5936 4913 4029 +7477 4 2 709 26 4011 4565 4440 5610 +7478 4 2 709 26 5775 4353 4751 4848 +7479 4 2 709 26 5061 3989 4382 4802 +7480 4 2 709 26 4112 3950 4639 5510 +7481 4 2 709 26 4229 5995 4883 5731 +7482 4 2 709 26 5766 3881 4473 5748 +7483 4 2 709 26 4056 5957 4436 5653 +7484 4 2 709 26 4057 5795 5267 5767 +7485 4 2 709 26 4111 5155 4658 4732 +7486 4 2 709 26 5934 4803 5809 4144 +7487 4 2 709 26 5824 3971 4210 4393 +7488 4 2 709 26 4924 5800 5336 5699 +7489 4 2 709 26 5864 4155 4373 4719 +7490 4 2 709 26 4593 4171 5240 5516 +7491 4 2 709 26 4156 5627 3917 5468 +7492 4 2 709 26 4882 4141 4979 5391 +7493 4 2 709 26 4906 3967 4458 4561 +7494 4 2 709 26 5624 4490 4594 5437 +7495 4 2 709 26 4096 5115 4435 5033 +7496 4 2 709 26 4095 5733 4713 4808 +7497 4 2 709 26 4017 4454 4584 5389 +7498 4 2 709 26 4050 5560 4686 4940 +7499 4 2 709 26 5368 3886 4483 5088 +7500 4 2 709 26 5853 3947 4331 5617 +7501 4 2 709 26 4114 5887 4757 5197 +7502 4 2 709 26 4221 5660 4835 5158 +7503 4 2 709 26 5496 4087 4470 4690 +7504 4 2 709 26 4167 4649 5016 5485 +7505 4 2 709 26 3895 4465 4974 5487 +7506 4 2 709 26 4200 6006 5045 5422 +7507 4 2 709 26 3944 5708 4420 5211 +7508 4 2 709 26 4075 5905 4574 4459 +7509 4 2 709 26 4172 5906 4632 5497 +7510 4 2 709 26 5691 3999 4826 4982 +7511 4 2 709 26 3977 5583 4361 4835 +7512 4 2 709 26 3971 5450 4210 4393 +7513 4 2 709 26 5245 5291 4968 4646 +7514 4 2 709 26 3972 5665 4385 5472 +7515 4 2 709 26 4086 5776 4335 5774 +7516 4 2 709 26 3982 4358 5333 4349 +7517 4 2 709 26 5954 3930 4247 4108 +7518 4 2 709 26 4177 3974 5849 4876 +7519 4 2 709 26 4330 3895 4465 4974 +7520 4 2 709 26 6065 4238 5283 5315 +7521 4 2 709 26 5151 4042 4703 4753 +7522 4 2 709 26 4417 5974 4259 5902 +7523 4 2 709 26 3898 4970 4221 4432 +7524 4 2 709 26 5994 3916 5081 5661 +7525 4 2 709 26 3889 5614 4636 5850 +7526 4 2 709 26 4102 4249 4409 5233 +7527 4 2 709 26 3884 4763 4243 5012 +7528 4 2 709 26 5936 4031 4730 5316 +7529 4 2 709 26 4774 4380 4682 5324 +7530 4 2 709 26 4118 5354 5062 5223 +7531 4 2 709 26 5520 3926 4830 5361 +7532 4 2 709 26 3941 5826 4379 5213 +7533 4 2 709 26 3905 4142 5018 5187 +7534 4 2 709 26 5958 4556 4252 5104 +7535 4 2 709 26 5818 4147 4877 5539 +7536 4 2 709 26 5423 3991 4924 5083 +7537 4 2 709 26 6030 3871 4311 5396 +7538 4 2 709 26 3952 6041 4517 5413 +7539 4 2 709 26 4566 5744 4705 4734 +7540 4 2 709 26 3900 5354 5223 5062 +7541 4 2 709 26 5962 4920 3964 5796 +7542 4 2 709 26 5188 3924 5163 4375 +7543 4 2 709 26 5063 3926 4222 4789 +7544 4 2 709 26 4382 3950 5225 5510 +7545 4 2 709 26 4472 5975 5117 5290 +7546 4 2 709 26 3891 5668 4568 4838 +7547 4 2 709 26 4026 5367 4344 4793 +7548 4 2 709 26 4318 4467 5647 4334 +7549 4 2 709 26 5501 4190 4661 5446 +7550 4 2 709 26 4631 5755 4952 5216 +7551 4 2 709 26 4157 5515 4759 4965 +7552 4 2 709 26 6052 3991 5106 4368 +7553 4 2 709 26 4192 5508 5139 5365 +7554 4 2 709 26 5444 4491 5441 4019 +7555 4 2 709 26 4647 5774 4869 5176 +7556 4 2 709 26 4506 5618 4588 5537 +7557 4 2 709 26 5693 4288 4783 5542 +7558 4 2 709 26 3867 4048 4274 5227 +7559 4 2 709 26 4109 4257 4408 5466 +7560 4 2 709 26 5367 3931 4344 4793 +7561 4 2 709 26 4704 4139 5123 5802 +7562 4 2 709 26 5259 4148 4601 4915 +7563 4 2 709 26 6053 5951 4771 4573 +7564 4 2 709 26 3992 5881 4275 5421 +7565 4 2 709 26 4192 4961 5419 5494 +7566 4 2 709 26 5787 4269 4637 4868 +7567 4 2 709 26 3989 5101 4382 4802 +7568 4 2 709 26 5431 3974 4571 5285 +7569 4 2 709 26 3900 5023 4896 5694 +7570 4 2 709 26 4835 4432 5146 5660 +7571 4 2 709 26 4210 5702 4969 5415 +7572 4 2 709 26 3997 5956 4269 4687 +7573 4 2 709 26 5148 5863 5327 4530 +7574 4 2 709 26 5979 4000 4266 4771 +7575 4 2 709 26 5444 4491 4560 4685 +7576 4 2 709 26 5561 4103 4678 4817 +7577 4 2 709 26 5710 4342 4979 5582 +7578 4 2 709 26 3986 5593 4351 4814 +7579 4 2 709 26 3918 5954 4247 5746 +7580 4 2 709 26 4175 5582 4406 5424 +7581 4 2 709 26 4963 5868 5307 5703 +7582 4 2 709 26 5659 5882 5497 3878 +7583 4 2 709 26 5066 4425 4616 4898 +7584 4 2 709 26 3952 4348 5413 5638 +7585 4 2 709 26 3917 4028 4902 5067 +7586 4 2 709 26 4531 5929 5043 5484 +7587 4 2 709 26 5108 4074 4395 4591 +7588 4 2 709 26 4063 3927 4509 5028 +7589 4 2 709 26 5151 4042 4659 4791 +7590 4 2 709 26 4528 5482 4713 5444 +7591 4 2 709 26 3992 4483 4724 5286 +7592 4 2 709 26 5659 5882 4632 5497 +7593 4 2 709 26 5951 4772 4707 4000 +7594 4 2 709 26 6080 5360 882 4776 +7595 4 2 709 26 4592 4304 5021 3966 +7596 4 2 709 26 6055 4247 4482 5087 +7597 4 2 709 26 4789 3963 4464 4733 +7598 4 2 709 26 5066 4046 4384 4898 +7599 4 2 709 26 4224 5768 5397 5449 +7600 4 2 709 26 4761 4433 4628 5615 +7601 4 2 709 26 5926 4106 4253 4723 +7602 4 2 709 26 4129 3998 5129 5446 +7603 4 2 709 26 5690 3912 5026 4153 +7604 4 2 709 26 4234 5575 4578 5257 +7605 4 2 709 26 5933 4110 4736 4973 +7606 4 2 709 26 5946 5851 4714 3994 +7607 4 2 709 26 4474 4130 5380 5397 +7608 4 2 709 26 4160 5362 4324 5203 +7609 4 2 709 26 5928 4547 5134 4048 +7610 4 2 709 26 5755 4342 4631 5424 +7611 4 2 709 26 5345 3890 4499 4840 +7612 4 2 709 26 5273 4547 4048 5035 +7613 4 2 709 26 5921 4070 4569 4617 +7614 4 2 709 26 3895 4258 5122 5669 +7615 4 2 709 26 3931 5367 4344 5352 +7616 4 2 709 26 5916 4919 5063 5523 +7617 4 2 709 26 4203 4139 4764 5607 +7618 4 2 709 26 4117 5239 4462 5190 +7619 4 2 709 26 4000 5920 4972 5469 +7620 4 2 709 26 6039 4047 5500 5077 +7621 4 2 709 26 4079 4685 4491 5483 +7622 4 2 709 26 4091 5988 4535 4788 +7623 4 2 709 26 3957 4471 4554 5831 +7624 4 2 709 26 5117 4490 5306 4149 +7625 4 2 709 26 3871 6030 4311 5210 +7626 4 2 709 26 5870 5238 4208 5129 +7627 4 2 709 26 4568 4179 4509 4536 +7628 4 2 709 26 4016 5876 4575 3882 +7629 4 2 709 26 3895 5917 5211 5669 +7630 4 2 709 26 4123 5245 4677 4968 +7631 4 2 709 26 4356 5800 4924 5699 +7632 4 2 709 26 5667 4107 4717 5174 +7633 4 2 709 26 3951 5511 4412 5058 +7634 4 2 709 26 5968 4199 5138 5596 +7635 4 2 709 26 5537 4018 5399 5417 +7636 4 2 709 26 3896 5824 5504 5110 +7637 4 2 709 26 5523 4222 4789 5063 +7638 4 2 709 26 5079 5987 4045 3944 +7639 4 2 709 26 4283 5953 4736 4855 +7640 4 2 709 26 4143 4358 6038 4837 +7641 4 2 709 26 3908 5754 4004 5257 +7642 4 2 709 26 3965 4522 4623 4312 +7643 4 2 709 26 5103 4567 4712 4947 +7644 4 2 709 26 3964 6045 4418 5566 +7645 4 2 709 26 5355 4020 4268 5054 +7646 4 2 709 26 4258 5980 4718 4785 +7647 4 2 709 26 3956 5908 4343 5354 +7648 4 2 709 26 5920 4266 4771 5648 +7649 4 2 709 26 3881 4473 4479 5766 +7650 4 2 709 26 5764 4412 5135 3985 +7651 4 2 709 26 6045 3964 4767 5563 +7652 4 2 709 26 5478 4424 4729 5056 +7653 4 2 709 26 5516 3912 5026 5242 +7654 4 2 709 26 657 6058 5166 5888 +7655 4 2 709 26 4239 6005 4856 5853 +7656 4 2 709 26 4084 5744 4566 4734 +7657 4 2 709 26 5848 4221 5112 5408 +7658 4 2 709 26 6034 5047 3903 5086 +7659 4 2 709 26 4004 4234 5724 5257 +7660 4 2 709 26 4013 5594 4602 4936 +7661 4 2 709 26 5056 3911 4276 4424 +7662 4 2 709 26 5039 3936 4329 4539 +7663 4 2 709 26 4075 5905 4310 4574 +7664 4 2 709 26 3967 5394 4383 4846 +7665 4 2 709 26 4556 5801 4422 4726 +7666 4 2 709 26 4716 5928 5134 4048 +7667 4 2 709 26 6011 6033 3899 5971 +7668 4 2 709 26 3916 4439 4806 5661 +7669 4 2 709 26 3871 5455 4311 5396 +7670 4 2 709 26 4442 3949 4685 4739 +7671 4 2 709 26 4539 3888 5059 5289 +7672 4 2 709 26 5494 4023 4532 5262 +7673 4 2 709 26 5039 3997 4329 4625 +7674 4 2 709 26 4385 5677 4665 5017 +7675 4 2 709 26 5415 4503 3955 4393 +7676 4 2 709 26 4212 5620 5193 5588 +7677 4 2 709 26 5368 4066 4552 5002 +7678 4 2 709 26 5538 3873 4484 4546 +7679 4 2 709 26 4301 5771 5000 5124 +7680 4 2 709 26 5803 4302 3993 4265 +7681 4 2 709 26 4091 6068 4618 4296 +7682 4 2 709 26 3873 5855 4484 4546 +7683 4 2 709 26 4061 5423 4924 5083 +7684 4 2 709 26 5139 5494 4532 5262 +7685 4 2 709 26 4056 4913 4533 4746 +7686 4 2 709 26 5563 4098 4910 5096 +7687 4 2 709 26 4068 4263 4577 4741 +7688 4 2 709 26 4133 6034 4482 5624 +7689 4 2 709 26 4096 4029 4858 5529 +7690 4 2 709 26 3906 5031 5255 4307 +7691 4 2 709 26 4828 4054 4640 4966 +7692 4 2 709 26 4826 4543 5507 4198 +7693 4 2 709 26 4113 5517 4225 4774 +7694 4 2 709 26 4857 4074 4591 5263 +7695 4 2 709 26 5840 5152 4616 4132 +7696 4 2 709 26 5266 4071 4582 4878 +7697 4 2 709 26 5829 4276 4424 5478 +7698 4 2 709 26 4066 5375 4842 5002 +7699 4 2 709 26 4718 4105 4650 5669 +7700 4 2 709 26 4266 5979 4771 5648 +7701 4 2 709 26 4385 3972 4665 5677 +7702 4 2 709 26 5821 5831 5859 4407 +7703 4 2 709 26 4176 5794 4578 5248 +7704 4 2 709 26 4051 3891 4568 4838 +7705 4 2 709 26 4350 4091 4535 4788 +7706 4 2 709 26 5907 5575 5257 4578 +7707 4 2 709 26 6011 6033 4630 3899 +7708 4 2 709 26 5946 3994 4714 5757 +7709 4 2 709 26 5440 4033 4349 4920 +7710 4 2 709 26 4707 4245 3913 5356 +7711 4 2 709 26 5093 5487 4465 3958 +7712 4 2 709 26 5140 4010 4950 4992 +7713 4 2 709 26 5435 4697 4963 5307 +7714 4 2 709 26 3906 5044 4437 4765 +7715 4 2 709 26 5996 3920 4200 5180 +7716 4 2 709 26 4216 4765 4437 5044 +7717 4 2 709 26 3936 5636 4329 4539 +7718 4 2 709 26 4406 4173 4651 5099 +7719 4 2 709 26 4113 5708 4682 4774 +7720 4 2 709 26 5756 4039 3925 5424 +7721 4 2 709 26 5669 3895 4465 5211 +7722 4 2 709 26 6029 358 5314 5432 +7723 4 2 709 26 5758 4837 4560 5247 +7724 4 2 709 26 4965 4062 4373 5557 +7725 4 2 709 26 4664 5800 4235 5052 +7726 4 2 709 26 5873 4304 5185 5546 +7727 4 2 709 26 4347 4568 5093 5212 +7728 4 2 709 26 4391 5724 3878 4426 +7729 4 2 709 26 5513 3884 4565 5222 +7730 4 2 709 26 4077 4499 4553 5750 +7731 4 2 709 26 6027 4200 4836 5045 +7732 4 2 709 26 5294 5484 5043 3872 +7733 4 2 709 26 4177 3974 5079 5244 +7734 4 2 709 26 4439 5883 5447 4806 +7735 4 2 709 26 4067 5546 4336 5028 +7736 4 2 709 26 3926 5063 4597 4789 +7737 4 2 709 26 4140 5587 4570 4798 +7738 4 2 709 26 4146 5105 4797 4845 +7739 4 2 709 26 5221 4033 4325 4550 +7740 4 2 709 26 3909 5375 4484 4724 +7741 4 2 709 26 4029 5957 5032 5506 +7742 4 2 709 26 4566 4705 3965 5737 +7743 4 2 709 26 5114 5102 4666 4115 +7744 4 2 709 26 4264 4918 5608 5672 +7745 4 2 709 26 4663 4699 4723 4983 +7746 4 2 709 26 3979 6023 4642 4384 +7747 4 2 709 26 4017 4584 4454 5683 +7748 4 2 709 26 5853 4331 4742 4856 +7749 4 2 709 26 4320 5358 4390 5147 +7750 4 2 709 26 5596 4166 4199 5138 +7751 4 2 709 26 3971 4275 5286 5619 +7752 4 2 709 26 5569 3942 4286 4534 +7753 4 2 709 26 5364 5946 4090 4714 +7754 4 2 709 26 4309 5742 5229 4023 +7755 4 2 709 26 4070 5593 4768 4820 +7756 4 2 709 26 5725 4093 4517 5289 +7757 4 2 709 26 4629 4346 3941 4183 +7758 4 2 709 26 6053 4771 5951 4000 +7759 4 2 709 26 5420 4315 5820 4080 +7760 4 2 709 26 5882 4578 5794 5248 +7761 4 2 709 26 4701 4348 4721 5171 +7762 4 2 709 26 5309 4140 4570 4798 +7763 4 2 709 26 5766 4203 4764 5607 +7764 4 2 709 26 3949 4293 4685 4739 +7765 4 2 709 26 4520 4995 5918 4800 +7766 4 2 709 26 5439 3951 4367 5058 +7767 4 2 709 26 4668 4374 5312 4290 +7768 4 2 709 26 3889 4297 4645 5292 +7769 4 2 709 26 4197 4275 5286 3992 +7770 4 2 709 26 4012 3945 4788 5723 +7771 4 2 709 26 4514 4481 5240 5293 +7772 4 2 709 26 4144 4260 5274 5809 +7773 4 2 709 26 5385 4144 5009 5850 +7774 4 2 709 26 5316 4298 4533 5018 +7775 4 2 709 26 4439 4207 4704 5447 +7776 4 2 709 26 6013 4082 4692 4431 +7777 4 2 709 26 4232 4956 4879 5862 +7778 4 2 709 26 4684 6032 4381 5195 +7779 4 2 709 26 5139 5494 5262 4192 +7780 4 2 709 26 5367 4171 5305 5352 +7781 4 2 709 26 3885 5129 4208 4797 +7782 4 2 709 26 3983 5904 4401 4903 +7783 4 2 709 26 5124 5771 5386 4124 +7784 4 2 709 26 3885 5446 4008 4999 +7785 4 2 709 26 4476 5313 4047 4892 +7786 4 2 709 26 5925 4348 4480 5595 +7787 4 2 709 26 5960 4919 4564 4970 +7788 4 2 709 26 5508 4193 5139 5365 +7789 4 2 709 26 3874 4147 4357 5822 +7790 4 2 709 26 5760 4169 4665 5677 +7791 4 2 709 26 5960 5884 4919 4970 +7792 4 2 709 26 6002 4273 4550 4866 +7793 4 2 709 26 5385 3984 4422 5009 +7794 4 2 709 26 4498 5571 4010 5783 +7795 4 2 709 26 4010 4950 4314 4525 +7796 4 2 709 26 4131 4899 4744 5285 +7797 4 2 709 26 4126 5092 4686 4977 +7798 4 2 709 26 3958 4465 5130 5487 +7799 4 2 709 26 4348 5925 4480 4819 +7800 4 2 709 26 3937 5332 4333 4550 +7801 4 2 709 26 5986 4381 3948 4219 +7802 4 2 709 26 5855 3873 4268 5403 +7803 4 2 709 26 5541 4070 4768 4820 +7804 4 2 709 26 5872 4090 4714 5364 +7805 4 2 709 26 4260 4144 5274 5385 +7806 4 2 709 26 4402 6067 4190 5501 +7807 4 2 709 26 5532 5256 4996 5699 +7808 4 2 709 26 5050 5824 5415 4411 +7809 4 2 709 26 4639 5510 5182 4112 +7810 4 2 709 26 4063 4796 5048 5075 +7811 4 2 709 26 4702 4025 4426 4631 +7812 4 2 709 26 4438 4207 4609 3927 +7813 4 2 709 26 5349 5523 4932 4370 +7814 4 2 709 26 5246 3872 4455 5082 +7815 4 2 709 26 5125 5079 4330 5244 +7816 4 2 709 26 5456 4203 4585 4988 +7817 4 2 709 26 5916 3988 4387 5063 +7818 4 2 709 26 4164 5766 4473 5748 +7819 4 2 709 26 6055 4482 4777 4305 +7820 4 2 709 26 5695 5299 4184 5573 +7821 4 2 709 26 4593 4171 4895 5240 +7822 4 2 709 26 5528 4121 4728 4935 +7823 4 2 709 26 3884 4763 4786 4243 +7824 4 2 709 26 4851 4177 4398 5125 +7825 4 2 709 26 5455 4311 4882 5210 +7826 4 2 709 26 3911 4531 4966 4321 +7827 4 2 709 26 5958 4252 4695 4978 +7828 4 2 709 26 5343 4214 4469 5337 +7829 4 2 709 26 5791 4121 4888 5505 +7830 4 2 709 26 5971 3899 5107 5217 +7831 4 2 709 26 4154 4470 4997 5911 +7832 4 2 709 26 4154 5787 4461 4637 +7833 4 2 709 26 4157 4033 4333 4419 +7834 4 2 709 26 4310 4328 4990 5811 +7835 4 2 709 26 3895 5669 5122 5199 +7836 4 2 709 26 5398 4156 4424 4640 +7837 4 2 709 26 5298 5525 4781 4285 +7838 4 2 709 26 4316 5843 4902 5067 +7839 4 2 709 26 4731 4156 4475 5468 +7840 4 2 709 26 3921 5280 4425 4898 +7841 4 2 709 26 4136 4334 5289 5413 +7842 4 2 709 26 5676 4205 4663 5533 +7843 4 2 709 26 4407 5821 4976 5098 +7844 4 2 709 26 4015 4790 4235 4664 +7845 4 2 709 26 4707 3913 4245 4772 +7846 4 2 709 26 4158 4483 4643 4788 +7847 4 2 709 26 3891 4829 4893 5020 +7848 4 2 709 26 5560 4686 5357 5479 +7849 4 2 709 26 5348 5079 5125 4398 +7850 4 2 709 26 5954 3930 5485 4247 +7851 4 2 709 26 4498 4010 5571 5144 +7852 4 2 709 26 4906 4458 4582 5393 +7853 4 2 709 26 5998 4200 4645 5292 +7854 4 2 709 26 4221 4703 5151 5660 +7855 4 2 709 26 5183 3986 4258 5130 +7856 4 2 709 26 3896 5504 4818 5155 +7857 4 2 709 26 4396 5612 4957 5138 +7858 4 2 709 26 5478 5275 4729 4424 +7859 4 2 709 26 3975 4217 5778 4981 +7860 4 2 709 26 5479 4686 4984 5107 +7861 4 2 709 26 4360 4027 4829 5133 +7862 4 2 709 26 3914 4163 4240 4462 +7863 4 2 709 26 5478 3994 4276 5056 +7864 4 2 709 26 5421 3909 4275 4724 +7865 4 2 709 26 4206 3968 5317 5547 +7866 4 2 709 26 5699 4061 4924 5083 +7867 4 2 709 26 4566 3965 4705 5744 +7868 4 2 709 26 5124 5313 5781 4301 +7869 4 2 709 26 4179 4347 4974 5548 +7870 4 2 709 26 3910 4527 4873 5299 +7871 4 2 709 26 3899 6033 5217 5971 +7872 4 2 709 26 5406 5908 5167 4760 +7873 4 2 709 26 5132 5444 5758 4713 +7874 4 2 709 26 5285 5849 4744 4131 +7875 4 2 709 26 5882 5794 4578 4234 +7876 4 2 709 26 5269 4030 4335 4803 +7877 4 2 709 26 5852 3968 5011 5070 +7878 4 2 709 26 5867 3973 4801 4890 +7879 4 2 709 26 5020 6062 4829 4100 +7880 4 2 709 26 3990 5711 5388 4807 +7881 4 2 709 26 5063 4060 4597 4789 +7882 4 2 709 26 5497 5659 4631 4272 +7883 4 2 709 26 5819 4019 4560 5132 +7884 4 2 709 26 4217 5861 4516 5778 +7885 4 2 709 26 5780 4095 4713 4808 +7886 4 2 709 26 3983 6008 4178 4903 +7887 4 2 709 26 3887 5686 4586 5383 +7888 4 2 709 26 5875 4106 4742 5310 +7889 4 2 709 26 4173 4406 4651 5393 +7890 4 2 709 26 5417 5725 4478 4824 +7891 4 2 709 26 4074 4786 4437 4857 +7892 4 2 709 26 4135 4165 4372 4578 +7893 4 2 709 26 4734 4208 4859 5154 +7894 4 2 709 26 5375 4150 4842 5002 +7895 4 2 709 26 5247 3892 4560 5132 +7896 4 2 709 26 4289 5708 4782 5526 +7897 4 2 709 26 3886 5963 4132 4552 +7898 4 2 709 26 5577 4248 4831 5030 +7899 4 2 709 26 5783 4523 4992 5140 +7900 4 2 709 26 5514 4132 5099 5476 +7901 4 2 709 26 5188 4097 4805 5163 +7902 4 2 709 26 4493 5751 4835 5158 +7903 4 2 709 26 3908 4065 5257 5343 +7904 4 2 709 26 4275 4724 5286 3992 +7905 4 2 709 26 4883 4099 4494 5895 +7906 4 2 709 26 4258 4105 5130 4785 +7907 4 2 709 26 5469 4000 4266 5170 +7908 4 2 709 26 4170 4967 5617 3993 +7909 4 2 709 26 4000 5920 4266 4771 +7910 4 2 709 26 4074 4857 4591 5108 +7911 4 2 709 26 4114 5675 4934 5197 +7912 4 2 709 26 5503 5013 5279 3913 +7913 4 2 709 26 6069 4880 5029 5706 +7914 4 2 709 26 5520 5361 3995 4371 +7915 4 2 709 26 4033 6015 4325 5332 +7916 4 2 709 26 5700 4212 5588 5620 +7917 4 2 709 26 4682 4774 5324 5517 +7918 4 2 709 26 4296 5380 5264 4644 +7919 4 2 709 26 5431 4330 4774 5079 +7920 4 2 709 26 4200 6027 4518 5422 +7921 4 2 709 26 4071 4915 4582 4878 +7922 4 2 709 26 5905 4725 4310 4328 +7923 4 2 709 26 5727 4198 4826 5507 +7924 4 2 709 26 3950 5121 4639 5061 +7925 4 2 709 26 5529 4547 5134 5153 +7926 4 2 709 26 5105 4797 5429 5570 +7927 4 2 709 26 5627 3917 4238 5339 +7928 4 2 709 26 5529 4096 4199 5153 +7929 4 2 709 26 4549 6043 4085 4581 +7930 4 2 709 26 4537 4672 5186 5352 +7931 4 2 709 26 5513 4440 5127 5409 +7932 4 2 709 26 5147 5005 5566 4003 +7933 4 2 709 26 5607 4203 4585 5456 +7934 4 2 709 26 5714 4375 4805 5329 +7935 4 2 709 26 4429 5455 4882 5210 +7936 4 2 709 26 4406 5582 5060 5424 +7937 4 2 709 26 5813 5120 4016 4285 +7938 4 2 709 26 5989 3978 4953 5178 +7939 4 2 709 26 5529 4547 4858 5134 +7940 4 2 709 26 4214 3936 5059 5395 +7941 4 2 709 26 4128 5110 4969 5415 +7942 4 2 709 26 5259 4878 4586 3951 +7943 4 2 709 26 4463 5120 4708 4834 +7944 4 2 709 26 3894 5588 4212 5193 +7945 4 2 709 26 4640 4054 4828 5351 +7946 4 2 709 26 5948 5497 4426 5395 +7947 4 2 709 26 4710 5079 4398 5467 +7948 4 2 709 26 5412 5175 4551 4002 +7949 4 2 709 26 5911 5892 4154 4470 +7950 4 2 709 26 4048 3867 4274 5296 +7951 4 2 709 26 5688 3886 4483 5368 +7952 4 2 709 26 4269 6012 4890 5858 +7953 4 2 709 26 5063 3988 4387 4843 +7954 4 2 709 26 4296 5264 5380 4486 +7955 4 2 709 26 4144 4323 5274 5385 +7956 4 2 709 26 4179 4568 5093 4347 +7957 4 2 709 26 4075 5707 4459 4575 +7958 4 2 709 26 5936 4096 4435 4740 +7959 4 2 709 26 3986 4196 4814 5487 +7960 4 2 709 26 4316 4022 4860 5843 +7961 4 2 709 26 5654 664 4954 5630 +7962 4 2 709 26 4827 5435 4697 4299 +7963 4 2 709 26 5932 4307 3996 5031 +7964 4 2 709 26 4032 5516 5026 5242 +7965 4 2 709 26 5670 5371 3884 4577 +7966 4 2 709 26 5734 282 6070 4989 +7967 4 2 709 26 5516 3912 4526 5026 +7968 4 2 709 26 4018 4233 4824 5417 +7969 4 2 709 26 5455 3871 4311 5210 +7970 4 2 709 26 4956 4232 4879 5119 +7971 4 2 709 26 5152 4099 4494 5088 +7972 4 2 709 26 5431 4330 5079 5244 +7973 4 2 709 26 5546 4063 4737 5028 +7974 4 2 709 26 4136 5647 4567 4821 +7975 4 2 709 26 4033 5332 4325 4550 +7976 4 2 709 26 4144 4335 4803 5269 +7977 4 2 709 26 4149 5452 4490 4594 +7978 4 2 709 26 4444 5820 4999 5501 +7979 4 2 709 26 4131 5244 4988 5241 +7980 4 2 709 26 4271 4083 4633 5486 +7981 4 2 709 26 5867 4269 4890 5858 +7982 4 2 709 26 4472 5352 4537 5186 +7983 4 2 709 26 5663 4112 4402 3950 +7984 4 2 709 26 4236 4009 5003 4499 +7985 4 2 709 26 5900 3980 4414 5373 +7986 4 2 709 26 4212 5700 4395 5620 +7987 4 2 709 26 4494 5895 5152 5842 +7988 4 2 709 26 5346 4582 4915 4035 +7989 4 2 709 26 4062 3904 4965 4373 +7990 4 2 709 26 4144 5385 5614 5850 +7991 4 2 709 26 5327 5850 3889 4636 +7992 4 2 709 26 5366 4030 4297 4645 +7993 4 2 709 26 4066 5375 4484 4842 +7994 4 2 709 26 5110 3896 5155 5504 +7995 4 2 709 26 4453 4381 4055 6032 +7996 4 2 709 26 4171 3912 4526 5516 +7997 4 2 709 26 5124 5313 4301 4627 +7998 4 2 709 26 3951 4148 4804 5259 +7999 4 2 709 26 5989 4129 4460 4661 +8000 4 2 709 26 4296 4486 4618 5264 +8001 4 2 709 26 5951 4772 4000 5469 +8002 4 2 709 26 4060 5202 4919 5063 +8003 4 2 709 26 4454 3943 4283 5683 +8004 4 2 709 26 4258 4718 5122 5669 +8005 4 2 709 26 3880 5436 4610 5359 +8006 4 2 709 26 4510 4229 4559 5731 +8007 4 2 709 26 4140 4601 4825 5698 +8008 4 2 709 26 4374 5991 4890 5353 +8009 4 2 709 26 3973 5093 4347 4974 +8010 4 2 709 26 3870 5756 4406 5476 +8011 4 2 709 26 4039 5984 4400 4725 +8012 4 2 709 26 4087 4961 4470 4874 +8013 4 2 709 26 4171 4526 5117 5975 +8014 4 2 709 26 5662 4157 4373 4965 +8015 4 2 709 26 5606 4379 4891 5342 +8016 4 2 709 26 4718 4043 4650 4778 +8017 4 2 709 26 3997 5956 4687 5343 +8018 4 2 709 26 4451 6057 5041 5322 +8019 4 2 709 26 4038 5155 4657 4732 +8020 4 2 709 26 5847 4286 4540 5790 +8021 4 2 709 26 4882 3934 4429 5587 +8022 4 2 709 26 5992 5676 3894 5335 +8023 4 2 709 26 5824 4411 5105 5415 +8024 4 2 709 26 4078 5800 4664 5532 +8025 4 2 709 26 4297 5998 5292 5527 +8026 4 2 709 26 4207 5802 4439 4704 +8027 4 2 709 26 5851 3994 4276 4891 +8028 4 2 709 26 5446 4129 4460 5129 +8029 4 2 709 26 5431 3895 4225 4774 +8030 4 2 709 26 4059 5064 4567 4821 +8031 4 2 709 26 5577 4126 4248 4984 +8032 4 2 709 26 3904 4373 4157 4965 +8033 4 2 709 26 4149 5889 4594 5277 +8034 4 2 709 26 3950 4112 5225 5510 +8035 4 2 709 26 4789 3926 4222 4733 +8036 4 2 709 26 4231 5024 4787 5818 +8037 4 2 709 26 4027 6061 4376 4604 +8038 4 2 709 26 3952 6064 4500 5209 +8039 4 2 709 26 4607 4846 4061 5267 +8040 4 2 709 26 5327 5850 4836 3889 +8041 4 2 709 26 4263 4848 3990 5576 +8042 4 2 709 26 4242 5747 4949 5288 +8043 4 2 709 26 4197 4275 4812 5619 +8044 4 2 709 26 4499 4555 5003 5750 +8045 4 2 709 26 4577 3884 4504 5371 +8046 4 2 709 26 4214 5882 5257 5724 +8047 4 2 709 26 5570 4146 4756 5105 +8048 4 2 709 26 4189 5348 4420 4801 +8049 4 2 709 26 4188 5985 4341 4300 +8050 4 2 709 26 3957 5373 4414 4581 +8051 4 2 709 26 4163 3914 4231 4952 +8052 4 2 709 26 4333 4033 4550 5332 +8053 4 2 709 26 5569 5847 4286 4540 +8054 4 2 709 26 5706 4041 4880 5029 +8055 4 2 709 26 4125 3946 4576 4755 +8056 4 2 709 26 4204 5128 4759 4965 +8057 4 2 709 26 6043 4147 4357 4581 +8058 4 2 709 26 5811 4310 4328 4574 +8059 4 2 709 26 5398 4156 4475 4731 +8060 4 2 709 26 4379 5826 4862 5213 +8061 4 2 709 26 5182 3897 4259 4639 +8062 4 2 709 26 4485 5996 4256 5884 +8063 4 2 709 26 4708 6024 5120 4543 +8064 4 2 709 26 4564 3988 4370 4919 +8065 4 2 709 26 4351 6050 4523 5459 +8066 4 2 709 26 4113 4758 4929 5199 +8067 4 2 709 26 4695 4102 4252 5475 +8068 4 2 709 26 5120 5404 4016 4285 +8069 4 2 709 26 3991 5016 5083 5423 +8070 4 2 709 26 5551 5560 4688 5360 +8071 4 2 709 26 5433 4067 5873 4336 +8072 4 2 709 26 5617 5805 4672 4967 +8073 4 2 709 26 4140 5698 4961 5309 +8074 4 2 709 26 5642 4242 4949 5288 +8075 4 2 709 26 4546 4146 5855 4484 +8076 4 2 709 26 3885 5136 4460 4999 +8077 4 2 709 26 4876 4380 4980 4626 +8078 4 2 709 26 3975 4896 4217 4755 +8079 4 2 709 26 5441 4955 4589 4019 +8080 4 2 709 26 5774 3963 4869 4889 +8081 4 2 709 26 4556 5801 4726 3942 +8082 4 2 709 26 3881 5643 5515 4419 +8083 4 2 709 26 4873 3995 4264 5760 +8084 4 2 709 26 5668 4568 4838 5140 +8085 4 2 709 26 4161 5555 4341 4346 +8086 4 2 709 26 5367 4026 4344 5278 +8087 4 2 709 26 4107 5174 4693 4717 +8088 4 2 709 26 5233 4102 4657 5184 +8089 4 2 709 26 3904 4157 4273 5506 +8090 4 2 709 26 5843 4316 4923 5067 +8091 4 2 709 26 4948 4015 4664 5322 +8092 4 2 709 26 3885 5744 4487 4734 +8093 4 2 709 26 3963 5426 4647 4869 +8094 4 2 709 26 3992 4483 5088 5368 +8095 4 2 709 26 4103 5986 5416 4219 +8096 4 2 709 26 4247 6055 5165 3918 +8097 4 2 709 26 4101 6014 4847 4516 +8098 4 2 709 26 5047 3903 5086 5452 +8099 4 2 709 26 5758 4528 4713 5444 +8100 4 2 709 26 5997 4290 5590 5634 +8101 4 2 709 26 4213 5563 4910 5096 +8102 4 2 709 26 5664 4135 5048 5075 +8103 4 2 709 26 4129 5392 4460 5129 +8104 4 2 709 26 5523 4060 4919 5063 +8105 4 2 709 26 4307 5643 4765 5451 +8106 4 2 709 26 4019 4955 4589 5090 +8107 4 2 709 26 5989 4129 4953 5246 +8108 4 2 709 26 4186 5238 4270 5226 +8109 4 2 709 26 3898 4970 4564 4221 +8110 4 2 709 26 5657 4062 4772 5170 +8111 4 2 709 26 4967 4302 5617 3993 +8112 4 2 709 26 5723 4012 4354 5655 +8113 4 2 709 26 3985 5905 4574 4328 +8114 4 2 709 26 4264 3972 4665 5672 +8115 4 2 709 26 5304 3876 4458 4561 +8116 4 2 709 26 3909 5421 4270 5226 +8117 4 2 709 26 4386 4131 5012 5241 +8118 4 2 709 26 3916 4439 5802 4704 +8119 4 2 709 26 4170 3993 4681 4805 +8120 4 2 709 26 5492 3892 4822 5095 +8121 4 2 709 26 3868 4194 4349 4719 +8122 4 2 709 26 4203 4479 5703 5766 +8123 4 2 709 26 5591 3995 4830 5361 +8124 4 2 709 26 3885 4859 4705 4734 +8125 4 2 709 26 3937 4550 4333 4740 +8126 4 2 709 26 5878 4004 5712 4461 +8127 4 2 709 26 5726 4394 4960 5021 +8128 4 2 709 26 3929 5064 4418 4963 +8129 4 2 709 26 5852 4966 5011 3968 +8130 4 2 709 26 4076 5414 4800 4332 +8131 4 2 709 26 3871 5455 4607 5074 +8132 4 2 709 26 4094 3917 4365 5067 +8133 4 2 709 26 3938 5762 5505 5610 +8134 4 2 709 26 5693 3945 4450 5619 +8135 4 2 709 26 3911 5437 4321 5434 +8136 4 2 709 26 5992 5676 4036 5100 +8137 4 2 709 26 5503 4202 4772 3913 +8138 4 2 709 26 5882 4214 5257 5337 +8139 4 2 709 26 4583 6055 3890 4133 +8140 4 2 709 26 3960 5976 4388 4970 +8141 4 2 709 26 5757 5946 5364 4714 +8142 4 2 709 26 5299 5361 4873 4184 +8143 4 2 709 26 4604 4154 4637 5787 +8144 4 2 709 26 5065 4053 4302 5186 +8145 4 2 709 26 5762 4287 5505 5610 +8146 4 2 709 26 4429 5365 4548 5074 +8147 4 2 709 26 3899 6011 4357 5472 +8148 4 2 709 26 4708 5239 4463 4834 +8149 4 2 709 26 6048 3893 4939 4049 +8150 4 2 709 26 5678 3938 4405 5505 +8151 4 2 709 26 4407 6013 5831 5859 +8152 4 2 709 26 4091 4296 4618 5264 +8153 4 2 709 26 4604 4051 4372 5787 +8154 4 2 709 26 5586 4087 4513 4990 +8155 4 2 709 26 5907 4135 4347 5212 +8156 4 2 709 26 4669 4928 5959 5735 +8157 4 2 709 26 3929 5103 4213 4767 +8158 4 2 709 26 4661 4129 5178 5989 +8159 4 2 709 26 4113 4758 4870 4929 +8160 4 2 709 26 4222 6018 4647 5349 +8161 4 2 709 26 4129 5446 4460 4661 +8162 4 2 709 26 4175 5756 3925 5424 +8163 4 2 709 26 3916 4806 4937 5739 +8164 4 2 709 26 6073 5461 1020 5137 +8165 4 2 709 26 5791 4121 4405 4975 +8166 4 2 709 26 3938 5610 4440 4565 +8167 4 2 709 26 3939 4943 5964 5490 +8168 4 2 709 26 450 6059 4812 5450 +8169 4 2 709 26 5237 4111 4732 5155 +8170 4 2 709 26 4061 5423 4607 5365 +8171 4 2 709 26 5142 4493 4745 5137 +8172 4 2 709 26 4876 4980 5799 4626 +8173 4 2 709 26 5461 4120 5137 5387 +8174 4 2 709 26 4112 4281 5225 4809 +8175 4 2 709 26 4083 6048 4676 5716 +8176 4 2 709 26 4787 4306 4708 3882 +8177 4 2 709 26 4161 5484 4455 5043 +8178 4 2 709 26 5701 4396 4957 5138 +8179 4 2 709 26 4025 4952 4631 4702 +8180 4 2 709 26 4691 5537 5399 5417 +8181 4 2 709 26 4022 4860 4336 4780 +8182 4 2 709 26 5771 4403 4518 5422 +8183 4 2 709 26 5848 3960 4388 4970 +8184 4 2 709 26 4147 5822 4529 4877 +8185 4 2 709 26 4147 6043 4357 5113 +8186 4 2 709 26 4127 6010 4501 4989 +8187 4 2 709 26 3900 5223 4255 5062 +8188 4 2 709 26 4679 5819 5132 4169 +8189 4 2 709 26 5193 4127 4253 5100 +8190 4 2 709 26 5246 4040 5040 5082 +8191 4 2 709 26 4451 5584 5322 4292 +8192 4 2 709 26 6043 5885 4085 4471 +8193 4 2 709 26 4323 5682 5274 5385 +8194 4 2 709 26 4398 5956 4951 5343 +8195 4 2 709 26 4474 4296 4130 5938 +8196 4 2 709 26 3962 5586 4725 5536 +8197 4 2 709 26 3972 4264 4665 5760 +8198 4 2 709 26 4115 5460 4510 5181 +8199 4 2 709 26 4275 4197 5286 5619 +8200 4 2 709 26 5756 4039 4462 5239 +8201 4 2 709 26 4133 3890 4583 5453 +8202 4 2 709 26 5434 4054 4321 4966 +8203 4 2 709 26 4775 6069 5029 5706 +8204 4 2 709 26 4490 5624 4594 5452 +8205 4 2 709 26 5491 4060 4452 4919 +8206 4 2 709 26 4048 5924 4727 5201 +8207 4 2 709 26 5588 5214 5992 4212 +8208 4 2 709 26 4571 3895 4225 5431 +8209 4 2 709 26 4480 4348 4089 5595 +8210 4 2 709 26 3876 5304 4338 4561 +8211 4 2 709 26 5918 4586 4292 5806 +8212 4 2 709 26 5455 4311 4542 4882 +8213 4 2 709 26 4840 5145 5351 4377 +8214 4 2 709 26 4099 4883 5088 5715 +8215 4 2 709 26 5695 4163 5033 5319 +8216 4 2 709 26 5425 4229 4466 4494 +8217 4 2 709 26 5357 741 6080 4776 +8218 4 2 709 26 4047 5077 4476 5500 +8219 4 2 709 26 4248 5704 4694 5107 +8220 4 2 709 26 4681 4302 4265 3993 +8221 4 2 709 26 4017 4956 4743 5965 +8222 4 2 709 26 5405 5734 5157 4667 +8223 4 2 709 26 4124 5834 4403 5771 +8224 4 2 709 26 5218 5393 4173 4906 +8225 4 2 709 26 4291 5407 5226 5375 +8226 4 2 709 26 4076 5414 4328 4804 +8227 4 2 709 26 4302 4481 4053 5065 +8228 4 2 709 26 3894 5676 4253 4807 +8229 4 2 709 26 4570 4391 3925 5309 +8230 4 2 709 26 5245 4206 4968 5213 +8231 4 2 709 26 5101 3989 4259 4417 +8232 4 2 709 26 5218 5393 4906 4035 +8233 4 2 709 26 5429 3955 4237 4503 +8234 4 2 709 26 6005 4239 4856 5042 +8235 4 2 709 26 4788 3886 4483 4643 +8236 4 2 709 26 5658 4186 5226 5238 +8237 4 2 709 26 5888 4233 4824 5209 +8238 4 2 709 26 3974 5285 4363 4571 +8239 4 2 709 26 3965 5834 4433 4522 +8240 4 2 709 26 5147 5566 5005 4428 +8241 4 2 709 26 5889 4274 4434 5026 +8242 4 2 709 26 5708 4113 4782 5526 +8243 4 2 709 26 5511 4107 5049 5058 +8244 4 2 709 26 5888 5417 4824 4233 +8245 4 2 709 26 4025 5497 4426 4631 +8246 4 2 709 26 5298 5525 3940 4122 +8247 4 2 709 26 4228 5876 4579 5630 +8248 4 2 709 26 4915 4364 4582 4878 +8249 4 2 709 26 4133 6034 5086 5087 +8250 4 2 709 26 5677 3953 4327 4679 +8251 4 2 709 26 4207 3877 4438 4609 +8252 4 2 709 26 5801 4092 4534 4636 +8253 4 2 709 26 5596 3907 4552 4842 +8254 4 2 709 26 5688 4066 4546 5538 +8255 4 2 709 26 4383 3930 5085 5833 +8256 4 2 709 26 4008 4999 5446 5501 +8257 4 2 709 26 5267 3876 4338 4561 +8258 4 2 709 26 3877 4238 5315 5283 +8259 4 2 709 26 4304 5873 4768 4617 +8260 4 2 709 26 4432 3898 5660 4221 +8261 4 2 709 26 4105 4290 5130 4785 +8262 4 2 709 26 3962 4908 4558 5006 +8263 4 2 709 26 4579 5876 4738 5630 +8264 4 2 709 26 4107 5667 4794 5174 +8265 4 2 709 26 4070 5812 4440 3938 +8266 4 2 709 26 5495 4487 5744 4084 +8267 4 2 709 26 5259 3887 4601 4825 +8268 4 2 709 26 4732 5249 4864 5470 +8269 4 2 709 26 5950 4110 4766 5311 +8270 4 2 709 26 4293 3949 4685 5444 +8271 4 2 709 26 3907 5002 4552 4842 +8272 4 2 709 26 4035 3870 5477 5756 +8273 4 2 709 26 4078 4790 5800 5336 +8274 4 2 709 26 5089 4025 4702 4952 +8275 4 2 709 26 4612 4281 4444 5501 +8276 4 2 709 26 4297 3889 4986 5292 +8277 4 2 709 26 4974 5431 4330 3895 +8278 4 2 709 26 5464 3982 4614 5109 +8279 4 2 709 26 3991 5699 4924 5083 +8280 4 2 709 26 4545 5359 4326 4052 +8281 4 2 709 26 5758 3949 4408 4528 +8282 4 2 709 26 3934 5455 4429 5074 +8283 4 2 709 26 4200 5422 4610 5680 +8284 4 2 709 26 5223 4118 4255 5062 +8285 4 2 709 26 4464 5573 5463 4184 +8286 4 2 709 26 4239 5853 4856 5650 +8287 4 2 709 26 6011 4721 3981 5971 +8288 4 2 709 26 5748 4307 5643 4765 +8289 4 2 709 26 4078 4790 4664 5800 +8290 4 2 709 26 3887 5383 4586 4915 +8291 4 2 709 26 3999 4787 4431 5691 +8292 4 2 709 26 4497 3935 4866 4029 +8293 4 2 709 26 4080 5136 4315 4999 +8294 4 2 709 26 4550 6002 5221 4273 +8295 4 2 709 26 4004 5878 4625 5271 +8296 4 2 709 26 5523 3960 5491 4932 +8297 4 2 709 26 6027 4200 4518 5206 +8298 4 2 709 26 4483 3992 4724 5368 +8299 4 2 709 26 4694 5479 4984 5107 +8300 4 2 709 26 5367 4526 5592 5883 +8301 4 2 709 26 4373 5864 4719 5662 +8302 4 2 709 26 4285 5813 5525 5621 +8303 4 2 709 26 5183 5431 5285 4196 +8304 4 2 709 26 4806 3916 5081 5739 +8305 4 2 709 26 5122 4650 5669 4718 +8306 4 2 709 26 5718 3981 4819 5171 +8307 4 2 709 26 5460 4115 4510 4653 +8308 4 2 709 26 4203 4139 4585 5640 +8309 4 2 709 26 5376 3980 4359 4467 +8310 4 2 709 26 4364 5266 4582 4878 +8311 4 2 709 26 4115 3954 4510 4653 +8312 4 2 709 26 5194 4125 4669 4930 +8313 4 2 709 26 4204 4307 4965 5515 +8314 4 2 709 26 4009 4511 5580 5738 +8315 4 2 709 26 5711 4152 5388 3947 +8316 4 2 709 26 5843 4088 4475 5468 +8317 4 2 709 26 5078 4649 5681 4094 +8318 4 2 709 26 4149 4153 5026 5117 +8319 4 2 709 26 4070 5921 4768 4617 +8320 4 2 709 26 5555 3883 4341 4346 +8321 4 2 709 26 4774 4225 5324 5517 +8322 4 2 709 26 4060 5527 4297 5292 +8323 4 2 709 26 6024 3940 5120 4285 +8324 4 2 709 26 5748 4765 5255 4307 +8325 4 2 709 26 4396 5138 4889 5612 +8326 4 2 709 26 3934 4882 4429 5455 +8327 4 2 709 26 4885 4529 5818 4147 +8328 4 2 709 26 4302 4481 5013 4053 +8329 4 2 709 26 4816 4384 5823 5314 +8330 4 2 709 26 4063 4813 4609 4737 +8331 4 2 709 26 4089 5413 4697 4517 +8332 4 2 709 26 5978 4122 4781 4985 +8333 4 2 709 26 4203 4151 4851 5703 +8334 4 2 709 26 5754 5787 4154 5575 +8335 4 2 709 26 5519 3896 4818 5265 +8336 4 2 709 26 4320 5962 4920 5358 +8337 4 2 709 26 5031 3970 4541 4324 +8338 4 2 709 26 5532 5256 5699 4356 +8339 4 2 709 26 5478 4276 4424 5056 +8340 4 2 709 26 4491 5819 4560 5418 +8341 4 2 709 26 5620 5613 5108 4212 +8342 4 2 709 26 3945 5693 4450 4580 +8343 4 2 709 26 5936 4730 5134 5316 +8344 4 2 709 26 4416 5919 4633 4271 +8345 4 2 709 26 3898 4109 4922 4261 +8346 4 2 709 26 5117 4490 4069 5306 +8347 4 2 709 26 4126 4701 4721 5971 +8348 4 2 709 26 3883 4069 5290 4472 +8349 4 2 709 26 5660 4042 4703 5151 +8350 4 2 709 26 4136 5413 5289 3888 +8351 4 2 709 26 5183 5431 4571 5285 +8352 4 2 709 26 5726 3966 4394 5021 +8353 4 2 709 26 5091 4119 4418 4473 +8354 4 2 709 26 4868 3973 4347 4687 +8355 4 2 709 26 4064 4497 5463 5527 +8356 4 2 709 26 5676 4106 5310 5533 +8357 4 2 709 26 3886 5963 4552 4643 +8358 4 2 709 26 4055 5377 4555 5015 +8359 4 2 709 26 6053 4181 4771 5198 +8360 4 2 709 26 4184 5299 4844 4873 +8361 4 2 709 26 4237 5645 4524 4921 +8362 4 2 709 26 5878 5712 4004 4625 +8363 4 2 709 26 3979 4898 4384 4642 +8364 4 2 709 26 5112 3977 4388 4865 +8365 4 2 709 26 6048 4083 4939 5716 +8366 4 2 709 26 3887 4548 4532 5336 +8367 4 2 709 26 3876 5767 5267 5795 +8368 4 2 709 26 5874 4329 4093 5379 +8369 4 2 709 26 432 5184 6074 4841 +8370 4 2 709 26 5092 4126 4701 4977 +8371 4 2 709 26 4023 5494 4532 4825 +8372 4 2 709 26 4483 5286 4546 4724 +8373 4 2 709 26 3991 5256 4246 4507 +8374 4 2 709 26 5043 5989 5246 4215 +8375 4 2 709 26 4534 3942 4726 5801 +8376 4 2 709 26 5060 4240 5476 4462 +8377 4 2 709 26 4000 6053 4771 5198 +8378 4 2 709 26 4226 5941 4538 5204 +8379 4 2 709 26 4106 5521 4515 4742 +8380 4 2 709 26 4432 5960 4194 5333 +8381 4 2 709 26 4922 6038 4358 4837 +8382 4 2 709 26 4149 5315 4526 5277 +8383 4 2 709 26 6040 4181 4879 5119 +8384 4 2 709 26 5571 5590 5783 4290 +8385 4 2 709 26 5874 4093 4329 5636 +8386 4 2 709 26 5917 4774 5211 5708 +8387 4 2 709 26 5842 4178 4616 5066 +8388 4 2 709 26 4126 5971 4721 4831 +8389 4 2 709 26 4262 5890 5372 5427 +8390 4 2 709 26 4171 5305 5240 5278 +8391 4 2 709 26 5485 4507 5016 5083 +8392 4 2 709 26 4762 4061 4284 4548 +8393 4 2 709 26 4479 3905 4533 4764 +8394 4 2 709 26 4035 5393 4651 4406 +8395 4 2 709 26 4272 5755 4631 5216 +8396 4 2 709 26 5200 4125 4255 4945 +8397 4 2 709 26 3873 5538 4484 4842 +8398 4 2 709 26 4326 3880 4545 5604 +8399 4 2 709 26 5492 4327 4679 5095 +8400 4 2 709 26 5848 5112 4221 4970 +8401 4 2 709 26 5790 4286 4540 3942 +8402 4 2 709 26 4143 4349 3868 4358 +8403 4 2 709 26 5422 4518 4610 5019 +8404 4 2 709 26 5916 4222 4387 5022 +8405 4 2 709 26 3914 4163 4462 4952 +8406 4 2 709 26 3911 4531 4276 4966 +8407 4 2 709 26 5664 5187 4139 5018 +8408 4 2 709 26 6082 6063 675 4758 +8409 4 2 709 26 5917 4209 4650 4929 +8410 4 2 709 26 5182 4034 4670 4689 +8411 4 2 709 26 4435 5319 5033 5115 +8412 4 2 709 26 4191 6011 4630 5472 +8413 4 2 709 26 3971 4275 4595 4845 +8414 4 2 709 26 3983 6008 4401 5126 +8415 4 2 709 26 4365 5396 4813 5339 +8416 4 2 709 26 4258 4105 4718 5669 +8417 4 2 709 26 4032 5447 4434 5026 +8418 4 2 709 26 3901 5598 4195 4367 +8419 4 2 709 26 4827 5435 4626 4045 +8420 4 2 709 26 5066 3979 4425 4898 +8421 4 2 709 26 4035 5393 4364 4651 +8422 4 2 709 26 5026 4032 4274 4434 +8423 4 2 709 26 4422 4534 4726 5801 +8424 4 2 709 26 5948 4004 5039 4625 +8425 4 2 709 26 5936 4096 5134 5722 +8426 4 2 709 26 4017 4956 4879 5119 +8427 4 2 709 26 4788 6068 4158 4350 +8428 4 2 709 26 5780 4095 5219 4387 +8429 4 2 709 26 4176 5210 4429 4882 +8430 4 2 709 26 4366 5188 5252 5729 +8431 4 2 709 26 5566 4119 4418 5091 +8432 4 2 709 26 5895 4099 4494 5152 +8433 4 2 709 26 4177 3974 4876 5079 +8434 4 2 709 26 5062 5406 5106 4368 +8435 4 2 709 26 5111 5961 5838 3990 +8436 4 2 709 26 5657 4062 5250 4772 +8437 4 2 709 26 5520 3995 5361 4830 +8438 4 2 709 26 5245 5518 4942 5073 +8439 4 2 709 26 6011 3899 4357 4831 +8440 4 2 709 26 5183 5431 4196 3895 +8441 4 2 709 26 5992 5676 5100 3894 +8442 4 2 709 26 4041 5706 4775 5029 +8443 4 2 709 26 5809 4411 4546 4488 +8444 4 2 709 26 4280 6019 4671 5986 +8445 4 2 709 26 4479 5766 4764 4993 +8446 4 2 709 26 3981 4947 4191 4058 +8447 4 2 709 26 4013 5569 5148 5369 +8448 4 2 709 26 4044 5802 4585 5012 +8449 4 2 709 26 4286 5569 4540 3942 +8450 4 2 709 26 5089 4231 4885 5216 +8451 4 2 709 26 5567 5124 4627 4443 +8452 4 2 709 26 4114 5217 4688 4934 +8453 4 2 709 26 4900 6032 3978 5178 +8454 4 2 709 26 3883 5555 4341 5072 +8455 4 2 709 26 5728 4117 4971 4163 +8456 4 2 709 26 5099 4132 4404 4651 +8457 4 2 709 26 4155 5864 4271 5333 +8458 4 2 709 26 5440 4349 4837 4920 +8459 4 2 709 26 4435 5695 5033 5319 +8460 4 2 709 26 4247 5326 4108 4338 +8461 4 2 709 26 4093 4987 4329 4539 +8462 4 2 709 26 4297 3963 4674 5612 +8463 4 2 709 26 5348 4420 4801 5211 +8464 4 2 709 26 4396 4130 4430 5046 +8465 4 2 709 26 3868 6002 4597 4256 +8466 4 2 709 26 5802 4044 4585 5123 +8467 4 2 709 26 6061 4376 4604 5208 +8468 4 2 709 26 4102 4556 4726 3942 +8469 4 2 709 26 4013 4936 4602 5369 +8470 4 2 709 26 4425 4117 4971 5196 +8471 4 2 709 26 4181 6040 4879 5149 +8472 4 2 709 26 3873 4842 4268 4770 +8473 4 2 709 26 3986 5487 5130 5183 +8474 4 2 709 26 6062 3939 4340 5509 +8475 4 2 709 26 3902 4176 5248 5710 +8476 4 2 709 26 4116 5622 4257 5151 +8477 4 2 709 26 4048 5047 4274 5201 +8478 4 2 709 26 3885 5446 4460 5129 +8479 4 2 709 26 3973 5991 4801 4890 +8480 4 2 709 26 4364 3933 4582 5266 +8481 4 2 709 26 4018 4588 4506 4562 +8482 4 2 709 26 5724 3878 4426 5497 +8483 4 2 709 26 5701 4130 4621 4396 +8484 4 2 709 26 4230 3960 4502 4932 +8485 4 2 709 26 3956 5354 4427 5062 +8486 4 2 709 26 3877 4238 5283 4609 +8487 4 2 709 26 5997 4290 4523 5590 +8488 4 2 709 26 5636 4093 4329 4539 +8489 4 2 709 26 3930 4246 4383 5085 +8490 4 2 709 26 4009 4236 5003 4914 +8491 4 2 709 26 4108 5673 4561 5304 +8492 4 2 709 26 3982 4358 4922 5333 +8493 4 2 709 26 4139 4203 4585 5607 +8494 4 2 709 26 4065 5337 4851 5187 +8495 4 2 709 26 5100 4127 4253 4991 +8496 4 2 709 26 6050 4351 5433 5459 +8497 4 2 709 26 5952 4380 4626 4980 +8498 4 2 709 26 5375 4150 4484 4842 +8499 4 2 709 26 4118 5753 4905 5167 +8500 4 2 709 26 4268 5270 4484 5154 +8501 4 2 709 26 3998 4129 4661 5446 +8502 4 2 709 26 5517 4113 4682 4774 +8503 4 2 709 26 4351 5873 4768 5433 +8504 4 2 709 26 3948 5986 4219 5416 +8505 4 2 709 26 5275 4014 4424 4731 +8506 4 2 709 26 5285 4131 5241 5244 +8507 4 2 709 26 4560 5819 5132 5418 +8508 4 2 709 26 4054 5434 4640 4966 +8509 4 2 709 26 3968 4206 5213 5547 +8510 4 2 709 26 5497 4631 5659 3878 +8511 4 2 709 26 3953 6042 4385 4496 +8512 4 2 709 26 4967 4302 5072 5186 +8513 4 2 709 26 5699 3991 4246 5083 +8514 4 2 709 26 664 5654 4954 5169 +8515 4 2 709 26 4305 5627 5434 5437 +8516 4 2 709 26 4466 4046 5425 4927 +8517 4 2 709 26 4216 5705 4001 5550 +8518 4 2 709 26 5719 4119 4299 5268 +8519 4 2 709 26 5695 4184 5299 4844 +8520 4 2 709 26 4011 5610 4606 4201 +8521 4 2 709 26 5873 4438 4617 4304 +8522 4 2 709 26 4311 5297 4542 4882 +8523 4 2 709 26 3887 5346 4548 4762 +8524 4 2 709 26 4549 6043 4581 4147 +8525 4 2 709 26 5586 3962 4310 5006 +8526 4 2 709 26 5963 4296 4643 4927 +8527 4 2 709 26 4119 5868 4299 4963 +8528 4 2 709 26 5895 4510 4559 4401 +8529 4 2 709 26 4390 6066 5038 4823 +8530 4 2 709 26 4104 5704 4248 5373 +8531 4 2 709 26 6015 4033 4325 5440 +8532 4 2 709 26 5452 4274 5889 5026 +8533 4 2 709 26 4480 4089 4348 4712 +8534 4 2 709 26 5670 4026 5081 4145 +8535 4 2 709 26 5652 4069 4341 4472 +8536 4 2 709 26 4254 4401 5181 5126 +8537 4 2 709 26 5649 4065 4851 5187 +8538 4 2 709 26 5515 4204 4759 4965 +8539 4 2 709 26 3967 4846 4284 4762 +8540 4 2 709 26 3941 4183 4346 5457 +8541 4 2 709 26 5494 4192 4548 5419 +8542 4 2 709 26 5783 3958 4523 5140 +8543 4 2 709 26 5754 5787 4461 4154 +8544 4 2 709 26 4067 4179 4509 5668 +8545 4 2 709 26 3919 4192 4317 4961 +8546 4 2 709 26 4015 5709 4235 4322 +8547 4 2 709 26 4391 3878 4631 4426 +8548 4 2 709 26 3993 5163 4375 4805 +8549 4 2 709 26 3960 4370 4919 4564 +8550 4 2 709 26 5329 3993 4265 4544 +8551 4 2 709 26 5819 4098 4679 5418 +8552 4 2 709 26 4844 5695 5024 5299 +8553 4 2 709 26 5647 4136 4567 4947 +8554 4 2 709 26 5466 4109 4659 4933 +8555 4 2 709 26 5744 3885 4999 5136 +8556 4 2 709 26 5101 4639 4382 5510 +8557 4 2 709 26 5053 299 6077 5143 +8558 4 2 709 26 3972 4385 4665 5672 +8559 4 2 709 26 3965 5737 4403 4566 +8560 4 2 709 26 4468 5031 5255 5666 +8561 4 2 709 26 5417 5725 5399 4478 +8562 4 2 709 26 5097 3929 4567 4712 +8563 4 2 709 26 5002 4404 4173 5099 +8564 4 2 709 26 5707 3940 4459 5120 +8565 4 2 709 26 4290 5783 4523 5590 +8566 4 2 709 26 5053 6077 591 5143 +8567 4 2 709 26 3965 4761 4433 5737 +8568 4 2 709 26 4193 5078 4340 4427 +8569 4 2 709 26 3960 4370 4502 4932 +8570 4 2 709 26 5303 4237 4524 4921 +8571 4 2 709 26 3993 5803 4265 4544 +8572 4 2 709 26 4577 5613 3959 4741 +8573 4 2 709 26 5831 4976 4407 5821 +8574 4 2 709 26 4403 5737 4628 5019 +8575 4 2 709 26 3895 4258 5130 5183 +8576 4 2 709 26 4080 5820 4999 4315 +8577 4 2 709 26 4297 3889 4674 4986 +8578 4 2 709 26 5384 4660 5148 5369 +8579 4 2 709 26 4822 4325 5600 5591 +8580 4 2 709 26 4298 4764 4704 4937 +8581 4 2 709 26 5975 5367 4526 5592 +8582 4 2 709 26 4906 5218 5534 5767 +8583 4 2 709 26 4239 5650 4856 5042 +8584 4 2 709 26 4044 4386 5012 5241 +8585 4 2 709 26 5062 4563 3900 4427 +8586 4 2 709 26 4077 5485 4507 5016 +8587 4 2 709 26 3879 5033 4096 5695 +8588 4 2 709 26 5764 4412 3985 5414 +8589 4 2 709 26 4646 4034 5182 5245 +8590 4 2 709 26 5739 4138 4468 5081 +8591 4 2 709 26 5573 4184 4464 5361 +8592 4 2 709 26 5357 6080 882 4776 +8593 4 2 709 26 5569 5148 5369 5384 +8594 4 2 709 26 5875 4355 4807 5711 +8595 4 2 709 26 4130 5449 4621 5014 +8596 4 2 709 26 5885 4549 4702 5089 +8597 4 2 709 26 4143 4349 4837 5440 +8598 4 2 709 26 5699 5800 5532 4356 +8599 4 2 709 26 4126 4500 4701 4977 +8600 4 2 709 26 5898 3901 4477 5823 +8601 4 2 709 26 4314 4992 4780 4950 +8602 4 2 709 26 4102 5475 4695 5184 +8603 4 2 709 26 4039 5756 4400 5239 +8604 4 2 709 26 5920 4000 4266 5469 +8605 4 2 709 26 5794 3878 5248 5710 +8606 4 2 709 26 5546 4063 5028 3927 +8607 4 2 709 26 4373 6048 4155 5864 +8608 4 2 709 26 4146 5105 4411 4756 +8609 4 2 709 26 5995 4012 4883 5535 +8610 4 2 709 26 4124 5567 5124 5206 +8611 4 2 709 26 4632 5287 5018 5248 +8612 4 2 709 26 5679 5522 4337 5320 +8613 4 2 709 26 5699 5532 5800 4078 +8614 4 2 709 26 4844 5024 5695 5319 +8615 4 2 709 26 6022 346 4864 5832 +8616 4 2 709 26 5157 5740 5405 4667 +8617 4 2 709 26 4360 5489 4829 4100 +8618 4 2 709 26 3898 4970 5960 4564 +8619 4 2 709 26 3981 4191 4947 6011 +8620 4 2 709 26 4127 6010 4989 4991 +8621 4 2 709 26 4295 5064 4059 3881 +8622 4 2 709 26 5704 4050 4652 4694 +8623 4 2 709 26 5111 5961 3990 4355 +8624 4 2 709 26 5258 3933 4404 5152 +8625 4 2 709 26 4568 5668 3958 5140 +8626 4 2 709 26 4548 4061 5074 5365 +8627 4 2 709 26 3974 5431 5079 5244 +8628 4 2 709 26 4697 4710 3888 5467 +8629 4 2 709 26 6025 4084 4566 4337 +8630 4 2 709 26 3913 5034 5013 5803 +8631 4 2 709 26 5932 3906 4437 4765 +8632 4 2 709 26 5762 4201 4363 5347 +8633 4 2 709 26 4646 4034 4670 5182 +8634 4 2 709 26 5148 5863 5491 3889 +8635 4 2 709 26 6033 4251 4410 5370 +8636 4 2 709 26 5567 4282 5279 4124 +8637 4 2 709 26 3989 5061 4382 4639 +8638 4 2 709 26 4296 5963 5280 4927 +8639 4 2 709 26 5125 3973 4347 4974 +8640 4 2 709 26 4040 5615 4455 4761 +8641 4 2 709 26 3932 4320 4390 5458 +8642 4 2 709 26 4790 4015 4235 4322 +8643 4 2 709 26 5948 5497 5395 4214 +8644 4 2 709 26 6032 3978 4381 5195 +8645 4 2 709 26 4204 5739 4468 5255 +8646 4 2 709 26 4230 4530 4936 5594 +8647 4 2 709 26 4152 3875 5065 5305 +8648 4 2 709 26 4359 5577 4831 5030 +8649 4 2 709 26 4831 3952 4334 4721 +8650 4 2 709 26 5873 4438 4304 5546 +8651 4 2 709 26 3912 4171 4526 5117 +8652 4 2 709 26 3995 4918 4264 5760 +8653 4 2 709 26 5804 5531 4055 4684 +8654 4 2 709 26 3940 4446 4459 5298 +8655 4 2 709 26 5023 3900 5223 5694 +8656 4 2 709 26 5975 4526 5367 4171 +8657 4 2 709 26 5819 4019 4491 4560 +8658 4 2 709 26 5518 5291 5172 4677 +8659 4 2 709 26 4428 5845 5005 5147 +8660 4 2 709 26 3909 4845 4275 4724 +8661 4 2 709 26 3884 5670 4577 4735 +8662 4 2 709 26 4015 5918 4586 4292 +8663 4 2 709 26 5906 4272 5497 5578 +8664 4 2 709 26 5946 4090 4537 4751 +8665 4 2 709 26 3976 4340 5023 5509 +8666 4 2 709 26 4015 5709 4603 4948 +8667 4 2 709 26 3993 4170 4681 5617 +8668 4 2 709 26 5060 3914 4240 4462 +8669 4 2 709 26 5685 3881 5515 4419 +8670 4 2 709 26 4311 3902 4796 5297 +8671 4 2 709 26 4446 6000 5298 5260 +8672 4 2 709 26 5079 4045 4380 4876 +8673 4 2 709 26 5736 4350 4618 5264 +8674 4 2 709 26 3935 5680 5054 5366 +8675 4 2 709 26 5264 4091 4350 4618 +8676 4 2 709 26 5392 3885 4460 5129 +8677 4 2 709 26 3917 5843 4923 5067 +8678 4 2 709 26 3881 5766 4993 5748 +8679 4 2 709 26 4032 4937 4298 4704 +8680 4 2 709 26 5703 4851 4988 5307 +8681 4 2 709 26 5956 4398 4687 5343 +8682 4 2 709 26 4211 5098 4407 4976 +8683 4 2 709 26 5992 4110 4036 5335 +8684 4 2 709 26 4142 5248 4632 5018 +8685 4 2 709 26 5420 5820 4315 4444 +8686 4 2 709 26 3934 5710 4979 5582 +8687 4 2 709 26 5158 4221 4703 5408 +8688 4 2 709 26 5497 4025 4272 4631 +8689 4 2 709 26 4090 4672 4751 5711 +8690 4 2 709 26 5445 5188 5714 4375 +8691 4 2 709 26 4025 5089 4885 5216 +8692 4 2 709 26 4039 5536 4631 4702 +8693 4 2 709 26 4511 3948 4381 4453 +8694 4 2 709 26 5280 3921 4425 4971 +8695 4 2 709 26 5250 4202 4772 5503 +8696 4 2 709 26 4918 3995 4808 5760 +8697 4 2 709 26 3955 5429 4393 4503 +8698 4 2 709 26 4287 5678 5505 5610 +8699 4 2 709 26 4128 5999 4978 5050 +8700 4 2 709 26 4193 5365 4924 5139 +8701 4 2 709 26 5546 5873 4067 4336 +8702 4 2 709 26 5748 4164 4765 5091 +8703 4 2 709 26 4128 5999 5050 4881 +8704 4 2 709 26 5475 4102 4726 4841 +8705 4 2 709 26 3903 4542 4727 4482 +8706 4 2 709 26 4025 5216 4631 4952 +8707 4 2 709 26 4029 5032 4866 5506 +8708 4 2 709 26 5795 4057 4338 4727 +8709 4 2 709 26 4095 4143 4843 5247 +8710 4 2 709 26 6011 6033 5971 3981 +8711 4 2 709 26 5093 4179 4347 4974 +8712 4 2 709 26 5777 4329 4833 5671 +8713 4 2 709 26 4284 3967 4561 4846 +8714 4 2 709 26 3915 5982 4456 5947 +8715 4 2 709 26 3975 5139 4309 5262 +8716 4 2 709 26 4660 4013 5148 5369 +8717 4 2 709 26 4334 3952 4831 4359 +8718 4 2 709 26 4781 4985 5687 5978 +8719 4 2 709 26 4097 4967 4715 4805 +8720 4 2 709 26 6057 561 5480 5846 +8721 4 2 709 26 3881 4473 5064 4479 +8722 4 2 709 26 4044 5241 4585 5123 +8723 4 2 709 26 4196 5285 5241 5244 +8724 4 2 709 26 5476 4651 4132 5099 +8725 4 2 709 26 4881 4128 4503 5415 +8726 4 2 709 26 6065 4014 4424 5056 +8727 4 2 709 26 5991 4374 5093 5312 +8728 4 2 709 26 4787 4082 4306 4471 +8729 4 2 709 26 5260 4250 4985 5076 +8730 4 2 709 26 5878 4004 4690 5271 +8731 4 2 709 26 3933 5393 4364 4582 +8732 4 2 709 26 4290 5997 4523 4785 +8733 4 2 709 26 3872 5294 4953 5043 +8734 4 2 709 26 6014 4101 4648 4516 +8735 4 2 709 26 5951 4772 3913 4707 +8736 4 2 709 26 4485 6002 4273 3868 +8737 4 2 709 26 3878 5794 4570 5710 +8738 4 2 709 26 3870 4148 4035 5477 +8739 4 2 709 26 4221 4432 4835 5660 +8740 4 2 709 26 4380 5912 4774 3974 +8741 4 2 709 26 3957 5831 4554 5821 +8742 4 2 709 26 5186 5617 3947 4672 +8743 4 2 709 26 3961 5919 4416 4271 +8744 4 2 709 26 6000 4250 4985 5260 +8745 4 2 709 26 4413 4290 4785 5130 +8746 4 2 709 26 4158 4488 4546 5286 +8747 4 2 709 26 4032 5227 4274 4434 +8748 4 2 709 26 3975 4309 5139 4755 +8749 4 2 709 26 4635 5440 4837 4920 +8750 4 2 709 26 4232 6040 4879 5119 +8751 4 2 709 26 5221 4349 4143 5440 +8752 4 2 709 26 4645 4674 5251 4030 +8753 4 2 709 26 4394 4014 4729 5275 +8754 4 2 709 26 6009 3965 4403 4566 +8755 4 2 709 26 5904 3983 4401 5131 +8756 4 2 709 26 4956 4017 4743 5119 +8757 4 2 709 26 4232 5149 4879 6040 +8758 4 2 709 26 4513 5586 5006 5330 +8759 4 2 709 26 4262 5890 4582 5266 +8760 4 2 709 26 4131 5261 4744 4899 +8761 4 2 709 26 4315 5744 4999 5136 +8762 4 2 709 26 5588 5214 4634 5992 +8763 4 2 709 26 5376 4318 4549 4581 +8764 4 2 709 26 4212 5613 5108 4541 +8765 4 2 709 26 4379 3968 5213 5547 +8766 4 2 709 26 5425 5895 3954 4229 +8767 4 2 709 26 5346 4284 4548 4762 +8768 4 2 709 26 5818 4147 4529 4877 +8769 4 2 709 26 5655 3886 4483 4788 +8770 4 2 709 26 5840 5152 4178 4616 +8771 4 2 709 26 5850 4144 5009 5045 +8772 4 2 709 26 4282 5803 4769 3913 +8773 4 2 709 26 4263 4577 4793 5726 +8774 4 2 709 26 4061 4548 4762 5336 +8775 4 2 709 26 4106 4663 4723 4983 +8776 4 2 709 26 3901 5898 4624 5823 +8777 4 2 709 26 3877 4238 4609 5277 +8778 4 2 709 26 4065 5125 4398 4687 +8779 4 2 709 26 4258 4105 4785 4718 +8780 4 2 709 26 5662 6048 5864 4823 +8781 4 2 709 26 4514 4481 5293 5356 +8782 4 2 709 26 4835 5751 5112 5158 +8783 4 2 709 26 5974 4415 4259 5213 +8784 4 2 709 26 4413 4523 4785 4290 +8785 4 2 709 26 5307 4151 4697 4963 +8786 4 2 709 26 4105 4718 4650 4911 +8787 4 2 709 26 4010 5321 4314 4992 +8788 4 2 709 26 5335 5037 3943 5933 +8789 4 2 709 26 4094 5498 4482 4777 +8790 4 2 709 26 4035 5346 4601 4915 +8791 4 2 709 26 5155 4038 4658 4732 +8792 4 2 709 26 4674 5148 4986 3889 +8793 4 2 709 26 5494 4961 5262 4192 +8794 4 2 709 26 5513 4011 4440 5409 +8795 4 2 709 26 4292 4015 4603 5322 +8796 4 2 709 26 3905 4142 4632 5018 +8797 4 2 709 26 4120 4493 4835 5158 +8798 4 2 709 26 4059 3881 5064 4479 +8799 4 2 709 26 4488 5693 5504 5619 +8800 4 2 709 26 5982 4274 4673 5047 +8801 4 2 709 26 5932 3996 4307 5451 +8802 4 2 709 26 5329 3993 4375 4805 +8803 4 2 709 26 5800 4078 5336 5699 +8804 4 2 709 26 4094 5866 4482 5498 +8805 4 2 709 26 4967 4170 4715 4805 +8806 4 2 709 26 4957 5527 4297 4464 +8807 4 2 709 26 4419 4295 3964 5332 +8808 4 2 709 26 5969 4259 5101 5510 +8809 4 2 709 26 5707 4459 4575 5120 +8810 4 2 709 26 5786 4160 5034 4389 +8811 4 2 709 26 4076 4825 4332 4800 +8812 4 2 709 26 3871 5365 4429 5074 +8813 4 2 709 26 4990 5698 4332 4328 +8814 4 2 709 26 5259 4878 3951 4148 +8815 4 2 709 26 4635 5247 3892 4560 +8816 4 2 709 26 5373 3980 4414 4581 +8817 4 2 709 26 5710 3878 5248 5659 +8818 4 2 709 26 4122 5260 4985 5076 +8819 4 2 709 26 4658 5470 4706 4969 +8820 4 2 709 26 4174 5032 3935 5359 +8821 4 2 709 26 4164 5272 4765 5091 +8822 4 2 709 26 3890 6055 4305 4133 +8823 4 2 709 26 5709 4015 4603 4995 +8824 4 2 709 26 4227 6042 4169 4679 +8825 4 2 709 26 3972 6013 4407 5672 +8826 4 2 709 26 4906 3876 4561 4458 +8827 4 2 709 26 5767 4352 4906 5218 +8828 4 2 709 26 5547 4862 4968 5213 +8829 4 2 709 26 4135 4165 4578 5048 +8830 4 2 709 26 4148 5477 4601 4035 +8831 4 2 709 26 4831 3899 4248 5107 +8832 4 2 709 26 5489 3891 4829 4893 +8833 4 2 709 26 5684 4206 4646 5245 +8834 4 2 709 26 5813 5120 4285 6024 +8835 4 2 709 26 3898 4109 5207 4922 +8836 4 2 709 26 5957 4029 5032 5653 +8837 4 2 709 26 5213 3897 4415 4259 +8838 4 2 709 26 3962 5390 4310 4558 +8839 4 2 709 26 4697 4089 4827 4299 +8840 4 2 709 26 4429 5587 4548 5419 +8841 4 2 709 26 4051 5787 4604 4637 +8842 4 2 709 26 3892 5418 4560 5132 +8843 4 2 709 26 4665 4918 4808 5760 +8844 4 2 709 26 4178 5842 4616 5152 +8845 4 2 709 26 5468 4088 4731 5283 +8846 4 2 709 26 5973 4192 4429 5365 +8847 4 2 709 26 5364 4751 4355 4090 +8848 4 2 709 26 3941 5902 4521 5554 +8849 4 2 709 26 4466 5425 4494 4927 +8850 4 2 709 26 4320 3932 4920 3982 +8851 4 2 709 26 4432 4155 5836 5583 +8852 4 2 709 26 3937 4059 4746 4295 +8853 4 2 709 26 5006 3962 4310 4558 +8854 4 2 709 26 5776 5010 4409 5430 +8855 4 2 709 26 4350 5736 4618 5055 +8856 4 2 709 26 4307 4204 4965 5128 +8857 4 2 709 26 5351 4377 4598 4840 +8858 4 2 709 26 5221 4143 4349 3868 +8859 4 2 709 26 4143 4349 4358 4837 +8860 4 2 709 26 5120 5404 4575 4016 +8861 4 2 709 26 5999 4252 5104 5958 +8862 4 2 709 26 5852 4966 3968 4531 +8863 4 2 709 26 5023 4101 4896 5694 +8864 4 2 709 26 4804 4148 5477 4601 +8865 4 2 709 26 4767 5338 4058 5492 +8866 4 2 709 26 4354 3992 5088 5715 +8867 4 2 709 26 5101 4639 4259 3989 +8868 4 2 709 26 5294 5852 5043 4531 +8869 4 2 709 26 5418 3892 4560 4635 +8870 4 2 709 26 4119 5091 5005 5705 +8871 4 2 709 26 3952 5289 4334 5413 +8872 4 2 709 26 5513 4070 4569 5127 +8873 4 2 709 26 4601 4140 5309 5698 +8874 4 2 709 26 5486 4083 4743 4754 +8875 4 2 709 26 4004 5724 4234 5243 +8876 4 2 709 26 4295 4619 3937 4059 +8877 4 2 709 26 3898 4109 4261 5151 +8878 4 2 709 26 4645 4674 3889 5251 +8879 4 2 709 26 4052 4326 4545 5296 +8880 4 2 709 26 5367 4171 5278 5305 +8881 4 2 709 26 4148 4804 5259 4601 +8882 4 2 709 26 5567 4124 4518 5206 +8883 4 2 709 26 4011 4565 5513 4440 +8884 4 2 709 26 3900 5354 4427 5023 +8885 4 2 709 26 5268 4119 4299 4963 +8886 4 2 709 26 6010 5100 4634 4667 +8887 4 2 709 26 4070 4617 4768 5593 +8888 4 2 709 26 5261 4131 4763 4899 +8889 4 2 709 26 4203 5703 4851 4988 +8890 4 2 709 26 4144 3928 5009 5045 +8891 4 2 709 26 4138 4806 5081 5739 +8892 4 2 709 26 4306 5876 4853 4016 +8893 4 2 709 26 3918 5954 5165 4247 +8894 4 2 709 26 5675 3953 4385 4496 +8895 4 2 709 26 4341 5729 5082 3924 +8896 4 2 709 26 5365 5336 4061 4924 +8897 4 2 709 26 4146 5841 4797 5154 +8898 4 2 709 26 4084 5570 4734 4756 +8899 4 2 709 26 4338 3930 4247 5382 +8900 4 2 709 26 4079 5418 4491 4560 +8901 4 2 709 26 5719 4119 5512 5705 +8902 4 2 709 26 4893 4063 4737 4813 +8903 4 2 709 26 5758 4837 6038 3949 +8904 4 2 709 26 4843 5520 4095 4387 +8905 4 2 709 26 851 6026 5483 5599 +8906 4 2 709 26 4416 6007 5109 5464 +8907 4 2 709 26 5788 5513 4577 4068 +8908 4 2 709 26 4883 4494 5088 5655 +8909 4 2 709 26 4397 5788 4720 4810 +8910 4 2 709 26 5213 4123 4862 4968 +8911 4 2 709 26 5756 4039 4400 3925 +8912 4 2 709 26 5857 4293 4792 5318 +8913 4 2 709 26 5476 4132 4651 5840 +8914 4 2 709 26 4224 3910 5024 5299 +8915 4 2 709 26 3948 4511 4583 4453 +8916 4 2 709 26 4645 4674 4030 4297 +8917 4 2 709 26 5188 4319 4366 5252 +8918 4 2 709 26 3937 5332 4325 4822 +8919 4 2 709 26 4076 4601 4825 5259 +8920 4 2 709 26 3966 5726 4569 5021 +8921 4 2 709 26 5783 4290 4523 3958 +8922 4 2 709 26 5571 5590 4290 5634 +8923 4 2 709 26 4332 5811 4990 4328 +8924 4 2 709 26 5633 5173 4292 5584 +8925 4 2 709 26 4025 5578 5395 5497 +8926 4 2 709 26 5868 5705 5719 4489 +8927 4 2 709 26 4754 6066 5160 4823 +8928 4 2 709 26 5895 4510 4229 4559 +8929 4 2 709 26 4023 4964 4322 4800 +8930 4 2 709 26 3940 4446 5298 5260 +8931 4 2 709 26 5725 3888 4951 5289 +8932 4 2 709 26 4269 5787 4461 3908 +8933 4 2 709 26 3896 5682 4411 5050 +8934 4 2 709 26 4102 5233 4841 5184 +8935 4 2 709 26 5422 4403 4518 5019 +8936 4 2 709 26 4388 5848 4970 5112 +8937 4 2 709 26 5408 4116 4703 5402 +8938 4 2 709 26 4952 4039 4631 4702 +8939 4 2 709 26 4708 5239 5190 4463 +8940 4 2 709 26 3974 5079 4380 4876 +8941 4 2 709 26 4478 5417 4691 5399 +8942 4 2 709 26 3978 5178 4453 4953 +8943 4 2 709 26 5105 3971 4595 4845 +8944 4 2 709 26 5806 3951 4586 4292 +8945 4 2 709 26 5425 4046 4616 4927 +8946 4 2 709 26 3976 5067 4316 4654 +8947 4 2 709 26 3886 4927 4643 4788 +8948 4 2 709 26 3973 5125 4347 4687 +8949 4 2 709 26 3896 4252 5110 5155 +8950 4 2 709 26 4166 5701 4199 5138 +8951 4 2 709 26 3975 5508 4815 4896 +8952 4 2 709 26 4175 4601 3925 5477 +8953 4 2 709 26 4876 4045 4380 4626 +8954 4 2 709 26 4708 6024 4834 5120 +8955 4 2 709 26 3963 4297 4674 4986 +8956 4 2 709 26 3918 5954 5746 4055 +8957 4 2 709 26 6002 5998 5527 4256 +8958 4 2 709 26 4617 5873 4768 5593 +8959 4 2 709 26 5919 3961 4676 4271 +8960 4 2 709 26 5861 6014 4648 4516 +8961 4 2 709 26 3962 5586 4310 4725 +8962 4 2 709 26 5415 3955 4503 4881 +8963 4 2 709 26 4831 3899 4357 5373 +8964 4 2 709 26 4679 4767 4058 5492 +8965 4 2 709 26 5182 4646 5245 5684 +8966 4 2 709 26 3884 5670 4735 5012 +8967 4 2 709 26 4434 4032 4704 5447 +8968 4 2 709 26 5062 3956 4368 5016 +8969 4 2 709 26 4255 5914 5106 5406 +8970 4 2 709 26 5475 4102 4841 5184 +8971 4 2 709 26 5764 3985 4574 4328 +8972 4 2 709 26 4407 6013 5113 5831 +8973 4 2 709 26 4070 3938 4440 4565 +8974 4 2 709 26 5433 4067 5459 4351 +8975 4 2 709 26 4506 5993 4562 4588 +8976 4 2 709 26 3991 5699 4246 5256 +8977 4 2 709 26 5279 4202 5469 5567 +8978 4 2 709 26 4219 4103 4678 5561 +8979 4 2 709 26 4206 3968 5070 5416 +8980 4 2 709 26 3895 4196 5183 5487 +8981 4 2 709 26 4778 4650 4718 4911 +8982 4 2 709 26 5875 4106 4515 4742 +8983 4 2 709 26 5245 3897 4259 5182 +8984 4 2 709 26 5413 3888 4517 5289 +8985 4 2 709 26 4203 3905 4139 5187 +8986 4 2 709 26 4485 6002 3868 4256 +8987 4 2 709 26 5668 4179 4568 3958 +8988 4 2 709 26 5780 4095 4808 5219 +8989 4 2 709 26 5188 4097 5163 5555 +8990 4 2 709 26 4407 5472 4976 5113 +8991 4 2 709 26 3902 4073 5391 5710 +8992 4 2 709 26 5122 4225 3895 5199 +8993 4 2 709 26 5260 4122 5298 3940 +8994 4 2 709 26 4986 3963 4297 4789 +8995 4 2 709 26 3987 5776 4409 5055 +8996 4 2 709 26 5046 3963 4396 4889 +8997 4 2 709 26 4147 5822 4877 5113 +8998 4 2 709 26 5266 3983 4590 4878 +8999 4 2 709 26 4632 4469 3905 4172 +9000 4 2 709 26 3928 4144 5009 5385 +9001 4 2 709 26 4359 5636 4833 5376 +9002 4 2 709 26 5183 3938 4571 5505 +9003 4 2 709 26 6034 5047 4162 4727 +9004 4 2 709 26 3897 5213 4415 5070 +9005 4 2 709 26 5855 4323 5274 3873 +9006 4 2 709 26 3916 4764 4704 4139 +9007 4 2 709 26 3994 5478 4276 4891 +9008 4 2 709 26 6065 4014 5283 4731 +9009 4 2 709 26 5539 4147 4877 5113 +9010 4 2 709 26 3886 5963 4643 4927 +9011 4 2 709 26 3915 5047 4673 5035 +9012 4 2 709 26 5841 4208 4797 5154 +9013 4 2 709 26 4093 4517 4824 5725 +9014 4 2 709 26 5699 3991 4356 5256 +9015 4 2 709 26 4140 5698 4825 4961 +9016 4 2 709 26 4305 4133 5437 5453 +9017 4 2 709 26 4567 3929 4767 5103 +9018 4 2 709 26 4567 4058 4947 5103 +9019 4 2 709 26 4296 5380 4644 4474 +9020 4 2 709 26 3930 5673 4108 5833 +9021 4 2 709 26 5702 4128 4503 4998 +9022 4 2 709 26 3892 5591 4822 5095 +9023 4 2 709 26 5285 5762 4363 4571 +9024 4 2 709 26 4196 3986 4814 5593 +9025 4 2 709 26 5376 5395 5499 4549 +9026 4 2 709 26 4109 4257 5207 4408 +9027 4 2 709 26 4152 4751 4344 5352 +9028 4 2 709 26 4122 5298 4781 4985 +9029 4 2 709 26 5249 4111 4658 4732 +9030 4 2 709 26 4306 4787 4471 3882 +9031 4 2 709 26 3870 4406 4651 5476 +9032 4 2 709 26 3895 4330 4774 5431 +9033 4 2 709 26 4144 3873 4803 5809 +9034 4 2 709 26 4146 4546 5274 4411 +9035 4 2 709 26 5202 4060 4597 5063 +9036 4 2 709 26 3883 4069 4346 5290 +9037 4 2 709 26 5576 3990 4263 4720 +9038 4 2 709 26 4254 4401 5131 5181 +9039 4 2 709 26 5676 4106 4253 4807 +9040 4 2 709 26 4578 3902 4176 5248 +9041 4 2 709 26 4096 5936 4858 4029 +9042 4 2 709 26 3963 5046 4869 4889 +9043 4 2 709 26 4026 5883 4439 4806 +9044 4 2 709 26 5451 4823 4390 5038 +9045 4 2 709 26 3917 4094 4365 5339 +9046 4 2 709 26 5534 4284 4548 5346 +9047 4 2 709 26 4465 3958 5130 5312 +9048 4 2 709 26 5037 4205 5116 5335 +9049 4 2 709 26 5436 3880 4518 5159 +9050 4 2 709 26 4173 3876 4867 4352 +9051 4 2 709 26 4419 4333 4295 5332 +9052 4 2 709 26 4158 5688 4546 5538 +9053 4 2 709 26 3871 5681 4365 5078 +9054 4 2 709 26 4253 3894 4807 5193 +9055 4 2 709 26 3914 5424 4462 5060 +9056 4 2 709 26 6076 5253 727 4911 +9057 4 2 709 26 4150 5407 4291 5375 +9058 4 2 709 26 4030 5366 4297 4957 +9059 4 2 709 26 4522 4761 3965 4931 +9060 4 2 709 26 3948 5070 5416 4219 +9061 4 2 709 26 5088 5723 3992 4354 +9062 4 2 709 26 4636 3942 4534 5801 +9063 4 2 709 26 5155 4818 5237 4111 +9064 4 2 709 26 3957 4579 4085 4414 +9065 4 2 709 26 4263 4068 4577 5726 +9066 4 2 709 26 4348 4819 4480 4712 +9067 4 2 709 26 4531 3968 5852 5929 +9068 4 2 709 26 4259 5969 4942 5510 +9069 4 2 709 26 5412 5375 5226 5421 +9070 4 2 709 26 5567 4282 5469 5279 +9071 4 2 709 26 4325 3937 4550 5332 +9072 4 2 709 26 5855 4268 4484 5154 +9073 4 2 709 26 5342 4183 4379 4891 +9074 4 2 709 26 4658 5110 4038 5155 +9075 4 2 709 26 5986 4103 4678 4219 +9076 4 2 709 26 3896 4252 5050 5110 +9077 4 2 709 26 4548 3887 4762 5336 +9078 4 2 709 26 4270 5421 4551 5226 +9079 4 2 709 26 3874 4147 4529 4885 +9080 4 2 709 26 3921 5231 5280 5938 +9081 4 2 709 26 5588 3894 5100 5193 +9082 4 2 709 26 5748 3881 4473 5091 +9083 4 2 709 26 4009 4499 4555 5003 +9084 4 2 709 26 4568 4135 5212 4347 +9085 4 2 709 26 4627 4047 4872 6039 +9086 4 2 709 26 5540 4479 4533 4746 +9087 4 2 709 26 4310 4990 4328 5586 +9088 4 2 709 26 4765 5005 4216 4512 +9089 4 2 709 26 3872 5484 4455 5082 +9090 4 2 709 26 5283 4014 4592 4731 +9091 4 2 709 26 5766 4473 4479 5703 +9092 4 2 709 26 4307 5662 5515 5643 +9093 4 2 709 26 4116 5151 4257 4564 +9094 4 2 709 26 4056 5401 4436 4759 +9095 4 2 709 26 3938 5183 4405 5505 +9096 4 2 709 26 5126 5439 3983 5598 +9097 4 2 709 26 4710 5079 3944 4398 +9098 4 2 709 26 5226 4799 5880 4002 +9099 4 2 709 26 5186 5617 4672 4967 +9100 4 2 709 26 5050 5824 4411 3896 +9101 4 2 709 26 4153 3912 5026 5117 +9102 4 2 709 26 4542 4057 4727 4482 +9103 4 2 709 26 3938 4070 4386 4565 +9104 4 2 709 26 5868 4119 4299 5719 +9105 4 2 709 26 4306 5691 4826 4941 +9106 4 2 709 26 3892 6015 4325 5440 +9107 4 2 709 26 4150 4268 4484 4842 +9108 4 2 709 26 5202 5884 5960 4194 +9109 4 2 709 26 4099 4883 4494 5088 +9110 4 2 709 26 4355 5875 4807 5111 +9111 4 2 709 26 4019 5444 4491 4560 +9112 4 2 709 26 5976 3960 4452 4919 +9113 4 2 709 26 3871 5681 5078 5423 +9114 4 2 709 26 5343 4214 5337 5257 +9115 4 2 709 26 4116 5151 4703 4753 +9116 4 2 709 26 4259 5974 5213 5902 +9117 4 2 709 26 5586 3962 5006 5330 +9118 4 2 709 26 4020 5035 4268 4326 +9119 4 2 709 26 5484 4161 4341 4346 +9120 4 2 709 26 3926 5230 4222 4733 +9121 4 2 709 26 4146 5841 4484 4845 +9122 4 2 709 26 5571 5590 4010 5783 +9123 4 2 709 26 4734 4084 4487 5570 +9124 4 2 709 26 4150 4484 4268 5270 +9125 4 2 709 26 4227 4679 4169 5819 +9126 4 2 709 26 6043 5885 4549 4085 +9127 4 2 709 26 4306 4543 4708 3882 +9128 4 2 709 26 5774 3963 4647 4869 +9129 4 2 709 26 4005 4396 4464 5573 +9130 4 2 709 26 5451 5358 5662 5643 +9131 4 2 709 26 4485 6002 5168 4273 +9132 4 2 709 26 5078 3976 4427 4839 +9133 4 2 709 26 4765 5005 4512 4003 +9134 4 2 709 26 4211 5894 4385 4407 +9135 4 2 709 26 6002 5998 4256 5168 +9136 4 2 709 26 5262 4874 4023 5301 +9137 4 2 709 26 4434 4704 4032 4298 +9138 4 2 709 26 5245 5291 5518 4677 +9139 4 2 709 26 4307 5662 4965 5515 +9140 4 2 709 26 5834 4124 4403 5159 +9141 4 2 709 26 6017 4566 4734 4756 +9142 4 2 709 26 5315 3877 4526 5277 +9143 4 2 709 26 4110 5335 5037 5116 +9144 4 2 709 26 4216 5091 5609 5705 +9145 4 2 709 26 5677 5095 4679 4327 +9146 4 2 709 26 3925 5698 5309 5586 +9147 4 2 709 26 5678 4287 4440 5610 +9148 4 2 709 26 4063 5546 4609 3927 +9149 4 2 709 26 5998 4866 5527 4497 +9150 4 2 709 26 4022 4950 4314 4780 +9151 4 2 709 26 4190 4008 5446 5501 +9152 4 2 709 26 5948 4369 4625 5777 +9153 4 2 709 26 4192 4317 4961 5262 +9154 4 2 709 26 4435 4096 5033 5695 +9155 4 2 709 26 4529 3874 4885 5943 +9156 4 2 709 26 3872 5246 4455 5043 +9157 4 2 709 26 4294 6032 4684 4900 +9158 4 2 709 26 5754 5787 3908 4461 +9159 4 2 709 26 5578 4025 4272 5497 +9160 4 2 709 26 5451 4823 5038 3996 +9161 4 2 709 26 4441 4084 4756 5570 +9162 4 2 709 26 5926 4106 5111 4253 +9163 4 2 709 26 4008 4447 5303 5562 +9164 4 2 709 26 4083 5919 4676 4271 +9165 4 2 709 26 4710 5079 4045 3944 +9166 4 2 709 26 5855 4323 3873 5403 +9167 4 2 709 26 3888 4951 4398 4710 +9168 4 2 709 26 4139 3905 5018 5187 +9169 4 2 709 26 4318 3980 4357 4581 +9170 4 2 709 26 6008 4401 5126 3954 +9171 4 2 709 26 4670 4646 5182 5684 +9172 4 2 709 26 3966 5775 4448 4793 +9173 4 2 709 26 4734 4146 4797 5154 +9174 4 2 709 26 6009 4403 4312 5771 +9175 4 2 709 26 5364 4355 4751 4848 +9176 4 2 709 26 4212 5992 4973 5214 +9177 4 2 709 26 4138 4468 5081 5278 +9178 4 2 709 26 3997 5189 4329 4625 +9179 4 2 709 26 4818 5155 5265 3896 +9180 4 2 709 26 4092 5798 4534 5327 +9181 4 2 709 26 4396 4005 4621 5573 +9182 4 2 709 26 4160 4481 5065 3875 +9183 4 2 709 26 5546 4088 4336 4737 +9184 4 2 709 26 3964 5358 5566 4419 +9185 4 2 709 26 5739 4204 5128 5401 +9186 4 2 709 26 3872 5040 5082 5246 +9187 4 2 709 26 3920 4047 4836 5180 +9188 4 2 709 26 6052 3991 4368 4507 +9189 4 2 709 26 4184 5463 4435 5695 +9190 4 2 709 26 5574 4187 4219 5070 +9191 4 2 709 26 5661 4026 4806 5081 +9192 4 2 709 26 5674 3871 4365 5078 +9193 4 2 709 26 5446 3885 4008 5129 +9194 4 2 709 26 4797 3885 4487 4734 +9195 4 2 709 26 3990 4741 4263 4720 +9196 4 2 709 26 6066 4754 5038 4823 +9197 4 2 709 26 4252 5682 5265 3896 +9198 4 2 709 26 5433 4067 4351 5873 +9199 4 2 709 26 3867 4048 4858 5296 +9200 4 2 709 26 5183 4121 4405 5505 +9201 4 2 709 26 5995 5655 5988 4494 +9202 4 2 709 26 4116 5848 4638 5408 +9203 4 2 709 26 5620 4127 4397 5193 +9204 4 2 709 26 4320 3932 4390 5358 +9205 4 2 709 26 4627 4872 4047 3920 +9206 4 2 709 26 3881 4333 4419 5685 +9207 4 2 709 26 4073 5710 4979 5391 +9208 4 2 709 26 5790 4102 3942 4409 +9209 4 2 709 26 4005 4527 4371 5284 +9210 4 2 709 26 5160 3932 4390 5458 +9211 4 2 709 26 3898 4221 4564 5151 +9212 4 2 709 26 4183 5457 4379 4891 +9213 4 2 709 26 3877 5447 4526 5277 +9214 4 2 709 26 4909 4072 4393 4595 +9215 4 2 709 26 5587 4140 4548 5419 +9216 4 2 709 26 4066 4724 4483 4546 +9217 4 2 709 26 4545 3880 5040 5604 +9218 4 2 709 26 4154 4997 4470 5496 +9219 4 2 709 26 3921 5231 4971 5280 +9220 4 2 709 26 4751 3931 4344 5352 +9221 4 2 709 26 5472 4211 4385 4407 +9222 4 2 709 26 3945 4288 4750 5693 +9223 4 2 709 26 5883 4026 4448 5367 +9224 4 2 709 26 5491 3889 4986 5148 +9225 4 2 709 26 5193 5388 5613 3894 +9226 4 2 709 26 4193 5674 4340 5078 +9227 4 2 709 26 5917 4225 3895 4774 +9228 4 2 709 26 4153 4274 5026 5690 +9229 4 2 709 26 4494 5425 4616 4927 +9230 4 2 709 26 3894 5992 4445 4212 +9231 4 2 709 26 5820 3950 5446 5501 +9232 4 2 709 26 5221 4064 4325 4597 +9233 4 2 709 26 3907 5596 4199 5355 +9234 4 2 709 26 3995 5591 4830 5095 +9235 4 2 709 26 4636 4534 3942 5569 +9236 4 2 709 26 4583 6055 3918 5165 +9237 4 2 709 26 3868 4273 4719 5221 +9238 4 2 709 26 4404 5368 4552 5002 +9239 4 2 709 26 4025 5216 4272 4631 +9240 4 2 709 26 5834 4312 4403 5771 +9241 4 2 709 26 5957 4056 4436 4759 +9242 4 2 709 26 5927 3941 4521 5554 +9243 4 2 709 26 5062 5106 5406 4255 +9244 4 2 709 26 4843 3949 4408 5758 +9245 4 2 709 26 4434 4796 5447 4704 +9246 4 2 709 26 4357 4318 4147 3874 +9247 4 2 709 26 357 5977 4994 5622 +9248 4 2 709 26 3930 5673 5833 4383 +9249 4 2 709 26 4964 4023 4322 4532 +9250 4 2 709 26 5508 5295 4192 3975 +9251 4 2 709 26 5047 4048 4274 4673 +9252 4 2 709 26 3909 4270 4700 5238 +9253 4 2 709 26 4097 5188 4907 5555 +9254 4 2 709 26 4111 5249 4658 5341 +9255 4 2 709 26 5905 4310 4574 4328 +9256 4 2 709 26 4483 4158 4546 5286 +9257 4 2 709 26 5476 5424 4462 5756 +9258 4 2 709 26 5208 4051 4374 4498 +9259 4 2 709 26 5447 4032 4526 5026 +9260 4 2 709 26 5693 5341 4783 4111 +9261 4 2 709 26 4341 5985 5072 4300 +9262 4 2 709 26 5678 3938 5812 4405 +9263 4 2 709 26 3909 5658 5226 5238 +9264 4 2 709 26 5167 4118 4709 4905 +9265 4 2 709 26 4914 4009 4600 5003 +9266 4 2 709 26 5674 5423 4193 5365 +9267 4 2 709 26 4002 4262 4680 5673 +9268 4 2 709 26 5971 4126 4940 5107 +9269 4 2 709 26 5439 3951 4449 4878 +9270 4 2 709 26 4734 4487 4084 5744 +9271 4 2 709 26 4884 4069 4346 4531 +9272 4 2 709 26 5693 4783 5341 5542 +9273 4 2 709 26 4436 4032 5242 5516 +9274 4 2 709 26 5766 4203 4479 4764 +9275 4 2 709 26 4169 5760 4808 5733 +9276 4 2 709 26 3926 4184 4830 5361 +9277 4 2 709 26 5286 3971 4488 4546 +9278 4 2 709 26 5184 4102 4657 4695 +9279 4 2 709 26 4433 4761 4628 5737 +9280 4 2 709 26 4389 3943 4454 4584 +9281 4 2 709 26 3945 4158 4488 5519 +9282 4 2 709 26 3964 5358 4920 5962 +9283 4 2 709 26 4183 4714 4891 5342 +9284 4 2 709 26 4672 4152 5186 5352 +9285 4 2 709 26 5655 3886 4788 4927 +9286 4 2 709 26 4022 5028 4336 4737 +9287 4 2 709 26 3979 5066 4384 4898 +9288 4 2 709 26 5676 3894 4253 5100 +9289 4 2 709 26 3997 3908 4687 4269 +9290 4 2 709 26 5298 5525 4285 3940 +9291 4 2 709 26 4409 5776 4875 5055 +9292 4 2 709 26 4014 6065 4424 4731 +9293 4 2 709 26 5788 4577 5513 4504 +9294 4 2 709 26 5986 4381 4219 4678 +9295 4 2 709 26 5418 4079 4491 4662 +9296 4 2 709 26 5841 3909 4484 4845 +9297 4 2 709 26 5226 4799 4270 5880 +9298 4 2 709 26 3886 5152 4494 5088 +9299 4 2 709 26 4209 5530 4650 4929 +9300 4 2 709 26 3968 5317 5416 4206 +9301 4 2 709 26 6011 6033 3981 4630 +9302 4 2 709 26 4081 5786 5034 4389 +9303 4 2 709 26 4117 4163 4462 4971 +9304 4 2 709 26 4318 3936 5059 4467 +9305 4 2 709 26 4005 5770 4371 4733 +9306 4 2 709 26 4150 5375 4291 5002 +9307 4 2 709 26 3939 5964 4943 4226 +9308 4 2 709 26 5323 489 4894 5228 +9309 4 2 709 26 4337 5522 5000 5320 +9310 4 2 709 26 5008 3976 4316 4654 +9311 4 2 709 26 5279 4007 4124 5232 +9312 4 2 709 26 5429 4072 4393 4909 +9313 4 2 709 26 4292 5559 4520 5049 +9314 4 2 709 26 3926 5527 4789 4597 +9315 4 2 709 26 4764 3916 4704 4937 +9316 4 2 709 26 3952 5289 5413 4517 +9317 4 2 709 26 4119 4963 4418 4473 +9318 4 2 709 26 3963 5612 4297 4464 +9319 4 2 709 26 4311 6030 4813 5489 +9320 4 2 709 26 3944 4045 4710 5537 +9321 4 2 709 26 3991 5699 4356 4924 +9322 4 2 709 26 5423 3871 4607 5365 +9323 4 2 709 26 4364 3933 4651 5393 +9324 4 2 709 26 4138 5516 5240 5278 +9325 4 2 709 26 5678 3938 4440 5812 +9326 4 2 709 26 5294 4187 4953 5043 +9327 4 2 709 26 5533 4331 4742 5310 +9328 4 2 709 26 4173 5099 4404 4651 +9329 4 2 709 26 5808 4331 4742 5533 +9330 4 2 709 26 3883 4967 4672 5805 +9331 4 2 709 26 4318 3936 5395 5059 +9332 4 2 709 26 4404 5393 4651 3933 +9333 4 2 709 26 517 6020 4948 5141 +9334 4 2 709 26 3910 4527 4264 4873 +9335 4 2 709 26 4025 4147 4885 5089 +9336 4 2 709 26 3886 5688 4552 5368 +9337 4 2 709 26 4151 3888 4697 5097 +9338 4 2 709 26 3945 5693 4488 5619 +9339 4 2 709 26 5130 3895 5183 5487 +9340 4 2 709 26 5474 5620 4242 3959 +9341 4 2 709 26 4249 5155 4657 4102 +9342 4 2 709 26 3876 5767 4906 5267 +9343 4 2 709 26 3938 5183 5285 4196 +9344 4 2 709 26 4726 5790 4102 3942 +9345 4 2 709 26 5148 5863 3889 5327 +9346 4 2 709 26 5238 3909 4270 5226 +9347 4 2 709 26 4256 4485 4194 3868 +9348 4 2 709 26 4144 3928 4323 5385 +9349 4 2 709 26 5841 3909 4845 4700 +9350 4 2 709 26 5722 4096 5134 5153 +9351 4 2 709 26 5299 4527 5361 4005 +9352 4 2 709 26 4292 3951 4451 5511 +9353 4 2 709 26 4159 5277 4434 4796 +9354 4 2 709 26 3958 4290 5130 5312 +9355 4 2 709 26 3994 5851 4714 4891 +9356 4 2 709 26 5050 5824 5110 5415 +9357 4 2 709 26 4442 4922 3982 4837 +9358 4 2 709 26 5202 5884 4919 5960 +9359 4 2 709 26 5089 4025 4549 4702 +9360 4 2 709 26 4726 5790 4841 4102 +9361 4 2 709 26 5820 4444 4999 4315 +9362 4 2 709 26 3883 5186 4472 4537 +9363 4 2 709 26 4445 5992 4973 4212 +9364 4 2 709 26 5177 4932 4230 4502 +9365 4 2 709 26 3902 4311 4796 5048 +9366 4 2 709 26 5283 4448 5592 3877 +9367 4 2 709 26 4878 4590 4449 3983 +9368 4 2 709 26 5988 5995 4494 4466 +9369 4 2 709 26 880 5828 4698 5387 +9370 4 2 709 26 5421 4551 5226 5412 +9371 4 2 709 26 3954 5425 4384 5066 +9372 4 2 709 26 3920 4301 4627 5206 +9373 4 2 709 26 5188 3924 5252 5729 +9374 4 2 709 26 3944 5211 4330 4774 +9375 4 2 709 26 4941 4082 4431 4692 +9376 4 2 709 26 3883 4967 5186 4672 +9377 4 2 709 26 5206 5771 5124 4124 +9378 4 2 709 26 3957 4554 4471 4228 +9379 4 2 709 26 5661 4026 4439 4806 +9380 4 2 709 26 5499 4426 4549 5395 +9381 4 2 709 26 5776 3987 4618 5055 +9382 4 2 709 26 5364 5946 4353 4751 +9383 4 2 709 26 5346 4906 5534 4284 +9384 4 2 709 26 5657 3920 5469 5567 +9385 4 2 709 26 5831 4976 5113 4407 +9386 4 2 709 26 3958 5312 4465 5093 +9387 4 2 709 26 5691 4224 5558 4431 +9388 4 2 709 26 4326 5054 4268 4020 +9389 4 2 709 26 3975 4217 4345 5778 +9390 4 2 709 26 4248 4694 5704 4104 +9391 4 2 709 26 3900 5354 5023 5223 +9392 4 2 709 26 4357 4147 4318 4581 +9393 4 2 709 26 4964 4023 4532 4825 +9394 4 2 709 26 4203 4479 4764 3905 +9395 4 2 709 26 4657 4249 4732 5155 +9396 4 2 709 26 4110 5950 4766 5116 +9397 4 2 709 26 4057 5795 4338 5267 +9398 4 2 709 26 4987 3997 4329 4539 +9399 4 2 709 26 5067 3917 4365 4923 +9400 4 2 709 26 5786 4081 4584 4389 +9401 4 2 709 26 4457 4074 4748 5263 +9402 4 2 709 26 4545 5359 3880 4326 +9403 4 2 709 26 4321 5294 4490 4531 +9404 4 2 709 26 4720 3990 5838 5576 +9405 4 2 709 26 4930 5735 4928 4669 +9406 4 2 709 26 5460 4115 5102 5181 +9407 4 2 709 26 4133 4321 4583 5294 +9408 4 2 709 26 4195 4178 4477 5066 +9409 4 2 709 26 5674 5423 5365 3871 +9410 4 2 709 26 5620 5613 4212 5193 +9411 4 2 709 26 5876 4579 4738 4085 +9412 4 2 709 26 5343 4065 4398 4687 +9413 4 2 709 26 4207 5802 4704 5123 +9414 4 2 709 26 4370 4502 4994 4564 +9415 4 2 709 26 4015 4948 4235 5709 +9416 4 2 709 26 3904 4273 4157 4373 +9417 4 2 709 26 5792 3904 4514 5465 +9418 4 2 709 26 3890 4133 4305 5453 +9419 4 2 709 26 4014 5275 4424 4729 +9420 4 2 709 26 5511 4292 4794 5173 +9421 4 2 709 26 582 5769 6071 4809 +9422 4 2 709 26 3917 5843 4475 5468 +9423 4 2 709 26 4434 5447 4796 5277 +9424 4 2 709 26 3935 4326 4610 5359 +9425 4 2 709 26 5725 3888 4517 4710 +9426 4 2 709 26 3911 5434 4321 4966 +9427 4 2 709 26 5388 4741 5193 5613 +9428 4 2 709 26 4022 5020 4314 4950 +9429 4 2 709 26 3954 6008 4401 5895 +9430 4 2 709 26 5395 4025 4426 4549 +9431 4 2 709 26 5424 3914 4462 4952 +9432 4 2 709 26 5294 4187 4453 4953 +9433 4 2 709 26 4714 4183 4863 5342 +9434 4 2 709 26 5474 5620 4501 4242 +9435 4 2 709 26 4128 5702 4969 4998 +9436 4 2 709 26 5476 5424 5060 4462 +9437 4 2 709 26 5560 4686 4940 5092 +9438 4 2 709 26 4162 4186 4773 5326 +9439 4 2 709 26 5110 4210 4969 5415 +9440 4 2 709 26 5534 4284 4906 5767 +9441 4 2 709 26 4289 5708 4682 4782 +9442 4 2 709 26 5444 5857 4293 4528 +9443 4 2 709 26 4023 4964 4800 4825 +9444 4 2 709 26 4373 4155 6048 5334 +9445 4 2 709 26 5245 5518 5073 4677 +9446 4 2 709 26 5002 4173 4404 4291 +9447 4 2 709 26 3983 5266 4364 4878 +9448 4 2 709 26 3960 5976 4970 4919 +9449 4 2 709 26 4681 4302 3993 5617 +9450 4 2 709 26 5099 4404 4552 5002 +9451 4 2 709 26 5573 3879 4464 5463 +9452 4 2 709 26 5998 3935 4866 4497 +9453 4 2 709 26 4069 5484 4341 4346 +9454 4 2 709 26 5929 5457 4531 3968 +9455 4 2 709 26 4349 3982 4837 4920 +9456 4 2 709 26 4315 5744 4623 5495 +9457 4 2 709 26 4291 4002 4458 5412 +9458 4 2 709 26 6023 3979 4816 4384 +9459 4 2 709 26 3897 5684 4219 5182 +9460 4 2 709 26 4734 3885 4208 4797 +9461 4 2 709 26 5878 4004 4461 4690 +9462 4 2 709 26 4102 4556 5265 4252 +9463 4 2 709 26 5030 3980 4359 4833 +9464 4 2 709 26 5361 3926 4464 4733 +9465 4 2 709 26 3945 4483 4158 4788 +9466 4 2 709 26 3954 5051 5425 4229 +9467 4 2 709 26 3981 5103 4712 4947 +9468 4 2 709 26 3963 5046 4430 4869 +9469 4 2 709 26 3879 4497 4957 5463 +9470 4 2 709 26 5733 3995 4830 5095 +9471 4 2 709 26 5245 4206 4646 4968 +9472 4 2 709 26 3929 4963 4418 4711 +9473 4 2 709 26 4963 4119 4418 4711 +9474 4 2 709 26 4933 4109 4659 4791 +9475 4 2 709 26 4103 5986 4678 4817 +9476 4 2 709 26 5711 4152 4751 5388 +9477 4 2 709 26 4323 5682 3984 4756 +9478 4 2 709 26 5688 4066 4483 4546 +9479 4 2 709 26 4284 5534 4548 5074 +9480 4 2 709 26 5101 4639 5510 4259 +9481 4 2 709 26 5245 5291 4677 4968 +9482 4 2 709 26 4806 4138 5401 5739 +9483 4 2 709 26 5881 5350 5421 4551 +9484 4 2 709 26 5987 3944 5537 4045 +9485 4 2 709 26 5497 3878 4426 4631 +9486 4 2 709 26 4233 4018 4562 4588 +9487 4 2 709 26 5249 4111 4783 5341 +9488 4 2 709 26 3946 4125 4563 4755 +9489 4 2 709 26 4098 4679 4615 5819 +9490 4 2 709 26 5546 4063 4609 4737 +9491 4 2 709 26 4153 5086 4490 5452 +9492 4 2 709 26 4661 5178 4129 3998 +9493 4 2 709 26 5364 5946 4751 4090 +9494 4 2 709 26 4138 5739 5128 5401 +9495 4 2 709 26 5241 4044 4585 5012 +9496 4 2 709 26 5523 3960 4370 4919 +9497 4 2 709 26 5876 4228 4579 4085 +9498 4 2 709 26 3987 5055 4350 4618 +9499 4 2 709 26 4391 3878 4570 4631 +9500 4 2 709 26 3949 5758 4560 5444 +9501 4 2 709 26 4423 6003 4773 5880 +9502 4 2 709 26 5995 5655 4494 4883 +9503 4 2 709 26 5313 4047 4301 4627 +9504 4 2 709 26 5754 4004 4234 5243 +9505 4 2 709 26 4291 3876 4458 5304 +9506 4 2 709 26 3926 5527 4464 4789 +9507 4 2 709 26 5674 5423 5078 4193 +9508 4 2 709 26 3880 4628 5040 5604 +9509 4 2 709 26 4580 3945 4197 4450 +9510 4 2 709 26 5267 3930 4338 5382 +9511 4 2 709 26 3925 4039 4400 4725 +9512 4 2 709 26 5866 4094 4482 4305 +9513 4 2 709 26 4344 4263 4577 4793 +9514 4 2 709 26 5243 4690 5496 5754 +9515 4 2 709 26 4231 5089 4952 5216 +9516 4 2 709 26 5094 4503 4881 4998 +9517 4 2 709 26 4211 4407 5827 5894 +9518 4 2 709 26 4296 5380 4474 4130 +9519 4 2 709 26 5412 4002 4551 5226 +9520 4 2 709 26 5976 3977 4388 4970 +9521 4 2 709 26 4265 4331 4681 5448 +9522 4 2 709 26 4184 3926 4464 5361 +9523 4 2 709 26 3962 4558 5885 5390 +9524 4 2 709 26 4396 3879 4464 5573 +9525 4 2 709 26 4866 4029 3935 5032 +9526 4 2 709 26 5908 3956 4343 4505 +9527 4 2 709 26 4708 5239 4117 5190 +9528 4 2 709 26 4300 4188 4895 5084 +9529 4 2 709 26 5813 6024 5525 5507 +9530 4 2 709 26 5081 5666 4145 4468 +9531 4 2 709 26 4112 4281 3950 5225 +9532 4 2 709 26 5188 4907 5555 5729 +9533 4 2 709 26 5449 4224 4621 5014 +9534 4 2 709 26 4415 3968 5070 5213 +9535 4 2 709 26 3950 5121 4402 5663 +9536 4 2 709 26 4672 3883 4537 5186 +9537 4 2 709 26 4109 5151 4659 4791 +9538 4 2 709 26 4069 5484 4346 4531 +9539 4 2 709 26 4497 4064 4866 5527 +9540 4 2 709 26 4262 4002 4458 5673 +9541 4 2 709 26 5710 4882 5391 3902 +9542 4 2 709 26 4082 4941 4306 4554 +9543 4 2 709 26 5757 3994 4714 4891 +9544 4 2 709 26 4053 5985 4300 5072 +9545 4 2 709 26 5999 4252 4978 5050 +9546 4 2 709 26 5200 4125 4669 5194 +9547 4 2 709 26 5140 4051 4838 4498 +9548 4 2 709 26 4273 4033 4719 5221 +9549 4 2 709 26 4070 5513 4565 4440 +9550 4 2 709 26 3883 4069 4472 4341 +9551 4 2 709 26 5638 3981 4712 4947 +9552 4 2 709 26 4671 4280 5553 6019 +9553 4 2 709 26 4305 4094 4482 4777 +9554 4 2 709 26 4326 3935 4610 5054 +9555 4 2 709 26 4244 5776 4618 5055 +9556 4 2 709 26 4456 5040 5246 5947 +9557 4 2 709 26 4295 5064 4567 4059 +9558 4 2 709 26 4224 5910 5014 5397 +9559 4 2 709 26 4607 4846 3930 5083 +9560 4 2 709 26 716 6012 4461 5712 +9561 4 2 709 26 5467 3888 4398 4710 +9562 4 2 709 26 5777 4241 5376 5499 +9563 4 2 709 26 3945 5619 4197 4450 +9564 4 2 709 26 4199 5968 4770 5596 +9565 4 2 709 26 5186 5617 4967 4302 +9566 4 2 709 26 4016 4285 4587 5813 +9567 4 2 709 26 5571 4010 4596 5144 +9568 4 2 709 26 4614 4320 4079 3982 +9569 4 2 709 26 6015 4033 4635 3964 +9570 4 2 709 26 3945 4483 5286 4158 +9571 4 2 709 26 4104 5462 4519 4854 +9572 4 2 709 26 4217 4101 4516 4648 +9573 4 2 709 26 4452 5976 4919 5884 +9574 4 2 709 26 4604 4154 5133 4997 +9575 4 2 709 26 4144 6006 5269 3928 +9576 4 2 709 26 3879 4396 4621 5573 +9577 4 2 709 26 5272 4164 4473 5091 +9578 4 2 709 26 3940 5260 4624 5036 +9579 4 2 709 26 5995 5655 4883 4012 +9580 4 2 709 26 4217 5861 4648 4516 +9581 4 2 709 26 3983 5904 4590 5131 +9582 4 2 709 26 3991 4924 4356 4563 +9583 4 2 709 26 4431 6013 4264 4692 +9584 4 2 709 26 4029 4096 4497 5529 +9585 4 2 709 26 3890 4649 4777 5165 +9586 4 2 709 26 3870 4148 4364 4035 +9587 4 2 709 26 3919 4997 5133 5496 +9588 4 2 709 26 5202 5960 4919 5207 +9589 4 2 709 26 3967 4906 4458 4582 +9590 4 2 709 26 4049 3996 4307 5031 +9591 4 2 709 26 5207 3988 4919 5202 +9592 4 2 709 26 5493 4006 4605 5042 +9593 4 2 709 26 6024 4285 5525 3940 +9594 4 2 709 26 4645 4674 4297 3889 +9595 4 2 709 26 4032 5516 4526 5026 +9596 4 2 709 26 5881 476 4886 5696 +9597 4 2 709 26 5932 4277 5031 3996 +9598 4 2 709 26 5593 4070 4386 3938 +9599 4 2 709 26 4131 5012 4763 4899 +9600 4 2 709 26 3981 4910 4410 5718 +9601 4 2 709 26 4285 4016 4587 5404 +9602 4 2 709 26 3916 4806 5081 5661 +9603 4 2 709 26 3965 5834 4403 4433 +9604 4 2 709 26 3907 5355 4199 5153 +9605 4 2 709 26 5670 5371 4145 4786 +9606 4 2 709 26 5657 3920 5170 5469 +9607 4 2 709 26 3955 4881 4237 4503 +9608 4 2 709 26 5280 5963 5938 5231 +9609 4 2 709 26 5451 5358 4390 5662 +9610 4 2 709 26 5936 4096 4858 5134 +9611 4 2 709 26 5834 4403 4433 5159 +9612 4 2 709 26 4126 5971 4940 5092 +9613 4 2 709 26 4906 4561 3876 5267 +9614 4 2 709 26 4318 5647 5059 5395 +9615 4 2 709 26 5718 4251 3981 5171 +9616 4 2 709 26 3923 5363 4396 5046 +9617 4 2 709 26 4157 5685 4419 4333 +9618 4 2 709 26 3991 5106 4368 5062 +9619 4 2 709 26 4408 4109 4792 3949 +9620 4 2 709 26 3873 4144 5274 5809 +9621 4 2 709 26 3997 5039 4329 4539 +9622 4 2 709 26 4070 5513 4440 5127 +9623 4 2 709 26 4194 5884 4485 4256 +9624 4 2 709 26 3904 4062 5250 5168 +9625 4 2 709 26 5682 3984 4252 4556 +9626 4 2 709 26 4829 4100 4893 5020 +9627 4 2 709 26 3980 4831 4357 5373 +9628 4 2 709 26 5737 3965 4403 4433 +9629 4 2 709 26 3928 6009 4566 4337 +9630 4 2 709 26 4270 6049 4551 5350 +9631 4 2 709 26 4273 4062 4485 4373 +9632 4 2 709 26 3899 5971 5107 4831 +9633 4 2 709 26 5670 4735 5012 5661 +9634 4 2 709 26 5662 6048 4373 5864 +9635 4 2 709 26 5238 5068 4270 4700 +9636 4 2 709 26 5107 4126 4248 4831 +9637 4 2 709 26 4701 4126 5092 5971 +9638 4 2 709 26 3968 5317 5547 5606 +9639 4 2 709 26 4158 3945 4488 5286 +9640 4 2 709 26 5778 4217 4345 4516 +9641 4 2 709 26 4198 6051 4708 3979 +9642 4 2 709 26 5101 4639 3989 4382 +9643 4 2 709 26 5452 4274 5026 4153 +9644 4 2 709 26 3950 5501 4661 5446 +9645 4 2 709 26 5951 4282 4769 3913 +9646 4 2 709 26 5843 4475 4902 3917 +9647 4 2 709 26 5704 5886 4104 5098 +9648 4 2 709 26 3983 5439 4449 4878 +9649 4 2 709 26 5591 3892 4325 4830 +9650 4 2 709 26 4157 5685 5515 4419 +9651 4 2 709 26 4438 4207 3927 4044 +9652 4 2 709 26 5372 4262 4362 5266 +9653 4 2 709 26 4221 5158 4835 5112 +9654 4 2 709 26 5771 5206 4518 4124 +9655 4 2 709 26 4304 4088 4592 5185 +9656 4 2 709 26 5110 4658 4706 4969 +9657 4 2 709 26 5662 4307 5451 5643 +9658 4 2 709 26 4005 5573 4464 5361 +9659 4 2 709 26 4338 6034 4482 5087 +9660 4 2 709 26 5708 3944 4774 5211 +9661 4 2 709 26 5968 4199 4957 5138 +9662 4 2 709 26 869 5461 6073 5137 +9663 4 2 709 26 5024 4787 5818 4431 +9664 4 2 709 26 5551 5560 4050 4688 +9665 4 2 709 26 3984 5564 4422 4337 +9666 4 2 709 26 3879 4957 4396 4464 +9667 4 2 709 26 5413 4136 5097 3888 +9668 4 2 709 26 4425 5280 4616 4898 +9669 4 2 709 26 5776 4409 5010 3987 +9670 4 2 709 26 4277 3996 4897 3970 +9671 4 2 709 26 3904 5250 4245 4514 +9672 4 2 709 26 5516 4138 4806 5278 +9673 4 2 709 26 4883 4354 5088 5715 +9674 4 2 709 26 4305 4094 3917 5339 +9675 4 2 709 26 4178 3870 4364 4651 +9676 4 2 709 26 5657 4062 5168 5250 +9677 4 2 709 26 5449 4224 5014 5397 +9678 4 2 709 26 5662 4157 5515 4419 +9679 4 2 709 26 4273 4719 4373 4485 +9680 4 2 709 26 5676 4723 4106 4663 +9681 4 2 709 26 4119 5091 5705 5868 +9682 4 2 709 26 5668 4067 3958 5140 +9683 4 2 709 26 3998 4129 4773 5178 +9684 4 2 709 26 5382 5485 4607 3930 +9685 4 2 709 26 4192 4317 3975 5295 +9686 4 2 709 26 5997 249 5253 5634 +9687 4 2 709 26 4229 4653 5051 5150 +9688 4 2 709 26 4110 5950 4855 5311 +9689 4 2 709 26 5813 6024 4285 5525 +9690 4 2 709 26 5887 4688 4940 5560 +9691 4 2 709 26 3919 4470 4997 5496 +9692 4 2 709 26 5091 5609 5705 5868 +9693 4 2 709 26 4981 4125 4576 4755 +9694 4 2 709 26 5654 694 4854 5169 +9695 4 2 709 26 6030 4100 4813 5489 +9696 4 2 709 26 4206 5684 5213 5245 +9697 4 2 709 26 3889 5327 4636 5148 +9698 4 2 709 26 5679 4337 4422 5564 +9699 4 2 709 26 4323 5682 5385 3984 +9700 4 2 709 26 5886 3957 4414 4519 +9701 4 2 709 26 5391 5018 5316 4073 +9702 4 2 709 26 4479 4059 4821 5064 +9703 4 2 709 26 4329 5777 4625 5671 +9704 4 2 709 26 4362 6047 4903 3933 +9705 4 2 709 26 5016 4167 5423 5078 +9706 4 2 709 26 4010 4992 4314 4950 +9707 4 2 709 26 5910 4224 4982 5397 +9708 4 2 709 26 4947 4136 4567 4712 +9709 4 2 709 26 4509 4135 4536 5075 +9710 4 2 709 26 4269 6012 4637 4890 +9711 4 2 709 26 4511 4055 4381 5377 +9712 4 2 709 26 3888 5725 4517 5289 +9713 4 2 709 26 5260 3985 4250 5058 +9714 4 2 709 26 4113 5526 4420 4929 +9715 4 2 709 26 4247 5087 4338 4482 +9716 4 2 709 26 4153 4069 5652 5117 +9717 4 2 709 26 5804 464 4508 5531 +9718 4 2 709 26 4100 5489 4829 4893 +9719 4 2 709 26 3911 4490 4321 5437 +9720 4 2 709 26 4617 3966 4304 4438 +9721 4 2 709 26 3888 4136 5059 5289 +9722 4 2 709 26 4015 5918 4292 5559 +9723 4 2 709 26 4208 4734 4797 5154 +9724 4 2 709 26 4697 5413 5097 3888 +9725 4 2 709 26 4148 4035 4601 4915 +9726 4 2 709 26 4212 3894 5193 5613 +9727 4 2 709 26 4796 5664 5048 5075 +9728 4 2 709 26 4058 5338 4567 4947 +9729 4 2 709 26 5494 4140 4601 4825 +9730 4 2 709 26 4061 5365 4607 5074 +9731 4 2 709 26 4143 4095 4830 5247 +9732 4 2 709 26 4083 4271 5160 5486 +9733 4 2 709 26 5581 368 4954 5169 +9734 4 2 709 26 5588 5214 4212 5700 +9735 4 2 709 26 5986 4280 4678 4817 +9736 4 2 709 26 4151 4203 4479 5703 +9737 4 2 709 26 4469 4214 4632 5337 +9738 4 2 709 26 4306 5876 3882 4471 +9739 4 2 709 26 4261 5328 4922 5109 +9740 4 2 709 26 4604 4372 5575 5787 +9741 4 2 709 26 5409 5610 4287 4606 +9742 4 2 709 26 5376 5395 4549 4318 +9743 4 2 709 26 5043 5989 5574 4953 +9744 4 2 709 26 3939 5490 4345 4943 +9745 4 2 709 26 3955 4441 4756 5570 +9746 4 2 709 26 4456 5246 5040 3872 +9747 4 2 709 26 3891 5935 5489 4135 +9748 4 2 709 26 3997 5712 4625 4004 +9749 4 2 709 26 5028 4022 4336 4780 +9750 4 2 709 26 5907 4135 4641 4347 +9751 4 2 709 26 4375 5188 4805 5163 +9752 4 2 709 26 4827 5435 4045 4697 +9753 4 2 709 26 4002 5412 4291 5226 +9754 4 2 709 26 5976 4970 4919 5884 +9755 4 2 709 26 5343 5337 4851 4065 +9756 4 2 709 26 5676 4723 4253 4106 +9757 4 2 709 26 4083 5937 4743 4754 +9758 4 2 709 26 4106 5676 4663 5533 +9759 4 2 709 26 5131 3983 4449 4590 +9760 4 2 709 26 4605 953 5601 5944 +9761 4 2 709 26 3967 4262 4680 5427 +9762 4 2 709 26 5484 3872 4455 5043 +9763 4 2 709 26 4145 4243 4786 5666 +9764 4 2 709 26 3963 4396 4464 4733 +9765 4 2 709 26 4404 5393 4173 4651 +9766 4 2 709 26 4135 5907 4641 5664 +9767 4 2 709 26 4129 5392 4456 5246 +9768 4 2 709 26 4071 4451 4586 4878 +9769 4 2 709 26 5677 5095 4169 4679 +9770 4 2 709 26 6021 403 4783 5637 +9771 4 2 709 26 3894 5193 4253 5100 +9772 4 2 709 26 5038 3996 4754 4897 +9773 4 2 709 26 3880 4188 4545 5040 +9774 4 2 709 26 4148 3951 4367 4878 +9775 4 2 709 26 5918 4015 4995 5559 +9776 4 2 709 26 3885 4859 4734 4208 +9777 4 2 709 26 4129 5870 4456 5392 +9778 4 2 709 26 5110 4978 5050 4128 +9779 4 2 709 26 5089 4025 4952 5216 +9780 4 2 709 26 3941 5902 4417 4521 +9781 4 2 709 26 5937 4743 4754 5644 +9782 4 2 709 26 4139 4764 5018 3905 +9783 4 2 709 26 4337 5679 5320 5564 +9784 4 2 709 26 4121 4888 4975 5791 +9785 4 2 709 26 5748 3881 5091 5643 +9786 4 2 709 26 4462 4425 4971 5476 +9787 4 2 709 26 4153 5652 4069 4613 +9788 4 2 709 26 5155 5237 4818 4249 +9789 4 2 709 26 5557 4049 4245 5203 +9790 4 2 709 26 5246 3872 4456 4953 +9791 4 2 709 26 5078 4365 5067 4094 +9792 4 2 709 26 4184 5695 4435 4844 +9793 4 2 709 26 4103 5549 4671 4817 +9794 4 2 709 26 3930 4338 4561 5267 +9795 4 2 709 26 4164 5748 4473 5091 +9796 4 2 709 26 4132 5514 4971 5476 +9797 4 2 709 26 6004 942 5073 5969 +9798 4 2 709 26 3930 5485 4607 5083 +9799 4 2 709 26 5776 4244 4875 5055 +9800 4 2 709 26 4249 4732 5155 5237 +9801 4 2 709 26 4937 4806 5401 5739 +9802 4 2 709 26 5829 5606 4276 4891 +9803 4 2 709 26 4304 4088 5185 5546 +9804 4 2 709 26 5469 5920 4627 4266 +9805 4 2 709 26 4080 5252 4319 4761 +9806 4 2 709 26 3917 4156 4475 4902 +9807 4 2 709 26 5056 4014 4424 4729 +9808 4 2 709 26 3929 6045 4767 4213 +9809 4 2 709 26 6021 372 5637 5785 +9810 4 2 709 26 4035 4906 4582 5393 +9811 4 2 709 26 5226 4291 5304 5407 +9812 4 2 709 26 4125 5200 4255 5194 +9813 4 2 709 26 3964 4033 4635 4920 +9814 4 2 709 26 4132 5840 4425 4616 +9815 4 2 709 26 3874 5943 5578 4885 +9816 4 2 709 26 4845 3909 4484 4724 +9817 4 2 709 26 4187 5011 4321 4583 +9818 4 2 709 26 5634 4668 5253 4290 +9819 4 2 709 26 5421 4724 5368 5375 +9820 4 2 709 26 5476 5424 5756 4406 +9821 4 2 709 26 4069 4490 4884 5306 +9822 4 2 709 26 4288 6021 4750 4783 +9823 4 2 709 26 5523 3960 4932 4370 +9824 4 2 709 26 4658 5249 4732 5470 +9825 4 2 709 26 5469 4627 5567 3920 +9826 4 2 709 26 5786 4707 5034 5356 +9827 4 2 709 26 5662 4419 5515 5643 +9828 4 2 709 26 4354 4883 5088 5655 +9829 4 2 709 26 4660 4013 5369 4936 +9830 4 2 709 26 3991 5016 4368 4507 +9831 4 2 709 26 4022 4313 4314 5020 +9832 4 2 709 26 3881 4333 5685 4746 +9833 4 2 709 26 3975 5262 4192 5139 +9834 4 2 709 26 5019 5604 3880 4326 +9835 4 2 709 26 4284 4561 3967 4906 +9836 4 2 709 26 5795 3876 4338 5267 +9837 4 2 709 26 5499 5671 5777 4241 +9838 4 2 709 26 4822 5600 4325 3937 +9839 4 2 709 26 3998 5068 4700 4917 +9840 4 2 709 26 4007 5759 4300 4375 +9841 4 2 709 26 4096 3879 5695 5463 +9842 4 2 709 26 4158 5688 4483 4546 +9843 4 2 709 26 5801 5010 4556 5385 +9844 4 2 709 26 5666 4145 4541 4857 +9845 4 2 709 26 5676 4723 5100 4253 +9846 4 2 709 26 3934 5534 4429 5587 +9847 4 2 709 26 4004 5754 4461 4690 +9848 4 2 709 26 3883 4069 4341 4346 +9849 4 2 709 26 4621 4224 5728 5024 +9850 4 2 709 26 5165 5015 5954 4055 +9851 4 2 709 26 4203 4139 3905 4764 +9852 4 2 709 26 4471 5089 4787 5539 +9853 4 2 709 26 4264 4431 4692 5608 +9854 4 2 709 26 5377 4055 4381 4684 +9855 4 2 709 26 5468 4156 4475 3917 +9856 4 2 709 26 3938 5762 4571 5505 +9857 4 2 709 26 5664 4135 4578 5048 +9858 4 2 709 26 4368 4553 4507 5016 +9859 4 2 709 26 4096 5529 4858 5134 +9860 4 2 709 26 5222 4457 4748 4201 +9861 4 2 709 26 4006 4239 4912 5042 +9862 4 2 709 26 5391 5316 5018 4298 +9863 4 2 709 26 4136 5097 4567 4712 +9864 4 2 709 26 4048 4020 4858 5296 +9865 4 2 709 26 4851 4151 4469 3888 +9866 4 2 709 26 3980 5900 4414 4241 +9867 4 2 709 26 3930 5267 4607 5382 +9868 4 2 709 26 4085 3957 4414 4581 +9869 4 2 709 26 4244 6060 4875 5055 +9870 4 2 709 26 346 6022 4779 5832 +9871 4 2 709 26 4285 3940 4459 5298 +9872 4 2 709 26 3943 5589 4445 4324 +9873 4 2 709 26 5530 4105 4650 4911 +9874 4 2 709 26 4192 3975 4317 5262 +9875 4 2 709 26 6009 3965 4312 4403 +9876 4 2 709 26 4193 4427 4340 4896 +9877 4 2 709 26 4138 4468 4514 5128 +9878 4 2 709 26 5775 4263 4848 4751 +9879 4 2 709 26 5781 912 5000 5320 +9880 4 2 709 26 4227 4679 4615 5743 +9881 4 2 709 26 4157 4033 4719 4273 +9882 4 2 709 26 3897 5663 5182 4219 +9883 4 2 709 26 4106 5111 4253 4807 +9884 4 2 709 26 4990 5698 4328 5586 +9885 4 2 709 26 4253 5926 4723 4991 +9886 4 2 709 26 5418 3964 5563 4767 +9887 4 2 709 26 4549 6043 4147 5089 +9888 4 2 709 26 4218 5354 4905 5223 +9889 4 2 709 26 5028 4022 4780 4950 +9890 4 2 709 26 3968 5011 4378 4966 +9891 4 2 709 26 646 6000 5135 5990 +9892 4 2 709 26 5193 5388 3894 4807 +9893 4 2 709 26 5985 4053 4300 4895 +9894 4 2 709 26 6030 4100 4365 4813 +9895 4 2 709 26 4679 4227 4615 5819 +9896 4 2 709 26 4224 5768 4982 5397 +9897 4 2 709 26 4488 5693 4818 5504 +9898 4 2 709 26 3982 4358 4837 4922 +9899 4 2 709 26 470 6020 4495 5052 +9900 4 2 709 26 5294 5484 4531 5043 +9901 4 2 709 26 4359 4334 4467 4831 +9902 4 2 709 26 4291 4150 4867 5407 +9903 4 2 709 26 4126 5107 4686 4940 +9904 4 2 709 26 3974 4774 5079 5431 +9905 4 2 709 26 4908 3962 4369 5006 +9906 4 2 709 26 4294 6003 5178 4773 +9907 4 2 709 26 3957 5373 4357 4976 +9908 4 2 709 26 4074 5222 4457 4748 +9909 4 2 709 26 5624 4133 4490 5437 +9910 4 2 709 26 3932 4320 4614 3982 +9911 4 2 709 26 4028 4156 4902 4598 +9912 4 2 709 26 4243 4145 4786 5670 +9913 4 2 709 26 4326 4268 5054 5817 +9914 4 2 709 26 5283 4448 3877 4438 +9915 4 2 709 26 5533 4205 4663 5116 +9916 4 2 709 26 5508 3975 4192 5139 +9917 4 2 709 26 4276 5829 4891 5478 +9918 4 2 709 26 4199 5596 4770 5355 +9919 4 2 709 26 3927 5028 4067 4509 +9920 4 2 709 26 4431 5608 4527 5558 +9921 4 2 709 26 4229 5995 4494 4883 +9922 4 2 709 26 3987 5265 4409 5010 +9923 4 2 709 26 4185 5937 4754 5644 +9924 4 2 709 26 5104 5050 4252 5999 +9925 4 2 709 26 4090 4672 4537 4751 +9926 4 2 709 26 5744 3885 4487 4999 +9927 4 2 709 26 4036 4723 5676 4663 +9928 4 2 709 26 4979 4882 5391 5710 +9929 4 2 709 26 5468 4238 4609 5283 +9930 4 2 709 26 4015 5559 4603 4995 +9931 4 2 709 26 5040 5615 4628 3880 +9932 4 2 709 26 4224 3910 4431 5024 +9933 4 2 709 26 4333 3937 4746 4295 +9934 4 2 709 26 4025 4702 4426 4549 +9935 4 2 709 26 4076 5698 4825 4601 +9936 4 2 709 26 5499 5671 4241 4908 +9937 4 2 709 26 5476 5424 4406 5060 +9938 4 2 709 26 4013 5569 4534 4636 +9939 4 2 709 26 4900 3978 4661 5178 +9940 4 2 709 26 5559 4015 4603 4292 +9941 4 2 709 26 3970 5031 4541 4857 +9942 4 2 709 26 3880 4188 5040 5615 +9943 4 2 709 26 3908 5907 4347 5212 +9944 4 2 709 26 3965 5834 4312 4403 +9945 4 2 709 26 4320 3932 4614 5458 +9946 4 2 709 26 5016 5078 4649 4167 +9947 4 2 709 26 4269 4890 4637 4868 +9948 4 2 709 26 5708 4113 4682 4782 +9949 4 2 709 26 3971 4275 4724 5286 +9950 4 2 709 26 4087 5243 4690 5496 +9951 4 2 709 26 4125 5893 4755 4981 +9952 4 2 709 26 5907 4135 4578 5664 +9953 4 2 709 26 4002 4291 4458 5304 +9954 4 2 709 26 4411 5682 4756 5050 +9955 4 2 709 26 3998 4008 5129 5446 +9956 4 2 709 26 5379 4093 4478 4987 +9957 4 2 709 26 5840 5152 4651 4178 +9958 4 2 709 26 5273 5928 5795 4048 +9959 4 2 709 26 5451 4823 5662 4390 +9960 4 2 709 26 5031 4468 5255 4307 +9961 4 2 709 26 3879 4621 4396 5701 +9962 4 2 709 26 5792 4436 5032 5465 +9963 4 2 709 26 3952 5289 4359 4334 +9964 4 2 709 26 4271 3932 5333 5864 +9965 4 2 709 26 5633 5173 4794 4292 +9966 4 2 709 26 4010 5590 4596 5321 +9967 4 2 709 26 5795 5928 5924 4048 +9968 4 2 709 26 5801 5010 3942 4556 +9969 4 2 709 26 4252 5265 5682 4556 +9970 4 2 709 26 4307 4204 4468 5255 +9971 4 2 709 26 4048 3867 4858 5134 +9972 4 2 709 26 5725 4093 4478 4824 +9973 4 2 709 26 4633 5464 4416 4271 +9974 4 2 709 26 5367 5516 4171 4526 +9975 4 2 709 26 5465 3904 4514 5250 +9976 4 2 709 26 4536 5548 4814 5241 +9977 4 2 709 26 4419 5662 5358 5643 +9978 4 2 709 26 6071 5769 1016 4809 +9979 4 2 709 26 5140 4051 4568 4838 +9980 4 2 709 26 3884 4763 5012 4899 +9981 4 2 709 26 4435 4096 5695 5463 +9982 4 2 709 26 3942 5265 5010 4409 +9983 4 2 709 26 4519 4228 4579 5654 +9984 4 2 709 26 3898 4109 5151 5207 +9985 4 2 709 26 5391 4796 3902 5297 +9986 4 2 709 26 4591 4857 5263 5552 +9987 4 2 709 26 4063 5489 4813 4893 +9988 4 2 709 26 5873 4351 4768 5593 +9989 4 2 709 26 5158 4221 5408 5112 +9990 4 2 709 26 5756 3870 4406 4035 +9991 4 2 709 26 3918 5954 4055 5165 +9992 4 2 709 26 4148 4804 4400 4367 +9993 4 2 709 26 5427 3967 4383 4680 +9994 4 2 709 26 5214 4399 4736 4973 +9995 4 2 709 26 4055 4511 4555 5377 +9996 4 2 709 26 4756 4084 4566 4734 +9997 4 2 709 26 4273 4062 4373 3904 +9998 4 2 709 26 3967 5673 4383 4680 +9999 4 2 709 26 5571 4010 5590 4596 +10000 4 2 709 26 6032 4453 5178 4055 +10001 4 2 709 26 5136 4080 4460 4999 +10002 4 2 709 26 4341 5729 3924 5555 +10003 4 2 709 26 4093 5379 4478 4824 +10004 4 2 709 26 4158 3945 4788 4350 +10005 4 2 709 26 4888 5791 5505 5678 +10006 4 2 709 26 5666 4468 4541 4145 +10007 4 2 709 26 3924 4455 4761 5252 +10008 4 2 709 26 5873 4438 3927 4617 +10009 4 2 709 26 4192 5419 4429 4548 +10010 4 2 709 26 4306 6051 4543 4826 +10011 4 2 709 26 4256 5996 4485 5168 +10012 4 2 709 26 3924 4300 5163 4375 +10013 4 2 709 26 3968 4206 5070 5213 +10014 4 2 709 26 3962 5885 4549 4702 +10015 4 2 709 26 4838 5144 5208 4376 +10016 4 2 709 26 4479 4151 4473 5064 +10017 4 2 709 26 3979 5823 4384 5066 +10018 4 2 709 26 5217 5551 4688 4934 +10019 4 2 709 26 5634 4668 4290 5571 +10020 4 2 709 26 5343 3888 4539 4951 +10021 4 2 709 26 4273 4062 5168 4485 +10022 4 2 709 26 4047 6039 5313 5077 +10023 4 2 709 26 5950 6075 1018 4855 +10024 4 2 709 26 5501 4190 4402 4661 +10025 4 2 709 26 4045 5611 4380 4626 +10026 4 2 709 26 4334 4467 5289 4359 +10027 4 2 709 26 5803 4302 4265 5034 +10028 4 2 709 26 3980 5376 4359 4833 +10029 4 2 709 26 3954 5051 4384 5425 +10030 4 2 709 26 3963 5046 4396 4430 +10031 4 2 709 26 4838 5208 5144 4498 +10032 4 2 709 26 4185 5644 4754 4897 +10033 4 2 709 26 4115 3954 5126 5181 +10034 4 2 709 26 5288 4011 4606 4201 +10035 4 2 709 26 4280 4671 5553 5646 +10036 4 2 709 26 5160 3932 4823 4390 +10037 4 2 709 26 3949 4560 4685 5444 +10038 4 2 709 26 5092 4126 4686 4940 +10039 4 2 709 26 4150 4291 4867 5002 +10040 4 2 709 26 4922 6038 3949 5207 +10041 4 2 709 26 3997 3908 5343 4687 +10042 4 2 709 26 4604 4372 5133 5575 +10043 4 2 709 26 4053 5072 4300 5013 +10044 4 2 709 26 5265 5385 4556 5010 +10045 4 2 709 26 5889 4149 5026 5277 +10046 4 2 709 26 3962 4908 4369 5499 +10047 4 2 709 26 4899 4363 4744 5285 +10048 4 2 709 26 4126 5971 4831 5107 +10049 4 2 709 26 4215 5989 4460 5121 +10050 4 2 709 26 5710 4342 4570 5659 +10051 4 2 709 26 5114 5102 5181 4747 +10052 4 2 709 26 4313 4923 4022 4316 +10053 4 2 709 26 4261 4109 4922 5328 +10054 4 2 709 26 5627 4594 5437 4305 +10055 4 2 709 26 5830 612 4576 5229 +10056 4 2 709 26 5691 4224 4431 3999 +10057 4 2 709 26 4433 3880 4628 5615 +10058 4 2 709 26 5920 4443 4972 5469 +10059 4 2 709 26 4971 5963 4132 5280 +10060 4 2 709 26 5864 4155 4719 5333 +10061 4 2 709 26 4145 4541 4857 5108 +10062 4 2 709 26 4172 5906 5497 5578 +10063 4 2 709 26 4536 5075 5123 4207 +10064 4 2 709 26 4414 4519 4104 5886 +10065 4 2 709 26 5016 3991 4368 5062 +10066 4 2 709 26 6065 4424 5627 3911 +10067 4 2 709 26 4959 4036 5311 4766 +10068 4 2 709 26 5356 3913 4481 5293 +10069 4 2 709 26 4468 4514 5128 5362 +10070 4 2 709 26 4058 4567 4767 5103 +10071 4 2 709 26 4275 3971 4724 4845 +10072 4 2 709 26 4009 4914 4600 5145 +10073 4 2 709 26 4519 4579 4854 5654 +10074 4 2 709 26 5207 3988 4564 4919 +10075 4 2 709 26 4221 4116 4564 5151 +10076 4 2 709 26 3949 4685 4560 4442 +10077 4 2 709 26 4814 4196 5241 5548 +10078 4 2 709 26 4270 5350 4700 5068 +10079 4 2 709 26 4813 4796 4159 4311 +10080 4 2 709 26 4096 5529 5134 5153 +10081 4 2 709 26 5845 847 4428 5512 +10082 4 2 709 26 4105 5253 4785 4911 +10083 4 2 709 26 5596 3907 4199 5514 +10084 4 2 709 26 3923 5046 4396 4889 +10085 4 2 709 26 3968 5416 5011 5070 +10086 4 2 709 26 4295 4619 4822 3937 +10087 4 2 709 26 4672 4537 4751 5352 +10088 4 2 709 26 4519 3957 4228 4554 +10089 4 2 709 26 4229 4510 4653 5150 +10090 4 2 709 26 4092 5327 4534 4636 +10091 4 2 709 26 4306 6051 4708 4543 +10092 4 2 709 26 4069 5484 4490 4613 +10093 4 2 709 26 4095 5758 4843 4387 +10094 4 2 709 26 5674 5423 3871 5078 +10095 4 2 709 26 5050 5824 3896 5110 +10096 4 2 709 26 4277 4857 4591 5552 +10097 4 2 709 26 4198 3979 4708 4834 +10098 4 2 709 26 4116 4221 4703 5151 +10099 4 2 709 26 4082 4554 4306 4471 +10100 4 2 709 26 4048 5201 4727 5047 +10101 4 2 709 26 5100 4036 4634 4667 +10102 4 2 709 26 5054 4497 3935 5366 +10103 4 2 709 26 796 6007 5328 5828 +10104 4 2 709 26 4060 4256 4452 4919 +10105 4 2 709 26 3881 4418 4473 5091 +10106 4 2 709 26 5391 4796 5297 4434 +10107 4 2 709 26 3956 4901 4343 4505 +10108 4 2 709 26 4498 5783 5140 3958 +10109 4 2 709 26 4202 5469 4772 3913 +10110 4 2 709 26 5664 4641 4135 5075 +10111 4 2 709 26 5670 4026 4735 5661 +10112 4 2 709 26 4151 4479 4821 5064 +10113 4 2 709 26 4018 4233 4517 4824 +10114 4 2 709 26 4211 5704 4630 5217 +10115 4 2 709 26 5442 4130 5014 5397 +10116 4 2 709 26 4065 4851 5125 5649 +10117 4 2 709 26 4109 4257 5151 5207 +10118 4 2 709 26 5932 4437 4512 4765 +10119 4 2 709 26 5803 4302 5034 5013 +10120 4 2 709 26 5265 5385 5682 4556 +10121 4 2 709 26 4649 3890 4499 5165 +10122 4 2 709 26 3917 5339 4365 4813 +10123 4 2 709 26 5285 4131 4386 5241 +10124 4 2 709 26 4823 3996 4754 5038 +10125 4 2 709 26 5868 5719 5705 4119 +10126 4 2 709 26 4206 5684 5070 5213 +10127 4 2 709 26 4149 5277 4526 5026 +10128 4 2 709 26 5600 4184 4844 5591 +10129 4 2 709 26 181 5921 4768 5541 +10130 4 2 709 26 4229 5995 4466 4494 +10131 4 2 709 26 4490 4069 4531 5484 +10132 4 2 709 26 5363 3923 4396 5138 +10133 4 2 709 26 5988 4535 4788 4012 +10134 4 2 709 26 4512 4437 4216 4765 +10135 4 2 709 26 5657 5996 5168 5170 +10136 4 2 709 26 5734 6070 876 4989 +10137 4 2 709 26 4419 4920 4033 3964 +10138 4 2 709 26 757 5967 4861 5761 +10139 4 2 709 26 5110 5050 4978 4252 +10140 4 2 709 26 6064 4348 4871 6041 +10141 4 2 709 26 4200 4610 5422 4518 +10142 4 2 709 26 3950 5820 4460 5061 +10143 4 2 709 26 5704 3899 4630 5217 +10144 4 2 709 26 4331 4302 5617 3947 +10145 4 2 709 26 3884 5513 4565 4735 +10146 4 2 709 26 4326 3915 4268 5713 +10147 4 2 709 26 5249 4111 4732 5237 +10148 4 2 709 26 5833 498 5300 5378 +10149 4 2 709 26 4797 5841 4845 4700 +10150 4 2 709 26 272 5945 4475 5891 +10151 4 2 709 26 4261 5151 4791 5191 +10152 4 2 709 26 4195 5239 4834 5036 +10153 4 2 709 26 4008 4190 4917 5562 +10154 4 2 709 26 4281 6067 4402 5501 +10155 4 2 709 26 4490 3911 4884 5306 +10156 4 2 709 26 4337 5679 4422 5009 +10157 4 2 709 26 4229 4883 4494 5895 +10158 4 2 709 26 4432 4155 5333 4194 +10159 4 2 709 26 3990 5711 4355 4751 +10160 4 2 709 26 4344 4152 5352 5367 +10161 4 2 709 26 5789 663 4938 5641 +10162 4 2 709 26 3938 5183 4571 5285 +10163 4 2 709 26 4385 3972 4407 5672 +10164 4 2 709 26 4163 5024 5319 5695 +10165 4 2 709 26 6034 4338 4727 4162 +10166 4 2 709 26 5731 4229 4559 4883 +10167 4 2 709 26 5373 3957 4357 4581 +10168 4 2 709 26 4789 3963 4297 4464 +10169 4 2 709 26 3879 4621 5231 5695 +10170 4 2 709 26 4126 5577 4248 4831 +10171 4 2 709 26 4128 4881 5050 5415 +10172 4 2 709 26 5354 3956 4427 4839 +10173 4 2 709 26 5739 4204 4468 5128 +10174 4 2 709 26 4881 3955 5050 5415 +10175 4 2 709 26 787 5560 4776 5360 +10176 4 2 709 26 4158 3945 4350 5519 +10177 4 2 709 26 4414 4104 4519 4854 +10178 4 2 709 26 5178 3918 4453 4953 +10179 4 2 709 26 4108 5304 4338 5326 +10180 4 2 709 26 5113 3957 4357 4976 +10181 4 2 709 26 3976 5008 4343 4654 +10182 4 2 709 26 4014 5283 4592 3966 +10183 4 2 709 26 5651 4081 4599 4454 +10184 4 2 709 26 6006 4180 5269 3928 +10185 4 2 709 26 5758 4837 3949 4560 +10186 4 2 709 26 4448 5775 3966 5592 +10187 4 2 709 26 5128 3904 4245 4514 +10188 4 2 709 26 4845 4484 4546 4724 +10189 4 2 709 26 5069 495 4683 5502 +10190 4 2 709 26 4187 5574 4953 5043 +10191 4 2 709 26 3976 5354 4427 4839 +10192 4 2 709 26 4079 4320 4920 3982 +10193 4 2 709 26 3879 5033 4199 4096 +10194 4 2 709 26 4005 5361 4464 4733 +10195 4 2 709 26 4114 5887 4688 4940 +10196 4 2 709 26 4224 3910 5299 4527 +10197 4 2 709 26 5781 4892 5313 978 +10198 4 2 709 26 4263 4344 4577 4741 +10199 4 2 709 26 5960 4919 5207 4564 +10200 4 2 709 26 4036 5405 4667 5100 +10201 4 2 709 26 3964 5358 4419 4920 +10202 4 2 709 26 3977 5112 4388 4970 +10203 4 2 709 26 4251 6033 3981 5971 +10204 4 2 709 26 5217 4114 4688 4940 +10205 4 2 709 26 4148 3870 4400 5477 +10206 4 2 709 26 4157 5662 4373 4719 +10207 4 2 709 26 5299 4224 4621 5024 +10208 4 2 709 26 4012 5535 4354 4883 +10209 4 2 709 26 5365 5336 4548 4061 +10210 4 2 709 26 4522 4761 4433 3965 +10211 4 2 709 26 4152 5305 5352 5367 +10212 4 2 709 26 5412 5175 4392 4551 +10213 4 2 709 26 5283 4448 4438 3966 +10214 4 2 709 26 3999 4431 4787 5024 +10215 4 2 709 26 4080 5820 4460 4999 +10216 4 2 709 26 4103 5561 4219 4670 +10217 4 2 709 26 4199 5701 4957 5138 +10218 4 2 709 26 5365 5336 4924 5139 +10219 4 2 709 26 6049 4270 5068 5350 +10220 4 2 709 26 3976 5008 4218 4343 +10221 4 2 709 26 3982 4079 4837 4920 +10222 4 2 709 26 6014 4101 4847 5981 +10223 4 2 709 26 5969 4259 4942 5073 +10224 4 2 709 26 5067 3976 4316 4923 +10225 4 2 709 26 6015 5418 4767 3964 +10226 4 2 709 26 4036 5676 4723 5100 +10227 4 2 709 26 5764 3985 4328 5414 +10228 4 2 709 26 4130 5380 5397 5442 +10229 4 2 709 26 5361 4005 4371 4733 +10230 4 2 709 26 5293 3913 4481 5013 +10231 4 2 709 26 5343 4851 5337 4469 +10232 4 2 709 26 4527 3995 4371 4918 +10233 4 2 709 26 4042 5488 4753 4852 +10234 4 2 709 26 3949 4442 4560 4837 +10235 4 2 709 26 4819 4910 3981 5718 +10236 4 2 709 26 4140 5587 4548 5534 +10237 4 2 709 26 3948 5070 4219 4187 +10238 4 2 709 26 4101 4675 4847 5981 +10239 4 2 709 26 4796 5664 3902 5048 +10240 4 2 709 26 4314 5964 4525 3939 +10241 4 2 709 26 4326 4268 3915 5035 +10242 4 2 709 26 4172 4214 4469 5059 +10243 4 2 709 26 4707 3913 5034 5356 +10244 4 2 709 26 4535 4091 4350 5264 +10245 4 2 709 26 3984 5682 4252 5050 +10246 4 2 709 26 4028 4156 4598 5434 +10247 4 2 709 26 3990 5711 4807 4355 +10248 4 2 709 26 4375 5714 4805 5188 +10249 4 2 709 26 5678 3938 5505 5610 +10250 4 2 709 26 4342 5710 4570 5582 +10251 4 2 709 26 4797 4487 5429 5570 +10252 4 2 709 26 4900 4294 5178 3998 +10253 4 2 709 26 5126 3983 5439 4254 +10254 4 2 709 26 4172 4619 4622 5578 +10255 4 2 709 26 5362 4049 4324 5203 +10256 4 2 709 26 4604 4027 5133 4829 +10257 4 2 709 26 4653 5432 3954 5314 +10258 4 2 709 26 3974 4774 4380 5079 +10259 4 2 709 26 3895 5917 4774 5211 +10260 4 2 709 26 4162 5326 4773 5087 +10261 4 2 709 26 5736 4350 5264 4535 +10262 4 2 709 26 4577 5726 4735 4793 +10263 4 2 709 26 5657 5206 4200 3920 +10264 4 2 709 26 3992 5421 4724 5368 +10265 4 2 709 26 5470 4038 4658 4706 +10266 4 2 709 26 4153 4274 5690 5982 +10267 4 2 709 26 5443 4028 4654 4902 +10268 4 2 709 26 5703 4151 4473 4479 +10269 4 2 709 26 4094 4305 4649 4777 +10270 4 2 709 26 4121 5505 4728 4888 +10271 4 2 709 26 5226 4799 4002 4551 +10272 4 2 709 26 4931 4080 4319 4761 +10273 4 2 709 26 4534 5798 5161 5327 +10274 4 2 709 26 5682 3984 4756 5050 +10275 4 2 709 26 5208 4051 4604 4637 +10276 4 2 709 26 3984 5009 4337 4422 +10277 4 2 709 26 5948 4004 4214 5039 +10278 4 2 709 26 4204 4307 4468 5128 +10279 4 2 709 26 4004 5948 4214 5724 +10280 4 2 709 26 4441 4487 5495 4084 +10281 4 2 709 26 4065 5907 4347 3908 +10282 4 2 709 26 4081 4389 4454 4584 +10283 4 2 709 26 5673 3967 4383 4561 +10284 4 2 709 26 4070 5593 4386 4617 +10285 4 2 709 26 4994 4502 4116 4564 +10286 4 2 709 26 4093 3952 5289 4359 +10287 4 2 709 26 3940 5036 4624 4834 +10288 4 2 709 26 5736 4618 5055 5556 +10289 4 2 709 26 4081 5651 4599 4769 +10290 4 2 709 26 5514 3907 4199 5153 +10291 4 2 709 26 5560 787 4776 5357 +10292 4 2 709 26 4997 4154 5133 5496 +10293 4 2 709 26 4400 3870 5239 5756 +10294 4 2 709 26 6002 4597 4256 5527 +10295 4 2 709 26 4404 5099 4552 4132 +10296 4 2 709 26 5183 4121 4258 4405 +10297 4 2 709 26 5986 4103 4671 4817 +10298 4 2 709 26 5704 4916 4652 5098 +10299 4 2 709 26 4396 3963 4430 4733 +10300 4 2 709 26 4174 5032 5250 5168 +10301 4 2 709 26 4172 4059 4622 4619 +10302 4 2 709 26 3926 5520 4371 5361 +10303 4 2 709 26 5265 5155 4252 3896 +10304 4 2 709 26 4222 5916 4387 5063 +10305 4 2 709 26 5484 3872 4490 4613 +10306 4 2 709 26 5698 4804 4076 4328 +10307 4 2 709 26 6015 3892 4325 4822 +10308 4 2 709 26 3959 4145 5108 5613 +10309 4 2 709 26 4105 4785 4718 4911 +10310 4 2 709 26 4693 4107 4794 5174 +10311 4 2 709 26 4236 4009 4499 4840 +10312 4 2 709 26 4660 4013 4936 4530 +10313 4 2 709 26 4330 3895 4774 5211 +10314 4 2 709 26 4107 4693 4794 5049 +10315 4 2 709 26 3962 5499 4426 4549 +10316 4 2 709 26 4304 5921 5021 4617 +10317 4 2 709 26 5417 4958 4233 5888 +10318 4 2 709 26 5299 4527 4873 5361 +10319 4 2 709 26 4739 4792 4293 5318 +10320 4 2 709 26 4051 5787 4637 4868 +10321 4 2 709 26 4236 5656 4553 5003 +10322 4 2 709 26 4667 4699 5740 5405 +10323 4 2 709 26 4607 4846 5267 3930 +10324 4 2 709 26 4145 3959 5108 5371 +10325 4 2 709 26 4185 3943 4324 5589 +10326 4 2 709 26 5823 4384 5066 3954 +10327 4 2 709 26 4035 5534 4601 5346 +10328 4 2 709 26 5016 3956 4427 5062 +10329 4 2 709 26 4152 4672 3947 5711 +10330 4 2 709 26 6027 3928 5522 5771 +10331 4 2 709 26 5405 4723 4991 5100 +10332 4 2 709 26 4476 5313 5077 4047 +10333 4 2 709 26 6059 502 5825 5450 +10334 4 2 709 26 3943 4324 4445 4973 +10335 4 2 709 26 5359 3880 4326 4610 +10336 4 2 709 26 4919 5884 4256 4452 +10337 4 2 709 26 3981 4910 5103 4058 +10338 4 2 709 26 3928 6009 5522 5771 +10339 4 2 709 26 6043 5885 4471 5089 +10340 4 2 709 26 3924 4761 4455 5615 +10341 4 2 709 26 5950 871 6075 4855 +10342 4 2 709 26 5440 4830 4325 3892 +10343 4 2 709 26 4072 5429 4393 5105 +10344 4 2 709 26 5555 3924 4341 5163 +10345 4 2 709 26 5412 5175 4002 4262 +10346 4 2 709 26 5409 5610 4440 4287 +10347 4 2 709 26 4100 4923 4365 4813 +10348 4 2 709 26 4613 4153 5040 3872 +10349 4 2 709 26 5843 3917 4737 5468 +10350 4 2 709 26 4563 5800 3946 4924 +10351 4 2 709 26 4048 4020 4547 4858 +10352 4 2 709 26 4404 3886 4552 5368 +10353 4 2 709 26 4948 4015 4235 4664 +10354 4 2 709 26 4553 4077 4507 5016 +10355 4 2 709 26 5367 4026 4448 4793 +10356 4 2 709 26 804 5719 5268 5512 +10357 4 2 709 26 5278 4138 4806 5081 +10358 4 2 709 26 4851 3888 4398 5467 +10359 4 2 709 26 4236 4760 4553 5656 +10360 4 2 709 26 4049 4939 4324 5203 +10361 4 2 709 26 3971 4411 4488 4546 +10362 4 2 709 26 3967 4458 5673 4262 +10363 4 2 709 26 5657 5206 4518 4200 +10364 4 2 709 26 5434 4054 4840 5453 +10365 4 2 709 26 4767 5338 5492 4822 +10366 4 2 709 26 5647 4334 4947 3874 +10367 4 2 709 26 5117 4490 4149 4153 +10368 4 2 709 26 5262 4874 4961 4023 +10369 4 2 709 26 5469 4627 4443 5567 +10370 4 2 709 26 5413 3888 4697 4517 +10371 4 2 709 26 5943 3874 5578 4619 +10372 4 2 709 26 5122 4225 4121 3895 +10373 4 2 709 26 5190 4787 5089 4231 +10374 4 2 709 26 3957 4579 4228 4085 +10375 4 2 709 26 4306 5876 4016 3882 +10376 4 2 709 26 5432 5823 5898 3954 +10377 4 2 709 26 4313 4923 5020 4022 +10378 4 2 709 26 3980 4241 4414 4581 +10379 4 2 709 26 5789 4226 4516 4943 +10380 4 2 709 26 5534 3934 4429 5074 +10381 4 2 709 26 4121 4975 4258 4405 +10382 4 2 709 26 3875 4160 4481 5362 +10383 4 2 709 26 3878 5710 4570 5659 +10384 4 2 709 26 4945 4125 4255 4563 +10385 4 2 709 26 4305 3890 4649 4777 +10386 4 2 709 26 4857 3970 4277 4591 +10387 4 2 709 26 4340 5674 5509 5078 +10388 4 2 709 26 4129 3998 4773 5129 +10389 4 2 709 26 5412 5375 4291 5226 +10390 4 2 709 26 4121 3895 4571 5183 +10391 4 2 709 26 4199 5968 4957 5366 +10392 4 2 709 26 5843 4088 4737 4860 +10393 4 2 709 26 4302 5065 5186 3947 +10394 4 2 709 26 4110 5933 4855 5037 +10395 4 2 709 26 4035 4175 4601 5534 +10396 4 2 709 26 5245 4259 4942 5182 +10397 4 2 709 26 5546 4067 5873 3927 +10398 4 2 709 26 5602 4706 4978 5110 +10399 4 2 709 26 4451 3951 4449 5511 +10400 4 2 709 26 5241 4044 4536 5123 +10401 4 2 709 26 4076 5698 4328 4332 +10402 4 2 709 26 4282 5279 4124 5232 +10403 4 2 709 26 5895 4510 3954 4229 +10404 4 2 709 26 4020 3935 5054 5529 +10405 4 2 709 26 5100 4253 4723 4991 +10406 4 2 709 26 5226 4799 4551 4270 +10407 4 2 709 26 4138 5739 4468 5128 +10408 4 2 709 26 5691 5608 4941 4431 +10409 4 2 709 26 4233 4018 4588 5417 +10410 4 2 709 26 3908 4065 4687 4347 +10411 4 2 709 26 4556 3984 4252 5104 +10412 4 2 709 26 4292 5511 4794 5049 +10413 4 2 709 26 4514 4481 5356 5362 +10414 4 2 709 26 643 5479 4776 5357 +10415 4 2 709 26 5657 5996 3920 4200 +10416 4 2 709 26 3876 5767 4352 4906 +10417 4 2 709 26 4186 4773 4270 5238 +10418 4 2 709 26 5684 3897 5070 5213 +10419 4 2 709 26 4148 3951 4804 4367 +10420 4 2 709 26 5023 4101 4675 4538 +10421 4 2 709 26 4513 5586 5330 5243 +10422 4 2 709 26 5138 3923 4396 4889 +10423 4 2 709 26 3957 5821 4554 4519 +10424 4 2 709 26 4563 5800 4924 4356 +10425 4 2 709 26 3954 4115 4510 5181 +10426 4 2 709 26 5086 4133 4490 5624 +10427 4 2 709 26 5032 3904 4273 5506 +10428 4 2 709 26 5657 4062 5170 5168 +10429 4 2 709 26 3970 4399 4897 5454 +10430 4 2 709 26 5992 5676 5335 4036 +10431 4 2 709 26 4443 5232 4282 4124 +10432 4 2 709 26 4376 4829 4525 5490 +10433 4 2 709 26 530 5909 4709 5797 +10434 4 2 709 26 3930 5673 4383 4561 +10435 4 2 709 26 4010 5590 5321 4992 +10436 4 2 709 26 3950 5501 4402 4661 +10437 4 2 709 26 4351 5873 4814 5593 +10438 4 2 709 26 4262 3967 4458 4582 +10439 4 2 709 26 5065 4152 5186 3947 +10440 4 2 709 26 5598 4195 4367 4178 +10441 4 2 709 26 4400 4725 5905 4328 +10442 4 2 709 26 4305 5627 4594 5339 +10443 4 2 709 26 5893 4125 4930 4981 +10444 4 2 709 26 4313 4022 4314 4780 +10445 4 2 709 26 3924 4300 4433 5615 +10446 4 2 709 26 4125 4930 4576 4928 +10447 4 2 709 26 4338 4247 3930 4108 +10448 4 2 709 26 5874 5577 5209 4359 +10449 4 2 709 26 3901 5823 4195 4477 +10450 4 2 709 26 663 5789 4938 5179 +10451 4 2 709 26 4103 5549 4817 5007 +10452 4 2 709 26 5606 3968 4276 5457 +10453 4 2 709 26 3897 5663 4219 5121 +10454 4 2 709 26 3940 4285 4459 5120 +10455 4 2 709 26 4196 5285 4386 5241 +10456 4 2 709 26 5608 4264 4431 4527 +10457 4 2 709 26 4389 4081 4599 5034 +10458 4 2 709 26 4205 3969 5310 5676 +10459 4 2 709 26 5186 5617 4302 3947 +10460 4 2 709 26 3927 5028 5546 4067 +10461 4 2 709 26 4084 4441 4487 5570 +10462 4 2 709 26 4251 4701 5092 5971 +10463 4 2 709 26 4527 3910 4264 4431 +10464 4 2 709 26 3945 5519 4488 4818 +10465 4 2 709 26 4883 4229 4559 5895 +10466 4 2 709 26 3911 4531 4490 4884 +10467 4 2 709 26 4434 5889 5026 5277 +10468 4 2 709 26 5951 4772 5469 3913 +10469 4 2 709 26 3905 4203 5337 5187 +10470 4 2 709 26 4971 5963 5280 5231 +10471 4 2 709 26 3957 6043 4357 4581 +10472 4 2 709 26 5388 4741 3990 5193 +10473 4 2 709 26 3880 5019 4326 4610 +10474 4 2 709 26 4052 5653 4436 5032 +10475 4 2 709 26 5775 4014 4394 3966 +10476 4 2 709 26 3978 4219 4381 5195 +10477 4 2 709 26 592 5804 5015 5377 +10478 4 2 709 26 5759 4007 4300 5279 +10479 4 2 709 26 5330 5724 5948 4004 +10480 4 2 709 26 5371 4145 4857 5108 +10481 4 2 709 26 5075 4207 4536 3927 +10482 4 2 709 26 5368 4404 5088 5258 +10483 4 2 709 26 5756 3870 4462 5476 +10484 4 2 709 26 3968 5416 5317 4378 +10485 4 2 709 26 4206 5549 4646 4968 +10486 4 2 709 26 4878 4148 4364 4367 +10487 4 2 709 26 3894 3969 4445 5335 +10488 4 2 709 26 4196 3986 3938 5183 +10489 4 2 709 26 5414 3985 4804 4412 +10490 4 2 709 26 4028 5067 4654 4902 +10491 4 2 709 26 5243 4690 5271 4087 +10492 4 2 709 26 4174 5657 4200 5168 +10493 4 2 709 26 3954 5051 4229 4653 +10494 4 2 709 26 5684 4103 4219 4670 +10495 4 2 709 26 5704 4211 4630 5472 +10496 4 2 709 26 4051 4372 5212 4135 +10497 4 2 709 26 5346 4582 4035 4906 +10498 4 2 709 26 4109 5328 4791 4933 +10499 4 2 709 26 4429 5534 4548 5587 +10500 4 2 709 26 4049 4307 4965 5128 +10501 4 2 709 26 4263 3990 4848 4751 +10502 4 2 709 26 5054 4497 5529 3935 +10503 4 2 709 26 848 5939 4512 5550 +10504 4 2 709 26 5574 3897 4219 5121 +10505 4 2 709 26 4295 4619 4059 4567 +10506 4 2 709 26 4069 4490 4531 4884 +10507 4 2 709 26 5516 4171 5240 5278 +10508 4 2 709 26 5586 4328 4725 3925 +10509 4 2 709 26 4453 4055 4381 4511 +10510 4 2 709 26 5114 5181 5102 4115 +10511 4 2 709 26 4739 4792 3949 4293 +10512 4 2 709 26 5447 4207 4704 4796 +10513 4 2 709 26 5243 4513 5271 5330 +10514 4 2 709 26 4060 5527 5292 4256 +10515 4 2 709 26 3986 5183 4405 3938 +10516 4 2 709 26 3879 5033 5695 5231 +10517 4 2 709 26 6043 5885 5089 4549 +10518 4 2 709 26 4218 5008 5023 4538 +10519 4 2 709 26 5815 4042 4753 4852 +10520 4 2 709 26 3886 4927 4494 4616 +10521 4 2 709 26 3951 4451 4586 4292 +10522 4 2 709 26 5304 4002 4291 5226 +10523 4 2 709 26 4377 5814 4236 4914 +10524 4 2 709 26 5294 4187 4321 4583 +10525 4 2 709 26 4002 4262 4458 5412 +10526 4 2 709 26 4253 5111 5838 3990 +10527 4 2 709 26 4028 5443 4377 4598 +10528 4 2 709 26 5718 4251 4410 3981 +10529 4 2 709 26 5998 4256 5292 5527 +10530 4 2 709 26 4431 4941 4692 5608 +10531 4 2 709 26 4396 4005 4464 4733 +10532 4 2 709 26 5803 4265 4544 4769 +10533 4 2 709 26 3875 4152 5065 5388 +10534 4 2 709 26 4169 5760 4665 4808 +10535 4 2 709 26 5212 4051 4135 4568 +10536 4 2 709 26 4030 4889 4335 5138 +10537 4 2 709 26 284 5253 6076 4911 +10538 4 2 709 26 3976 4340 5509 5078 +10539 4 2 709 26 5266 3933 4262 4362 +10540 4 2 709 26 4700 3998 5129 5238 +10541 4 2 709 26 3976 5023 4218 5008 +10542 4 2 709 26 4051 5208 4604 4838 +10543 4 2 709 26 4026 4793 4344 4577 +10544 4 2 709 26 4649 4777 5165 5485 +10545 4 2 709 26 3978 5574 4219 5121 +10546 4 2 709 26 5120 5404 4285 4459 +10547 4 2 709 26 4497 4029 5463 4096 +10548 4 2 709 26 4086 5614 4636 4674 +10549 4 2 709 26 4055 3918 4453 5178 +10550 4 2 709 26 4262 3967 4680 5673 +10551 4 2 709 26 3959 4145 4577 5371 +10552 4 2 709 26 5414 3985 4328 4804 +10553 4 2 709 26 3955 5570 4756 5105 +10554 4 2 709 26 4527 3995 4873 5361 +10555 4 2 709 26 4101 5023 4675 5694 +10556 4 2 709 26 5582 4570 5424 4175 +10557 4 2 709 26 4033 4157 4333 5506 +10558 4 2 709 26 4563 5106 4356 3991 +10559 4 2 709 26 4547 4048 4858 5134 +10560 4 2 709 26 4639 5182 5510 4259 +10561 4 2 709 26 5414 4076 4328 4332 +10562 4 2 709 26 5447 4434 5026 5277 +10563 4 2 709 26 4026 5278 4806 5081 +10564 4 2 709 26 3899 5704 4630 5472 +10565 4 2 709 26 5338 3874 4567 4947 +10566 4 2 709 26 3938 5678 4440 5610 +10567 4 2 709 26 4878 4590 4071 4451 +10568 4 2 709 26 5511 4292 4520 5049 +10569 4 2 709 26 3881 5766 4479 4993 +10570 4 2 709 26 4667 4699 4959 5740 +10571 4 2 709 26 3920 5469 4266 5170 +10572 4 2 709 26 5695 4621 5024 5299 +10573 4 2 709 26 5159 4124 4403 4518 +10574 4 2 709 26 4065 4851 4398 5125 +10575 4 2 709 26 6055 4133 4482 4305 +10576 4 2 709 26 5333 4194 4719 4349 +10577 4 2 709 26 5086 3872 4490 5294 +10578 4 2 709 26 3872 5086 4456 4953 +10579 4 2 709 26 4731 4156 5468 5627 +10580 4 2 709 26 4154 5575 5133 5496 +10581 4 2 709 26 3978 6032 4900 5195 +10582 4 2 709 26 4971 5963 5231 5514 +10583 4 2 709 26 4036 4663 4699 4723 +10584 4 2 709 26 4026 5883 4806 5367 +10585 4 2 709 26 4509 4536 4135 4568 +10586 4 2 709 26 4121 4888 4696 4975 +10587 4 2 709 26 4708 4543 5120 3882 +10588 4 2 709 26 4125 4981 4576 4930 +10589 4 2 709 26 5188 3924 4319 5252 +10590 4 2 709 26 4378 3968 4828 5317 +10591 4 2 709 26 4356 4125 4495 4945 +10592 4 2 709 26 6064 3952 4348 6041 +10593 4 2 709 26 4160 5034 5065 4481 +10594 4 2 709 26 5465 4052 4436 5032 +10595 4 2 709 26 4377 4028 4598 4840 +10596 4 2 709 26 5503 5159 5279 4300 +10597 4 2 709 26 4088 5283 4592 4731 +10598 4 2 709 26 4527 4005 4371 5361 +10599 4 2 709 26 3880 5503 5159 5436 +10600 4 2 709 26 5693 4288 4750 4783 +10601 4 2 709 26 5582 5424 4570 4342 +10602 4 2 709 26 5294 5484 3872 4490 +10603 4 2 709 26 5463 3879 4464 4957 +10604 4 2 709 26 5996 4485 5168 5170 +10605 4 2 709 26 4959 5311 4036 4667 +10606 4 2 709 26 3945 5693 4750 4818 +10607 4 2 709 26 4318 4147 4549 4581 +10608 4 2 709 26 3880 5019 4403 4628 +10609 4 2 709 26 4965 6048 5557 4373 +10610 4 2 709 26 5237 4111 4750 4783 +10611 4 2 709 26 4005 4396 4430 4733 +10612 4 2 709 26 3884 4386 4565 4899 +10613 4 2 709 26 5662 4307 4965 4049 +10614 4 2 709 26 4630 6033 3981 5720 +10615 4 2 709 26 5047 4048 4673 5035 +10616 4 2 709 26 5736 4750 4350 4535 +10617 4 2 709 26 4016 4543 4306 3882 +10618 4 2 709 26 5527 4060 4597 4256 +10619 4 2 709 26 4482 4338 4727 6034 +10620 4 2 709 26 3951 5439 4367 4878 +10621 4 2 709 26 4265 4599 5071 5448 +10622 4 2 709 26 3942 5265 4556 5010 +10623 4 2 709 26 4485 6002 4256 5168 +10624 4 2 709 26 4033 4333 4550 5506 +10625 4 2 709 26 4326 4020 3935 5054 +10626 4 2 709 26 3877 4439 4207 4448 +10627 4 2 709 26 5121 3950 4402 4661 +10628 4 2 709 26 4314 3939 4525 5020 +10629 4 2 709 26 3913 4245 5293 5356 +10630 4 2 709 26 3995 4527 4371 5361 +10631 4 2 709 26 5775 4014 3966 5592 +10632 4 2 709 26 4261 4109 4791 5151 +10633 4 2 709 26 4027 4829 4376 5490 +10634 4 2 709 26 3976 4340 5078 4427 +10635 4 2 709 26 5927 3941 4417 4521 +10636 4 2 709 26 3873 5855 4268 4484 +10637 4 2 709 26 5609 5799 4001 5705 +10638 4 2 709 26 3888 4151 4469 4821 +10639 4 2 709 26 4404 5412 5258 5368 +10640 4 2 709 26 5534 4429 4548 5074 +10641 4 2 709 26 5367 5516 5278 4171 +10642 4 2 709 26 4205 5676 4663 4036 +10643 4 2 709 26 4306 4853 4554 4941 +10644 4 2 709 26 4030 5138 4335 4803 +10645 4 2 709 26 5600 4184 4435 4844 +10646 4 2 709 26 4498 4374 5571 5783 +10647 4 2 709 26 5579 4017 4611 4879 +10648 4 2 709 26 4671 4280 4817 5646 +10649 4 2 709 26 4081 4454 4389 4599 +10650 4 2 709 26 4571 4225 3895 4121 +10651 4 2 709 26 4059 3881 4479 4746 +10652 4 2 709 26 4048 5273 5035 5047 +10653 4 2 709 26 4093 3952 4359 5209 +10654 4 2 709 26 3961 4155 4432 5583 +10655 4 2 709 26 3972 5472 4385 4407 +10656 4 2 709 26 4971 5963 5514 4132 +10657 4 2 709 26 3918 6003 5178 4055 +10658 4 2 709 26 4432 4155 4194 5836 +10659 4 2 709 26 4460 5989 4661 5121 +10660 4 2 709 26 5365 3871 4607 5074 +10661 4 2 709 26 4670 5182 4689 4925 +10662 4 2 709 26 5111 4253 4807 3990 +10663 4 2 709 26 5489 4100 4813 4893 +10664 4 2 709 26 5131 4254 5181 4747 +10665 4 2 709 26 4358 5960 4922 5333 +10666 4 2 709 26 4739 4792 4109 3949 +10667 4 2 709 26 4804 4076 5259 4601 +10668 4 2 709 26 4482 4727 4338 4057 +10669 4 2 709 26 4068 5726 4569 4735 +10670 4 2 709 26 6043 3957 4357 5113 +10671 4 2 709 26 4125 4356 4563 4945 +10672 4 2 709 26 4681 4302 5617 4331 +10673 4 2 709 26 5704 4916 4694 4652 +10674 4 2 709 26 4250 5990 4985 4693 +10675 4 2 709 26 4087 5496 4470 4961 +10676 4 2 709 26 3939 6062 4340 4815 +10677 4 2 709 26 4575 5302 5404 4459 +10678 4 2 709 26 4485 5170 4062 5168 +10679 4 2 709 26 5602 4038 4706 5110 +10680 4 2 709 26 4410 3953 3981 5720 +10681 4 2 709 26 4251 6033 4410 3981 +10682 4 2 709 26 4012 4883 4354 5655 +10683 4 2 709 26 5556 4244 4618 5055 +10684 4 2 709 26 4383 3930 4561 4846 +10685 4 2 709 26 5156 4242 4397 5923 +10686 4 2 709 26 3945 5519 4818 4350 +10687 4 2 709 26 3932 5864 4271 4823 +10688 4 2 709 26 3870 4035 4364 4651 +10689 4 2 709 26 5521 253 4515 5224 +10690 4 2 709 26 4823 4083 4271 5160 +10691 4 2 709 26 4509 4814 4179 4067 +10692 4 2 709 26 5469 4627 3920 4266 +10693 4 2 709 26 4205 4331 5310 3969 +10694 4 2 709 26 4190 4900 4402 4661 +10695 4 2 709 26 4404 3933 4651 5152 +10696 4 2 709 26 4124 5771 4403 4518 +10697 4 2 709 26 4230 4530 4932 4936 +10698 4 2 709 26 3968 4966 4378 4828 +10699 4 2 709 26 3925 4391 4631 5536 +10700 4 2 709 26 4083 4823 4754 5160 +10701 4 2 709 26 4087 5496 4798 5243 +10702 4 2 709 26 4237 4524 4447 5303 +10703 4 2 709 26 3968 4828 5317 5606 +10704 4 2 709 26 3958 4413 5130 4290 +10705 4 2 709 26 3887 5494 4601 4825 +10706 4 2 709 26 5265 5155 4249 4102 +10707 4 2 709 26 4526 5447 5026 5277 +10708 4 2 709 26 3904 4245 4965 5128 +10709 4 2 709 26 4819 3981 4910 5103 +10710 4 2 709 26 4298 4764 5018 4704 +10711 4 2 709 26 5240 5362 4481 4514 +10712 4 2 709 26 5693 3945 4488 4818 +10713 4 2 709 26 3909 4700 4270 5350 +10714 4 2 709 26 5217 5551 4050 4688 +10715 4 2 709 26 4067 5459 4351 4523 +10716 4 2 709 26 4323 3928 4566 4337 +10717 4 2 709 26 4530 4660 4932 4936 +10718 4 2 709 26 5860 4209 4929 5530 +10719 4 2 709 26 805 6054 5025 5347 +10720 4 2 709 26 4301 3920 4836 5206 +10721 4 2 709 26 4060 4256 4919 5202 +10722 4 2 709 26 4878 4449 4590 4451 +10723 4 2 709 26 4302 4481 5065 5034 +10724 4 2 709 26 5148 4086 4636 4674 +10725 4 2 709 26 3892 5591 4325 4822 +10726 4 2 709 26 3880 5436 4518 4610 +10727 4 2 709 26 4701 4251 4721 5971 +10728 4 2 709 26 4009 4236 4377 4840 +10729 4 2 709 26 3886 5368 4404 5088 +10730 4 2 709 26 4591 4212 4395 5108 +10731 4 2 709 26 3888 4151 4821 5097 +10732 4 2 709 26 4764 4139 5018 4704 +10733 4 2 709 26 4816 5823 4384 3979 +10734 4 2 709 26 3990 5193 4253 4807 +10735 4 2 709 26 4517 4089 4562 4827 +10736 4 2 709 26 4641 5075 4536 4135 +10737 4 2 709 26 5932 4277 4857 5031 +10738 4 2 709 26 6007 880 5387 5828 +10739 4 2 709 26 4235 3946 4576 5800 +10740 4 2 709 26 4335 5138 4889 5331 +10741 4 2 709 26 4418 3881 4295 4419 +10742 4 2 709 26 4365 5509 5674 5078 +10743 4 2 709 26 3908 4868 4347 4687 +10744 4 2 709 26 4355 5111 4807 3990 +10745 4 2 709 26 4088 5843 4475 4860 +10746 4 2 709 26 3967 4846 4383 4561 +10747 4 2 709 26 5286 3971 4546 4724 +10748 4 2 709 26 5592 4014 3966 5283 +10749 4 2 709 26 4797 5238 4208 5841 +10750 4 2 709 26 3886 4132 4616 5152 +10751 4 2 709 26 5283 4448 3966 5592 +10752 4 2 709 26 4851 4203 5187 5337 +10753 4 2 709 26 4123 4968 4677 4811 +10754 4 2 709 26 694 5462 4854 5169 +10755 4 2 709 26 5335 3943 5037 4389 +10756 4 2 709 26 4412 5806 4804 5414 +10757 4 2 709 26 4273 4062 3904 5168 +10758 4 2 709 26 4228 5876 4471 4085 +10759 4 2 709 26 5138 4335 4803 5331 +10760 4 2 709 26 4244 6060 5055 5556 +10761 4 2 709 26 4152 3947 5065 5388 +10762 4 2 709 26 5309 5243 5586 4087 +10763 4 2 709 26 4174 5657 4518 4200 +10764 4 2 709 26 4168 5503 4245 5293 +10765 4 2 709 26 4082 4787 4306 4941 +10766 4 2 709 26 4860 4022 4336 4737 +10767 4 2 709 26 3999 5024 4224 4431 +10768 4 2 709 26 687 5654 4579 5630 +10769 4 2 709 26 4014 5275 4394 4592 +10770 4 2 709 26 5486 4083 4754 5160 +10771 4 2 709 26 4649 4077 5016 5485 +10772 4 2 709 26 4444 5225 3950 4281 +10773 4 2 709 26 3876 4162 5304 5407 +10774 4 2 709 26 3984 4084 4557 4337 +10775 4 2 709 26 4281 5501 4402 3950 +10776 4 2 709 26 3966 4617 4304 5021 +10777 4 2 709 26 3968 5011 5416 4378 +10778 4 2 709 26 5032 4273 4866 5506 +10779 4 2 709 26 4155 4485 4373 4719 +10780 4 2 709 26 3881 4333 4295 4419 +10781 4 2 709 26 4444 5225 4382 3950 +10782 4 2 709 26 3890 4028 4840 5453 +10783 4 2 709 26 4088 5546 4609 4737 +10784 4 2 709 26 4028 4156 3917 4902 +10785 4 2 709 26 4797 5238 5841 4700 +10786 4 2 709 26 3870 4425 5476 5840 +10787 4 2 709 26 3967 5890 4582 4262 +10788 4 2 709 26 4313 4923 5509 5020 +10789 4 2 709 26 4923 4737 4813 4893 +10790 4 2 709 26 3961 4271 4155 4676 +10791 4 2 709 26 6011 4191 4947 3874 +10792 4 2 709 26 4072 5105 4393 4595 +10793 4 2 709 26 4331 4205 5071 3969 +10794 4 2 709 26 4408 4109 3949 5207 +10795 4 2 709 26 4858 3935 5529 4029 +10796 4 2 709 26 4334 4318 3874 5647 +10797 4 2 709 26 4306 5691 4787 3999 +10798 4 2 709 26 4425 4117 4462 4971 +10799 4 2 709 26 3897 5245 4259 5213 +10800 4 2 709 26 4052 5359 3935 5032 +10801 4 2 709 26 3873 4144 4323 5274 +10802 4 2 709 26 5820 3950 4460 5446 +10803 4 2 709 26 3874 5647 4567 4947 +10804 4 2 709 26 4448 5883 5367 5592 +10805 4 2 709 26 5365 4192 4429 4548 +10806 4 2 709 26 5858 4189 4478 5816 +10807 4 2 709 26 4123 4968 4811 4862 +10808 4 2 709 26 6042 4385 4496 5017 +10809 4 2 709 26 4300 3880 5615 4188 +10810 4 2 709 26 4259 5245 4942 5073 +10811 4 2 709 26 5620 4127 4501 4397 +10812 4 2 709 26 5043 5989 4953 5246 +10813 4 2 709 26 4658 5110 4706 4038 +10814 4 2 709 26 3934 5710 4570 5587 +10815 4 2 709 26 3996 4324 3970 5031 +10816 4 2 709 26 5258 4404 5088 5152 +10817 4 2 709 26 6064 4348 4701 4871 +10818 4 2 709 26 3872 4490 4613 4153 +10819 4 2 709 26 4005 4224 4621 5299 +10820 4 2 709 26 3926 4143 4597 5063 +10821 4 2 709 26 4451 3951 4586 4878 +10822 4 2 709 26 4344 4152 5388 4751 +10823 4 2 709 26 4899 4131 4386 5285 +10824 4 2 709 26 4843 3949 5207 4408 +10825 4 2 709 26 4543 4016 5120 3882 +10826 4 2 709 26 4302 4481 5034 5013 +10827 4 2 709 26 4485 3868 4719 4194 +10828 4 2 709 26 3908 5212 4347 4868 +10829 4 2 709 26 3980 4831 4359 4467 +10830 4 2 709 26 4341 4300 5072 5163 +10831 4 2 709 26 5877 3979 4834 5823 +10832 4 2 709 26 5434 4054 4598 4840 +10833 4 2 709 26 3976 5023 4427 5354 +10834 4 2 709 26 4306 6051 4826 3999 +10835 4 2 709 26 4624 5877 4834 5823 +10836 4 2 709 26 5823 3901 4195 4624 +10837 4 2 709 26 4829 4376 4525 4838 +10838 4 2 709 26 4462 4163 4117 5190 +10839 4 2 709 26 3872 5086 4953 5294 +10840 4 2 709 26 4250 5076 4693 4985 +10841 4 2 709 26 5421 3909 4270 5350 +10842 4 2 709 26 4697 4710 4517 3888 +10843 4 2 709 26 4111 5693 4750 4783 +10844 4 2 709 26 5309 4087 4798 5243 +10845 4 2 709 26 811 4611 5603 5953 +10846 4 2 709 26 4106 5533 4663 4983 +10847 4 2 709 26 4133 5624 4482 4305 +10848 4 2 709 26 5354 3976 4218 4343 +10849 4 2 709 26 5102 4041 4666 5543 +10850 4 2 709 26 6034 4133 4482 5087 +10851 4 2 709 26 4133 5086 4490 5294 +10852 4 2 709 26 4487 3885 4008 4999 +10853 4 2 709 26 4185 4973 3970 4324 +10854 4 2 709 26 766 5752 4633 4745 +10855 4 2 709 26 5294 5484 4490 4531 +10856 4 2 709 26 4386 4196 3938 5285 +10857 4 2 709 26 4041 5102 4880 5543 +10858 4 2 709 26 4404 4552 3886 4132 +10859 4 2 709 26 4064 5527 5463 4184 +10860 4 2 709 26 4214 4172 4632 5497 +10861 4 2 709 26 5223 4218 4675 4905 +10862 4 2 709 26 4513 5243 5271 4087 +10863 4 2 709 26 4185 4973 4324 3943 +10864 4 2 709 26 3884 5222 4786 4899 +10865 4 2 709 26 4617 4070 4569 4735 +10866 4 2 709 26 5104 3984 4441 4557 +10867 4 2 709 26 4055 4511 4453 4583 +10868 4 2 709 26 4406 3870 4651 4035 +10869 4 2 709 26 3876 4162 4338 5304 +10870 4 2 709 26 4300 4007 5159 5279 +10871 4 2 709 26 4577 5613 4145 3959 +10872 4 2 709 26 4249 4102 4409 5265 +10873 4 2 709 26 4704 5664 4139 5018 +10874 4 2 709 26 4896 3975 4345 4815 +10875 4 2 709 26 4196 3895 4974 5487 +10876 4 2 709 26 4179 4067 3958 5668 +10877 4 2 709 26 5246 3872 4953 5043 +10878 4 2 709 26 4191 5822 4357 5472 +10879 4 2 709 26 6059 505 5341 5825 +10880 4 2 709 26 4842 3873 4268 4484 +10881 4 2 709 26 4252 5110 4695 4978 +10882 4 2 709 26 4554 4306 5876 4853 +10883 4 2 709 26 3926 5520 4222 5230 +10884 4 2 709 26 4727 5795 5273 4162 +10885 4 2 709 26 5701 4166 4199 5231 +10886 4 2 709 26 942 6004 5101 5969 +10887 4 2 709 26 3978 4453 4187 4953 +10888 4 2 709 26 4546 4146 4484 4845 +10889 4 2 709 26 4619 4059 4567 4821 +10890 4 2 709 26 5513 4569 4735 4068 +10891 4 2 709 26 5829 5606 4828 4276 +10892 4 2 709 26 4152 3875 4344 5388 +10893 4 2 709 26 5114 5102 4041 4666 +10894 4 2 709 26 3999 4787 4708 4117 +10895 4 2 709 26 4129 5246 4456 4953 +10896 4 2 709 26 4259 5510 4942 5182 +10897 4 2 709 26 3911 4531 4321 4490 +10898 4 2 709 26 5432 5823 3954 5314 +10899 4 2 709 26 3949 4109 4922 5207 +10900 4 2 709 26 3868 4597 5202 4256 +10901 4 2 709 26 5405 4036 4723 5100 +10902 4 2 709 26 4136 3888 4821 5097 +10903 4 2 709 26 5857 4293 4528 4792 +10904 4 2 709 26 3976 5078 4365 5067 +10905 4 2 709 26 3913 5356 4481 5034 +10906 4 2 709 26 4813 4796 4063 4609 +10907 4 2 709 26 4152 4672 5186 3947 +10908 4 2 709 26 4974 5431 3895 4196 +10909 4 2 709 26 4254 4449 3983 5439 +10910 4 2 709 26 5412 5368 3992 5258 +10911 4 2 709 26 4095 4143 4830 5520 +10912 4 2 709 26 4081 5786 4707 5034 +10913 4 2 709 26 5893 3900 4563 4896 +10914 4 2 709 26 4185 3970 4399 4897 +10915 4 2 709 26 5560 4050 4688 4940 +10916 4 2 709 26 4036 5311 4634 4667 +10917 4 2 709 26 3970 4541 4212 5108 +10918 4 2 709 26 5412 5375 5421 5368 +10919 4 2 709 26 4577 4068 4735 5726 +10920 4 2 709 26 4506 4517 4562 4827 +10921 4 2 709 26 3935 4497 5529 4029 +10922 4 2 709 26 4851 4065 4398 5343 +10923 4 2 709 26 4843 5520 4387 5063 +10924 4 2 709 26 4619 3874 5578 5647 +10925 4 2 709 26 4205 4036 4663 5116 +10926 4 2 709 26 5905 3985 4400 4328 +10927 4 2 709 26 3879 4497 4199 4957 +10928 4 2 709 26 3960 4502 5848 4230 +10929 4 2 709 26 5881 5412 4551 5421 +10930 4 2 709 26 5468 4088 4609 4737 +10931 4 2 709 26 4093 5725 4478 4951 +10932 4 2 709 26 5032 3904 5250 5168 +10933 4 2 709 26 3976 4316 4313 5008 +10934 4 2 709 26 5190 5089 4787 3882 +10935 4 2 709 26 5388 4741 5613 4344 +10936 4 2 709 26 4957 5527 4497 4297 +10937 4 2 709 26 4394 3966 4592 5021 +10938 4 2 709 26 5494 5262 4961 4023 +10939 4 2 709 26 4203 4151 4469 4851 +10940 4 2 709 26 3932 5864 4823 5662 +10941 4 2 709 26 3933 5266 4262 4582 +10942 4 2 709 26 3961 4432 4155 5333 +10943 4 2 709 26 6011 4191 4357 5472 +10944 4 2 709 26 4454 4283 3943 5037 +10945 4 2 709 26 5692 4006 4722 4714 +10946 4 2 709 26 4693 5597 4985 5076 +10947 4 2 709 26 4172 4059 4479 5540 +10948 4 2 709 26 5503 4168 4245 5250 +10949 4 2 709 26 4387 5520 5219 5230 +10950 4 2 709 26 3928 4180 5269 5403 +10951 4 2 709 26 3949 4293 4528 5444 +10952 4 2 709 26 5152 3886 4494 4616 +10953 4 2 709 26 4013 5327 4534 5161 +10954 4 2 709 26 3961 5333 4155 4271 +10955 4 2 709 26 5533 4205 4331 5310 +10956 4 2 709 26 5153 5033 4096 4199 +10957 4 2 709 26 5992 4634 5100 4036 +10958 4 2 709 26 4116 4564 4502 5848 +10959 4 2 709 26 3904 4965 4245 4062 +10960 4 2 709 26 4153 4069 4490 4613 +10961 4 2 709 26 372 5785 4608 5637 +10962 4 2 709 26 3992 5715 4392 5258 +10963 4 2 709 26 5788 3959 4397 4741 +10964 4 2 709 26 4767 4213 4910 5103 +10965 4 2 709 26 5798 1001 4892 5320 +10966 4 2 709 26 3925 4601 5309 5698 +10967 4 2 709 26 4125 4356 4495 5800 +10968 4 2 709 26 3999 4787 4306 4708 +10969 4 2 709 26 5788 4397 4720 4741 +10970 4 2 709 26 3954 4401 5126 5181 +10971 4 2 709 26 4448 4026 4735 4793 +10972 4 2 709 26 5503 5013 4300 5279 +10973 4 2 709 26 5375 5002 5368 4291 +10974 4 2 709 26 504 5914 4945 5200 +10975 4 2 709 26 4441 3955 4487 5570 +10976 4 2 709 26 4254 3983 4449 5131 +10977 4 2 709 26 4669 4928 4125 5959 +10978 4 2 709 26 3874 4885 5578 4147 +10979 4 2 709 26 5503 3880 5084 5436 +10980 4 2 709 26 4132 3886 4404 5152 +10981 4 2 709 26 5193 5388 4807 3990 +10982 4 2 709 26 5333 4719 4194 4155 +10983 4 2 709 26 3882 5190 4708 4787 +10984 4 2 709 26 4109 5466 4792 4933 +10985 4 2 709 26 4306 6051 3999 4708 +10986 4 2 709 26 4495 5800 4235 4576 +10987 4 2 709 26 4231 4163 4952 5190 +10988 4 2 709 26 4295 6015 4822 4767 +10989 4 2 709 26 4661 4900 5178 3998 +10990 4 2 709 26 4207 4704 5075 5123 +10991 4 2 709 26 4207 4704 4796 5075 +10992 4 2 709 26 6059 505 4450 5341 +10993 4 2 709 26 5529 4199 5054 5355 +10994 4 2 709 26 5951 5469 4282 3913 +10995 4 2 709 26 3942 5265 4102 4556 +10996 4 2 709 26 4064 5463 4325 4184 +10997 4 2 709 26 4669 4125 4928 4930 +10998 4 2 709 26 579 5959 4928 5735 +10999 4 2 709 26 5764 4328 4332 5414 +11000 4 2 709 26 5837 824 4698 4784 +11001 4 2 709 26 3879 5701 4199 5231 +11002 4 2 709 26 5503 5013 5293 4300 +11003 4 2 709 26 4563 4356 5106 4945 +11004 4 2 709 26 643 5625 4776 5479 +11005 4 2 709 26 4290 3958 4413 4523 +11006 4 2 709 26 4471 4787 5089 3882 +11007 4 2 709 26 4436 4138 4806 5516 +11008 4 2 709 26 5551 349 4776 5360 +11009 4 2 709 26 4277 3996 3970 5031 +11010 4 2 709 26 4929 4113 4782 4870 +11011 4 2 709 26 4187 5294 4453 4583 +11012 4 2 709 26 5152 3886 4404 5088 +11013 4 2 709 26 4263 5775 4848 4394 +11014 4 2 709 26 4818 5265 5155 4249 +11015 4 2 709 26 5017 4169 4665 4808 +11016 4 2 709 26 5238 4186 4773 4946 +11017 4 2 709 26 4433 4007 4375 5445 +11018 4 2 709 26 4156 4731 4424 5627 +11019 4 2 709 26 3971 4845 4546 4724 +11020 4 2 709 26 3889 5614 4674 4636 +11021 4 2 709 26 5684 3897 5213 5245 +11022 4 2 709 26 4005 4224 5299 4527 +11023 4 2 709 26 5702 5825 4969 502 +11024 4 2 709 26 3879 4497 5463 4096 +11025 4 2 709 26 5967 757 4861 5096 +11026 4 2 709 26 5870 5238 4773 4946 +11027 4 2 709 26 4767 5338 4567 4058 +11028 4 2 709 26 4214 4172 4469 4632 +11029 4 2 709 26 3875 4481 5065 5305 +11030 4 2 709 26 5769 4112 4689 4942 +11031 4 2 709 26 4058 4767 4910 5103 +11032 4 2 709 26 4251 4701 4721 5171 +11033 4 2 709 26 4133 6055 4482 5087 +11034 4 2 709 26 3976 4340 4427 5023 +11035 4 2 709 26 5421 4270 4551 5350 +11036 4 2 709 26 4843 3949 6038 5207 +11037 4 2 709 26 4145 3875 4541 5613 +11038 4 2 709 26 5840 5152 4132 4651 +11039 4 2 709 26 4468 4138 5240 5278 +11040 4 2 709 26 4678 5195 4219 5561 +11041 4 2 709 26 3929 4567 4418 5064 +11042 4 2 709 26 4242 3959 4397 5788 +11043 4 2 709 26 4568 4179 4536 4347 +11044 4 2 709 26 4609 3877 5447 4207 +11045 4 2 709 26 4200 6027 4836 5206 +11046 4 2 709 26 5106 4255 4563 4945 +11047 4 2 709 26 4965 6048 4049 5557 +11048 4 2 709 26 5775 5726 4394 4263 +11049 4 2 709 26 5914 504 4945 5106 +11050 4 2 709 26 5876 4471 4575 3882 +11051 4 2 709 26 5924 4048 4727 5795 +11052 4 2 709 26 6013 3972 4407 5113 +11053 4 2 709 26 4541 3970 4857 5108 +11054 4 2 709 26 5815 347 4795 4852 +11055 4 2 709 26 3998 4773 5129 5238 +11056 4 2 709 26 5129 4797 3885 4008 +11057 4 2 709 26 4338 5795 4727 4162 +11058 4 2 709 26 5885 3882 4471 5089 +11059 4 2 709 26 5910 4527 5014 5284 +11060 4 2 709 26 4881 3955 4441 5050 +11061 4 2 709 26 4163 4462 4952 5190 +11062 4 2 709 26 5931 846 4977 5166 +11063 4 2 709 26 4205 5676 4036 5335 +11064 4 2 709 26 5197 5894 4496 5675 +11065 4 2 709 26 5155 4038 4657 4695 +11066 4 2 709 26 4220 6029 4926 355 +11067 4 2 709 26 5598 3983 4367 5439 +11068 4 2 709 26 4419 4418 5566 3964 +11069 4 2 709 26 4046 4474 5280 4644 +11070 4 2 709 26 4058 4191 3981 3953 +11071 4 2 709 26 4147 4025 4885 5578 +11072 4 2 709 26 5333 3961 4432 5146 +11073 4 2 709 26 4721 3952 4348 4701 +11074 4 2 709 26 4047 3920 4301 4627 +11075 4 2 709 26 4707 5951 4081 3913 +11076 4 2 709 26 4193 3991 4924 5423 +11077 4 2 709 26 4295 6015 4767 3964 +11078 4 2 709 26 6015 5418 3892 4767 +11079 4 2 709 26 5160 3932 4271 4823 +11080 4 2 709 26 4077 4649 4499 5165 +11081 4 2 709 26 5999 4128 4978 4998 +11082 4 2 709 26 4857 3970 4591 5108 +11083 4 2 709 26 3920 4047 4301 4836 +11084 4 2 709 26 6031 726 4977 5732 +11085 4 2 709 26 5536 4039 4631 3925 +11086 4 2 709 26 5823 4384 3954 5314 +11087 4 2 709 26 4804 4400 3985 4328 +11088 4 2 709 26 3986 3958 5130 5487 +11089 4 2 709 26 6014 4752 5981 4847 +11090 4 2 709 26 4386 4131 4899 5012 +11091 4 2 709 26 4128 5999 4881 4998 +11092 4 2 709 26 4678 5195 4381 4219 +11093 4 2 709 26 5520 3926 4371 5230 +11094 4 2 709 26 4818 3945 4350 4750 +11095 4 2 709 26 4291 5368 4404 5002 +11096 4 2 709 26 4554 5876 4306 4471 +11097 4 2 709 26 4190 3998 4661 5446 +11098 4 2 709 26 5023 3976 4218 5354 +11099 4 2 709 26 3951 4451 4449 4878 +11100 4 2 709 26 5759 4300 5013 5279 +11101 4 2 709 26 3956 4553 4760 4368 +11102 4 2 709 26 3903 5889 5452 5047 +11103 4 2 709 26 4263 5726 4394 4960 +11104 4 2 709 26 3880 5159 4403 4518 +11105 4 2 709 26 4510 4229 4653 3954 +11106 4 2 709 26 5243 4087 4513 5586 +11107 4 2 709 26 4667 4699 5405 4036 +11108 4 2 709 26 4412 5511 4520 5049 +11109 4 2 709 26 4226 5789 4516 5179 +11110 4 2 709 26 4033 4157 5506 4273 +11111 4 2 709 26 4280 4671 4817 5986 +11112 4 2 709 26 4404 5393 4291 4173 +11113 4 2 709 26 4068 4577 4735 5513 +11114 4 2 709 26 3984 4084 4441 4557 +11115 4 2 709 26 4096 4199 4497 5529 +11116 4 2 709 26 3873 4144 5269 5403 +11117 4 2 709 26 4132 4404 4651 5152 +11118 4 2 709 26 3953 4630 3981 5720 +11119 4 2 709 26 4011 4565 5610 5222 +11120 4 2 709 26 4085 5876 4575 4738 +11121 4 2 709 26 863 5845 5147 5400 +11122 4 2 709 26 4112 5769 5225 5510 +11123 4 2 709 26 5207 4564 5151 3898 +11124 4 2 709 26 3951 5806 4520 4292 +11125 4 2 709 26 5327 4013 4534 4636 +11126 4 2 709 26 5139 3946 4563 4755 +11127 4 2 709 26 5792 4436 4759 5032 +11128 4 2 709 26 4837 3949 4442 4922 +11129 4 2 709 26 4111 5249 4783 5237 +11130 4 2 709 26 4017 4956 4611 4879 +11131 4 2 709 26 4112 5769 4689 4925 +11132 4 2 709 26 5923 216 4949 5747 +11133 4 2 709 26 5999 4441 5050 4881 +11134 4 2 709 26 4294 3998 4917 5068 +11135 4 2 709 26 5878 655 4461 5712 +11136 4 2 709 26 4095 5520 4808 5219 +11137 4 2 709 26 4848 4960 4263 4394 +11138 4 2 709 26 5016 4427 5078 5423 +11139 4 2 709 26 4469 3888 4821 5059 +11140 4 2 709 26 6026 748 4491 5545 +11141 4 2 709 26 4896 3975 4217 4345 +11142 4 2 709 26 5811 4328 4332 5764 +11143 4 2 709 26 4306 5691 3999 4826 +11144 4 2 709 26 5881 5421 5350 4275 +11145 4 2 709 26 3990 5711 4751 5388 +11146 4 2 709 26 5460 4115 4653 5102 +11147 4 2 709 26 5921 4569 5021 4617 +11148 4 2 709 26 6023 422 4816 5727 +11149 4 2 709 26 4011 4201 4457 5222 +11150 4 2 709 26 5177 4230 4932 4936 +11151 4 2 709 26 4570 4175 3925 5424 +11152 4 2 709 26 4922 6038 4837 3949 +11153 4 2 709 26 5280 4132 4425 4616 +11154 4 2 709 26 6048 4083 4823 4939 +11155 4 2 709 26 4132 5280 4425 4971 +11156 4 2 709 26 5104 5050 3984 4252 +11157 4 2 709 26 5197 5894 5675 4934 +11158 4 2 709 26 5165 5015 4055 4555 +11159 4 2 709 26 4813 4609 4737 5468 +11160 4 2 709 26 4026 5367 4806 5278 +11161 4 2 709 26 5885 5839 3882 4702 +11162 4 2 709 26 4193 3991 4563 4924 +11163 4 2 709 26 3942 5265 4409 4102 +11164 4 2 709 26 4162 5273 4727 5047 +11165 4 2 709 26 4148 3870 4364 4367 +11166 4 2 709 26 6011 4191 4630 3981 +11167 4 2 709 26 4113 5517 4682 4782 +11168 4 2 709 26 4797 5238 5129 4208 +11169 4 2 709 26 3956 4553 4368 5016 +11170 4 2 709 26 5577 4359 4500 5209 +11171 4 2 709 26 3947 5310 3969 4807 +11172 4 2 709 26 4714 4006 4722 4863 +11173 4 2 709 26 3892 5492 4679 5095 +11174 4 2 709 26 4100 4923 4813 4893 +11175 4 2 709 26 4445 4160 4389 3969 +11176 4 2 709 26 4130 4396 4430 5014 +11177 4 2 709 26 4273 3868 4719 4485 +11178 4 2 709 26 5434 3911 4640 4966 +11179 4 2 709 26 4110 5335 5116 4036 +11180 4 2 709 26 5516 4032 4526 4806 +11181 4 2 709 26 4023 5494 4825 4961 +11182 4 2 709 26 4050 5217 4688 4940 +11183 4 2 709 26 4194 3868 5202 4256 +11184 4 2 709 26 4675 4101 4847 4538 +11185 4 2 709 26 4049 5362 4245 5203 +11186 4 2 709 26 4074 5263 4437 4748 +11187 4 2 709 26 5284 4005 4527 5014 +11188 4 2 709 26 3925 5698 5586 4328 +11189 4 2 709 26 4212 3970 4324 4541 +11190 4 2 709 26 5103 3981 4712 4819 +11191 4 2 709 26 5311 4110 4736 4855 +11192 4 2 709 26 4096 4435 4740 5463 +11193 4 2 709 26 5280 4644 4927 4046 +11194 4 2 709 26 4095 5733 4808 5520 +11195 4 2 709 26 6036 1009 4802 5420 +11196 4 2 709 26 3913 5034 4481 5013 +11197 4 2 709 26 4120 5158 4850 5137 +11198 4 2 709 26 4286 4534 4602 5569 +11199 4 2 709 26 4077 4649 5165 5485 +11200 4 2 709 26 4005 4224 5014 4621 +11201 4 2 709 26 675 4870 6082 4758 +11202 4 2 709 26 5702 5825 502 5450 +11203 4 2 709 26 4830 4597 3926 4143 +11204 4 2 709 26 4385 5894 4496 5017 +11205 4 2 709 26 692 5830 4928 5141 +11206 4 2 709 26 3972 5472 4407 5113 +11207 4 2 709 26 4083 5937 4754 4939 +11208 4 2 709 26 5704 4916 4104 4694 +11209 4 2 709 26 4033 4550 5221 4273 +11210 4 2 709 26 4468 5031 4541 5362 +11211 4 2 709 26 4007 5897 5445 4522 +11212 4 2 709 26 4174 4200 4518 4610 +11213 4 2 709 26 3889 5148 4636 4674 +11214 4 2 709 26 5405 4036 4699 4723 +11215 4 2 709 26 3957 4085 4228 4471 +11216 4 2 709 26 4108 3930 4338 4561 +11217 4 2 709 26 4667 5405 4991 5100 +11218 4 2 709 26 3926 5361 4371 4733 +11219 4 2 709 26 4419 4295 4418 3964 +11220 4 2 709 26 4702 3962 4426 4549 +11221 4 2 709 26 4256 4060 4597 5202 +11222 4 2 709 26 5412 5175 4262 4392 +11223 4 2 709 26 5952 783 4626 5611 +11224 4 2 709 26 5982 3915 4456 5047 +11225 4 2 709 26 4163 4231 4117 5190 +11226 4 2 709 26 5793 976 4856 5042 +11227 4 2 709 26 5091 4418 5566 5643 +11228 4 2 709 26 4036 4699 4766 4959 +11229 4 2 709 26 3960 4370 4564 4502 +11230 4 2 709 26 5893 4563 4755 4896 +11231 4 2 709 26 3978 5574 4187 4219 +11232 4 2 709 26 3986 4196 3938 5593 +11233 4 2 709 26 394 5639 4647 5176 +11234 4 2 709 26 5769 4112 4942 5510 +11235 4 2 709 26 5440 4830 4143 4325 +11236 4 2 709 26 5897 5834 4522 4007 +11237 4 2 709 26 5815 384 4659 4795 +11238 4 2 709 26 3884 4386 4899 5012 +11239 4 2 709 26 5889 5047 4727 5201 +11240 4 2 709 26 4814 4067 5873 4351 +11241 4 2 709 26 4436 5957 5032 5653 +11242 4 2 709 26 4300 4007 4433 5159 +11243 4 2 709 26 5367 5516 4806 5278 +11244 4 2 709 26 4471 5885 4575 3882 +11245 4 2 709 26 379 5235 6083 4916 +11246 4 2 709 26 4609 3877 5277 5447 +11247 4 2 709 26 4121 4258 3895 5183 +11248 4 2 709 26 5724 4214 4004 5257 +11249 4 2 709 26 5086 4133 4953 5294 +11250 4 2 709 26 4624 5823 4834 4195 +11251 4 2 709 26 3943 5037 4389 4454 +11252 4 2 709 26 3959 5620 4397 5193 +11253 4 2 709 26 4113 5517 4782 4870 +11254 4 2 709 26 5795 4048 4727 5273 +11255 4 2 709 26 3924 5445 4375 5188 +11256 4 2 709 26 3971 4411 4845 5105 +11257 4 2 709 26 4155 4485 4719 4194 +11258 4 2 709 26 5207 5151 4564 4257 +11259 4 2 709 26 4121 3895 4258 5122 +11260 4 2 709 26 834 5545 4615 4904 +11261 4 2 709 26 5503 4895 5084 4300 +11262 4 2 709 26 3946 5139 4563 4924 +11263 4 2 709 26 4411 4146 4845 5105 +11264 4 2 709 26 4435 4550 4740 5463 +11265 4 2 709 26 4806 5447 4526 5883 +11266 4 2 709 26 4297 5998 5527 4497 +11267 4 2 709 26 3901 5260 4195 4624 +11268 4 2 709 26 5128 4245 5362 4514 +11269 4 2 709 26 3884 4763 4899 4786 +11270 4 2 709 26 5889 4727 5047 3903 +11271 4 2 709 26 4185 3970 4973 4399 +11272 4 2 709 26 5895 4510 4401 3954 +11273 4 2 709 26 4115 5432 4653 5102 +11274 4 2 709 26 4028 4901 4377 5443 +11275 4 2 709 26 5195 5663 4925 4402 +11276 4 2 709 26 4186 5880 4270 4773 +11277 4 2 709 26 5654 616 4579 4854 +11278 4 2 709 26 4212 5214 4395 5700 +11279 4 2 709 26 4797 4072 5105 5429 +11280 4 2 709 26 4088 5468 4609 5283 +11281 4 2 709 26 5279 4202 3913 5469 +11282 4 2 709 26 4282 5279 3913 5469 +11283 4 2 709 26 5509 3939 4313 5020 +11284 4 2 709 26 5459 4067 4336 4780 +11285 4 2 709 26 5114 5102 4747 4041 +11286 4 2 709 26 6048 4083 4676 4271 +11287 4 2 709 26 3975 4309 4981 5301 +11288 4 2 709 26 4843 5520 4143 4095 +11289 4 2 709 26 4152 5278 5305 5367 +11290 4 2 709 26 3976 5067 4365 4923 +11291 4 2 709 26 5509 3976 4365 4923 +11292 4 2 709 26 3981 5638 4348 4721 +11293 4 2 709 26 3935 4020 4858 5529 +11294 4 2 709 26 949 5940 4771 5730 +11295 4 2 709 26 6003 5087 3918 4773 +11296 4 2 709 26 4147 4025 4549 5089 +11297 4 2 709 26 4013 5161 4534 4602 +11298 4 2 709 26 4351 4413 3958 4523 +11299 4 2 709 26 498 4339 5378 5833 +11300 4 2 709 26 3876 5795 4338 4162 +11301 4 2 709 26 5958 1026 4695 5475 +11302 4 2 709 26 5888 657 4958 5166 +11303 4 2 709 26 5941 4226 4516 5179 +11304 4 2 709 26 4108 4338 5304 4561 +11305 4 2 709 26 4786 4001 4437 5044 +11306 4 2 709 26 4112 5182 4689 4942 +11307 4 2 709 26 4797 5238 4700 5129 +11308 4 2 709 26 4226 4314 3939 5964 +11309 4 2 709 26 5042 4006 4605 4912 +11310 4 2 709 26 559 4450 4812 6059 +11311 4 2 709 26 3951 5806 4412 4520 +11312 4 2 709 26 343 6060 4875 5176 +11313 4 2 709 26 4414 4519 4579 4854 +11314 4 2 709 26 5661 4044 4735 5012 +11315 4 2 709 26 5745 404 5090 5017 +11316 4 2 709 26 4201 4011 4457 5288 +11317 4 2 709 26 5835 520 4608 5637 +11318 4 2 709 26 5496 4087 4798 4961 +11319 4 2 709 26 3928 6027 5422 5771 +11320 4 2 709 26 5208 4376 4604 4838 +11321 4 2 709 26 5564 890 4557 5104 +11322 4 2 709 26 4300 5503 4895 5293 +11323 4 2 709 26 5870 5129 4129 4773 +11324 4 2 709 26 5252 3924 4319 4761 +11325 4 2 709 26 4701 4126 4721 4500 +11326 4 2 709 26 5911 5892 4874 618 +11327 4 2 709 26 5417 4958 4588 4233 +11328 4 2 709 26 4908 3962 4549 5499 +11329 4 2 709 26 3905 4203 4469 5337 +11330 4 2 709 26 5338 4567 4619 4822 +11331 4 2 709 26 5870 5238 5129 4773 +11332 4 2 709 26 4007 4433 4522 5445 +11333 4 2 709 26 3870 4148 4400 4367 +11334 4 2 709 26 5533 5071 5808 4331 +11335 4 2 709 26 4133 5437 4321 4490 +11336 4 2 709 26 5294 4133 4321 4490 +11337 4 2 709 26 5178 4129 4773 4953 +11338 4 2 709 26 5117 4490 4153 4069 +11339 4 2 709 26 4059 3881 4746 4295 +11340 4 2 709 26 5520 3926 4222 5063 +11341 4 2 709 26 4306 5691 4941 4787 +11342 4 2 709 26 4241 5376 4549 4581 +11343 4 2 709 26 4245 4062 4965 5557 +11344 4 2 709 26 4675 5023 5223 5694 +11345 4 2 709 26 3917 4813 4737 5468 +11346 4 2 709 26 4143 5440 4325 5221 +11347 4 2 709 26 4469 4203 4851 5337 +11348 4 2 709 26 5346 3887 4548 4601 +11349 4 2 709 26 4374 4290 4668 5571 +11350 4 2 709 26 4017 5579 4454 4879 +11351 4 2 709 26 3877 4207 4438 4448 +11352 4 2 709 26 5635 4809 6067 548 +11353 4 2 709 26 4083 6048 4823 4271 +11354 4 2 709 26 4107 4693 5049 5058 +11355 4 2 709 26 4132 4425 5476 4971 +11356 4 2 709 26 5526 4113 4782 4929 +11357 4 2 709 26 4752 4675 5981 4847 +11358 4 2 709 26 3951 4292 4520 5511 +11359 4 2 709 26 4293 3949 4528 4792 +11360 4 2 709 26 3960 5848 4502 4564 +11361 4 2 709 26 4563 5106 5062 4255 +11362 4 2 709 26 4292 5559 4794 5633 +11363 4 2 709 26 5941 4516 4847 5179 +11364 4 2 709 26 5822 4191 4357 3874 +11365 4 2 709 26 4372 4604 5133 4829 +11366 4 2 709 26 4509 4814 4067 3927 +11367 4 2 709 26 4374 4290 5571 5783 +11368 4 2 709 26 5120 5404 4459 4575 +11369 4 2 709 26 4104 4916 4519 5462 +11370 4 2 709 26 4213 4767 4910 5563 +11371 4 2 709 26 5657 5996 4200 5168 +11372 4 2 709 26 5661 4026 4735 4448 +11373 4 2 709 26 4072 4797 4447 5429 +11374 4 2 709 26 5469 4627 5920 4443 +11375 4 2 709 26 301 5910 5014 5284 +11376 4 2 709 26 5839 3882 4702 5190 +11377 4 2 709 26 4401 4510 5181 3954 +11378 4 2 709 26 4598 5434 4840 4028 +11379 4 2 709 26 5174 4693 4717 4775 +11380 4 2 709 26 4273 5032 4866 5168 +11381 4 2 709 26 4684 6032 5195 4900 +11382 4 2 709 26 3888 4136 4821 5059 +11383 4 2 709 26 3986 3958 4413 5130 +11384 4 2 709 26 3954 5051 4653 4384 +11385 4 2 709 26 4007 5834 4522 4433 +11386 4 2 709 26 4748 4744 5025 4001 +11387 4 2 709 26 3888 5343 4398 4951 +11388 4 2 709 26 952 4611 5579 5603 +11389 4 2 709 26 5721 834 4615 4904 +11390 4 2 709 26 4041 5807 4693 4717 +11391 4 2 709 26 4064 5463 4550 4325 +11392 4 2 709 26 4405 5812 4820 3938 +11393 4 2 709 26 6035 5568 789 5057 +11394 4 2 709 26 4006 5692 4183 4714 +11395 4 2 709 26 4813 4238 4609 5468 +11396 4 2 709 26 323 5847 4540 5790 +11397 4 2 709 26 6048 4823 4271 5864 +11398 4 2 709 26 4153 5047 5086 5452 +11399 4 2 709 26 4323 4144 5403 3928 +11400 4 2 709 26 4162 3876 5273 5407 +11401 4 2 709 26 3931 4751 4344 4793 +11402 4 2 709 26 3976 5509 4365 5078 +11403 4 2 709 26 5230 3926 4371 4733 +11404 4 2 709 26 5389 4017 4454 4879 +11405 4 2 709 26 5209 3952 4359 4500 +11406 4 2 709 26 4474 4296 5280 4644 +11407 4 2 709 26 4184 5600 4325 5591 +11408 4 2 709 26 4087 5309 4798 4961 +11409 4 2 709 26 5280 4927 4644 4296 +11410 4 2 709 26 5627 4305 3917 5339 +11411 4 2 709 26 5807 4041 4693 5076 +11412 4 2 709 26 4028 4094 5067 3917 +11413 4 2 709 26 4041 5597 4693 5076 +11414 4 2 709 26 4144 3873 4323 5403 +11415 4 2 709 26 4918 3995 4264 4527 +11416 4 2 709 26 5914 460 4962 5200 +11417 4 2 709 26 4464 5527 4184 5463 +11418 4 2 709 26 5260 4195 4624 5036 +11419 4 2 709 26 4049 5557 4245 4965 +11420 4 2 709 26 891 5782 4802 5101 +11421 4 2 709 26 3884 4577 4504 5513 +11422 4 2 709 26 6065 5627 4424 4731 +11423 4 2 709 26 4102 5155 4657 4695 +11424 4 2 709 26 4527 4224 4431 5558 +11425 4 2 709 26 5873 4617 4814 5593 +11426 4 2 709 26 3961 4416 5333 4271 +11427 4 2 709 26 5534 4548 4601 5346 +11428 4 2 709 26 5977 439 5466 5622 +11429 4 2 709 26 4011 5610 4201 5222 +11430 4 2 709 26 4154 4604 5575 5787 +11431 4 2 709 26 5285 5762 4571 3938 +11432 4 2 709 26 4026 5670 4577 4145 +11433 4 2 709 26 5587 4140 4570 5534 +11434 4 2 709 26 4577 5613 4741 4344 +11435 4 2 709 26 379 5625 6083 5235 +11436 4 2 709 26 5704 4916 5098 4104 +11437 4 2 709 26 4152 4344 5278 5367 +11438 4 2 709 26 5393 3933 4458 4582 +11439 4 2 709 26 4006 4714 4183 4863 +11440 4 2 709 26 4527 3995 4264 4873 +11441 4 2 709 26 5374 705 4558 5302 +11442 4 2 709 26 824 5461 4698 4784 +11443 4 2 709 26 4063 4796 5075 4609 +11444 4 2 709 26 3998 4294 5178 4773 +11445 4 2 709 26 5016 3991 5062 4427 +11446 4 2 709 26 3961 5333 4416 5146 +11447 4 2 709 26 3931 5592 5775 4448 +11448 4 2 709 26 4396 4005 4430 5014 +11449 4 2 709 26 5036 4195 4624 4834 +11450 4 2 709 26 4767 4098 4910 5563 +11451 4 2 709 26 4117 6051 5196 3979 +11452 4 2 709 26 4059 4172 4821 4619 +11453 4 2 709 26 3995 5520 4808 5733 +11454 4 2 709 26 4145 4026 5081 5278 +11455 4 2 709 26 5503 4245 4772 5250 +11456 4 2 709 26 4105 5530 4668 5253 +11457 4 2 709 26 4284 4906 4762 5346 +11458 4 2 709 26 4313 3939 4314 5020 +11459 4 2 709 26 5446 3950 4460 4661 +11460 4 2 709 26 5202 5884 4256 4919 +11461 4 2 709 26 4205 5533 4331 5071 +11462 4 2 709 26 4215 5121 4460 5061 +11463 4 2 709 26 5273 4048 4727 5047 +11464 4 2 709 26 4072 5105 4595 4845 +11465 4 2 709 26 5795 3876 5273 4162 +11466 4 2 709 26 4074 5222 4748 4786 +11467 4 2 709 26 4679 4098 4615 4910 +11468 4 2 709 26 5067 4028 4654 4839 +11469 4 2 709 26 4238 4731 5283 5468 +11470 4 2 709 26 4386 3884 4735 5012 +11471 4 2 709 26 5312 3958 4374 5093 +11472 4 2 709 26 4814 5873 4067 3927 +11473 4 2 709 26 4263 5775 4793 4751 +11474 4 2 709 26 4445 3969 4389 5335 +11475 4 2 709 26 5775 3931 4448 4793 +11476 4 2 709 26 4133 4453 4583 3918 +11477 4 2 709 26 4276 5829 4424 4640 +11478 4 2 709 26 4344 4263 4793 4751 +11479 4 2 709 26 4522 4761 4931 4319 +11480 4 2 709 26 5019 3880 4518 4610 +11481 4 2 709 26 4923 3917 4365 4813 +11482 4 2 709 26 5670 4026 4577 4735 +11483 4 2 709 26 5067 4649 4839 5078 +11484 4 2 709 26 3932 5464 5160 4271 +11485 4 2 709 26 3924 5188 5163 5555 +11486 4 2 709 26 4188 4300 5082 5615 +11487 4 2 709 26 4563 5062 5106 3991 +11488 4 2 709 26 5185 4860 4336 4088 +11489 4 2 709 26 4188 3880 5084 4300 +11490 4 2 709 26 3981 4910 4058 4410 +11491 4 2 709 26 4695 5602 4978 5110 +11492 4 2 709 26 4138 4806 5401 4436 +11493 4 2 709 26 5158 4120 4493 5137 +11494 4 2 709 26 5031 3970 4277 4857 +11495 4 2 709 26 4311 4063 5048 5489 +11496 4 2 709 26 4044 3927 4438 4617 +11497 4 2 709 26 4295 5064 4418 4567 +11498 4 2 709 26 5721 814 4955 5164 +11499 4 2 709 26 5265 5155 4102 4252 +11500 4 2 709 26 5202 5884 4194 4256 +11501 4 2 709 26 4806 4937 5401 4436 +11502 4 2 709 26 393 6023 4642 4303 +11503 4 2 709 26 5330 5724 4004 5243 +11504 4 2 709 26 5706 4041 4747 4880 +11505 4 2 709 26 399 5790 4841 5628 +11506 4 2 709 26 3878 4570 4631 5659 +11507 4 2 709 26 4355 4751 4848 3990 +11508 4 2 709 26 3962 5885 4558 4908 +11509 4 2 709 26 4499 4077 5016 4649 +11510 4 2 709 26 4434 4298 5391 4704 +11511 4 2 709 26 5574 4953 3978 4187 +11512 4 2 709 26 4140 5534 4548 4601 +11513 4 2 709 26 4153 3872 4490 5086 +11514 4 2 709 26 5559 4292 4794 5049 +11515 4 2 709 26 5067 4649 4028 4839 +11516 4 2 709 26 4567 4619 4821 5647 +11517 4 2 709 26 5412 5368 5421 3992 +11518 4 2 709 26 561 5846 4572 5480 +11519 4 2 709 26 3984 4084 4756 4441 +11520 4 2 709 26 5775 3931 4793 4751 +11521 4 2 709 26 5362 4324 5031 4541 +11522 4 2 709 26 5139 4193 4563 4924 +11523 4 2 709 26 4431 4787 4941 5691 +11524 4 2 709 26 5182 4112 4689 4925 +11525 4 2 709 26 3934 5587 4570 5534 +11526 4 2 709 26 4242 4501 4397 5620 +11527 4 2 709 26 6067 4612 4190 5501 +11528 4 2 709 26 5574 3978 4953 5989 +11529 4 2 709 26 4550 4033 5506 4273 +11530 4 2 709 26 4935 4696 4121 4888 +11531 4 2 709 26 3924 5445 4433 4375 +11532 4 2 709 26 5569 4013 4534 4602 +11533 4 2 709 26 4990 5698 4087 4332 +11534 4 2 709 26 4039 5424 4631 3925 +11535 4 2 709 26 4719 3932 4349 4920 +11536 4 2 709 26 4840 5434 5453 4028 +11537 4 2 709 26 3924 5188 5555 5729 +11538 4 2 709 26 4144 5269 5403 3928 +11539 4 2 709 26 6010 5100 4667 4991 +11540 4 2 709 26 3932 4271 5333 3982 +11541 4 2 709 26 4708 5190 4117 4787 +11542 4 2 709 26 345 4941 4692 5859 +11543 4 2 709 26 4436 5957 4759 5032 +11544 4 2 709 26 5062 4563 4427 3991 +11545 4 2 709 26 5415 3955 4411 5105 +11546 4 2 709 26 3982 4349 3932 4920 +11547 4 2 709 26 4973 3970 4212 5214 +11548 4 2 709 26 5937 4185 4754 4939 +11549 4 2 709 26 5661 4044 4439 4448 +11550 4 2 709 26 4619 3874 4567 5338 +11551 4 2 709 26 5231 4199 5514 4166 +11552 4 2 709 26 4172 4059 4821 4479 +11553 4 2 709 26 5992 4110 4973 5214 +11554 4 2 709 26 5335 4205 5116 4036 +11555 4 2 709 26 4063 4311 4813 5489 +11556 4 2 709 26 3952 6064 4348 4701 +11557 4 2 709 26 4563 5800 4125 3946 +11558 4 2 709 26 3945 4350 4535 4788 +11559 4 2 709 26 5971 4251 4721 3981 +11560 4 2 709 26 4342 4570 4631 5424 +11561 4 2 709 26 3959 4242 4397 5620 +11562 4 2 709 26 3904 5032 4273 5168 +11563 4 2 709 26 4697 4851 5307 5467 +11564 4 2 709 26 4088 4860 4336 4737 +11565 4 2 709 26 4033 4157 4719 4419 +11566 4 2 709 26 816 6026 4662 5096 +11567 4 2 709 26 4679 5492 4058 4191 +11568 4 2 709 26 3918 4055 4583 5165 +11569 4 2 709 26 4804 3985 4400 4367 +11570 4 2 709 26 4957 5527 5463 4497 +11571 4 2 709 26 4787 4082 4431 4941 +11572 4 2 709 26 5968 4199 4770 5366 +11573 4 2 709 26 5139 5494 4192 4548 +11574 4 2 709 26 3968 4531 4276 5457 +11575 4 2 709 26 4806 4032 4937 4436 +11576 4 2 709 26 5698 4087 4961 5309 +11577 4 2 709 26 4386 3884 4565 4735 +11578 4 2 709 26 5171 3981 4348 4721 +11579 4 2 709 26 5366 4199 4497 4957 +11580 4 2 709 26 4386 4196 4814 5593 +11581 4 2 709 26 4591 4212 5108 3970 +11582 4 2 709 26 4190 4900 4661 3998 +11583 4 2 709 26 3953 4679 4058 4191 +11584 4 2 709 26 4224 3910 4527 4431 +11585 4 2 709 26 4226 4314 5204 3939 +11586 4 2 709 26 4196 4386 3938 5593 +11587 4 2 709 26 5243 4004 4690 5754 +11588 4 2 709 26 4531 3968 4276 4966 +11589 4 2 709 26 5881 5412 4392 4551 +11590 4 2 709 26 3959 5193 4397 4741 +11591 4 2 709 26 4609 4207 4796 5075 +11592 4 2 709 26 4199 5355 4770 5054 +11593 4 2 709 26 5758 5780 4387 4095 +11594 4 2 709 26 4384 5314 4653 3954 +11595 4 2 709 26 833 5965 4887 5644 +11596 4 2 709 26 4965 6048 4373 5662 +11597 4 2 709 26 4524 4447 5429 4237 +11598 4 2 709 26 3953 4191 4327 4679 +11599 4 2 709 26 4327 5492 4679 4191 +11600 4 2 709 26 6046 218 5601 4605 +11601 4 2 709 26 3882 5885 4702 5089 +11602 4 2 709 26 5857 369 4589 5631 +11603 4 2 709 26 4499 4236 4553 5003 +11604 4 2 709 26 3966 4448 4438 4617 +11605 4 2 709 26 3888 4851 4697 5467 +11606 4 2 709 26 4044 4386 4735 5012 +11607 4 2 709 26 5961 4355 4848 3990 +11608 4 2 709 26 4315 5744 4487 4999 +11609 4 2 709 26 4038 5602 4695 5110 +11610 4 2 709 26 4606 4287 4201 5610 +11611 4 2 709 26 5664 4641 5075 4139 +11612 4 2 709 26 4032 4436 4806 5516 +11613 4 2 709 26 5593 3986 4820 3938 +11614 4 2 709 26 4328 3925 4400 4725 +11615 4 2 709 26 240 5923 4810 5747 +11616 4 2 709 26 3870 4195 4178 4367 +11617 4 2 709 26 4156 5434 4424 4640 +11618 4 2 709 26 3928 5741 4403 5422 +11619 4 2 709 26 6022 494 5080 4864 +11620 4 2 709 26 4768 6050 5433 239 +11621 4 2 709 26 3881 4418 5091 5643 +11622 4 2 709 26 3905 4172 4479 5540 +11623 4 2 709 26 4067 5140 4950 4992 +11624 4 2 709 26 4218 5023 4675 4538 +11625 4 2 709 26 763 4289 5618 4682 +11626 4 2 709 26 4570 4342 4631 5659 +11627 4 2 709 26 5806 3951 4412 4804 +11628 4 2 709 26 4435 4550 3937 4740 +11629 4 2 709 26 4224 5910 4527 5014 +11630 4 2 709 26 5847 399 5628 5790 +11631 4 2 709 26 4049 4468 5128 5362 +11632 4 2 709 26 5405 5734 4667 4991 +11633 4 2 709 26 4468 4138 4514 5240 +11634 4 2 709 26 749 5993 4562 4827 +11635 4 2 709 26 4851 4151 4697 5307 +11636 4 2 709 26 4991 5734 4667 6010 +11637 4 2 709 26 5218 4173 4352 4906 +11638 4 2 709 26 6063 5568 789 6035 +11639 4 2 709 26 5803 4265 4769 5034 +11640 4 2 709 26 3892 5492 4822 4767 +11641 4 2 709 26 5838 5961 154 5576 +11642 4 2 709 26 6037 223 5616 4287 +11643 4 2 709 26 4985 5298 5260 4122 +11644 4 2 709 26 3881 4333 4746 4295 +11645 4 2 709 26 6029 313 4666 4926 +11646 4 2 709 26 4085 5885 4549 4908 +11647 4 2 709 26 4806 4526 5447 4032 +11648 4 2 709 26 4681 4302 4331 4265 +11649 4 2 709 26 4403 5737 4433 4628 +11650 4 2 709 26 754 5568 4656 4935 +11651 4 2 709 26 363 5770 4430 5426 +11652 4 2 709 26 5762 4287 4728 5505 +11653 4 2 709 26 4072 4700 4797 4845 +11654 4 2 709 26 5639 309 4660 5384 +11655 4 2 709 26 4169 5132 4679 5095 +11656 4 2 709 26 4026 4793 4577 4735 +11657 4 2 709 26 4029 4740 5463 4096 +11658 4 2 709 26 5904 3983 4362 4903 +11659 4 2 709 26 4341 4188 4300 5082 +11660 4 2 709 26 3992 5715 4886 4392 +11661 4 2 709 26 4088 5546 4438 4609 +11662 4 2 709 26 4548 4192 5139 5365 +11663 4 2 709 26 4156 5434 3917 5627 +11664 4 2 709 26 4324 4185 4939 3996 +11665 4 2 709 26 3909 5421 4275 5350 +11666 4 2 709 26 4219 5684 4670 5182 +11667 4 2 709 26 4238 6065 5283 4731 +11668 4 2 709 26 4152 4672 4751 5352 +11669 4 2 709 26 4563 5800 4356 4125 +11670 4 2 709 26 4418 4419 5566 5643 +11671 4 2 709 26 4163 5695 5033 5231 +11672 4 2 709 26 3875 4152 5278 5305 +11673 4 2 709 26 3924 5445 5188 4319 +11674 4 2 709 26 5762 4201 5610 4899 +11675 4 2 709 26 4207 4609 3927 5075 +11676 4 2 709 26 6003 4294 4423 4773 +11677 4 2 709 26 5509 3939 4340 5023 +11678 4 2 709 26 3882 5089 4702 5190 +11679 4 2 709 26 3874 4619 4567 5647 +11680 4 2 709 26 5685 3881 4479 4993 +11681 4 2 709 26 3956 5078 4427 4839 +11682 4 2 709 26 4667 4699 4036 4959 +11683 4 2 709 26 5578 4172 5395 5497 +11684 4 2 709 26 4843 5520 5063 4143 +11685 4 2 709 26 439 5622 4659 5466 +11686 4 2 709 26 3870 5756 4462 5239 +11687 4 2 709 26 5023 4218 5223 5354 +11688 4 2 709 26 4143 3926 4830 5520 +11689 4 2 709 26 4163 5728 4621 5231 +11690 4 2 709 26 4241 5499 4549 5376 +11691 4 2 709 26 4577 3884 4735 5513 +11692 4 2 709 26 4287 5762 4201 5610 +11693 4 2 709 26 4957 5527 4464 5463 +11694 4 2 709 26 4896 3939 4340 4815 +11695 4 2 709 26 5751 4361 4835 5112 +11696 4 2 709 26 4442 3949 4739 4922 +11697 4 2 709 26 5139 5494 4548 4532 +11698 4 2 709 26 3932 5464 3982 4614 +11699 4 2 709 26 4110 5214 4736 4973 +11700 4 2 709 26 5412 5375 5368 4291 +11701 4 2 709 26 4641 4135 4536 4347 +11702 4 2 709 26 3996 4324 4049 4939 +11703 4 2 709 26 3966 4448 4735 4793 +11704 4 2 709 26 5367 5516 4526 4806 +11705 4 2 709 26 5990 4250 4412 4693 +11706 4 2 709 26 167 5829 4640 5398 +11707 4 2 709 26 1032 5983 5495 4623 +11708 4 2 709 26 4609 4063 3927 5075 +11709 4 2 709 26 5481 4454 4879 5389 +11710 4 2 709 26 4191 3953 4630 3981 +11711 4 2 709 26 4672 4152 4751 5711 +11712 4 2 709 26 5613 5388 4344 3875 +11713 4 2 709 26 4324 3875 5362 4160 +11714 4 2 709 26 4218 205 4905 5753 +11715 4 2 709 26 4238 4731 5468 5627 +11716 4 2 709 26 4055 4555 4511 5345 +11717 4 2 709 26 6012 608 4461 4637 +11718 4 2 709 26 4175 5582 4570 5534 +11719 4 2 709 26 216 5923 4949 5156 +11720 4 2 709 26 3931 5592 4448 5367 +11721 4 2 709 26 5494 4140 4548 4601 +11722 4 2 709 26 4836 3920 4200 5206 +11723 4 2 709 26 4487 4008 3885 4797 +11724 4 2 709 26 5959 574 4495 4945 +11725 4 2 709 26 3931 5367 4448 4793 +11726 4 2 709 26 4055 4511 4583 5345 +11727 4 2 709 26 4987 4093 4478 4951 +11728 4 2 709 26 5812 4070 4820 3938 +11729 4 2 709 26 4172 4619 5578 5647 +11730 4 2 709 26 3947 3969 4302 5065 +11731 4 2 709 26 3996 4049 4324 5031 +11732 4 2 709 26 5105 3955 4411 4756 +11733 4 2 709 26 5098 441 4652 5827 +11734 4 2 709 26 4143 5221 4325 4597 +11735 4 2 709 26 4230 4502 4638 5177 +11736 4 2 709 26 745 5718 4819 5171 +11737 4 2 709 26 4154 4604 5133 5575 +11738 4 2 709 26 4418 3881 4419 5643 +11739 4 2 709 26 3957 4579 4519 4228 +11740 4 2 709 26 4063 4796 4311 5048 +11741 4 2 709 26 5726 3966 4735 4793 +11742 4 2 709 26 5710 3934 4570 5582 +11743 4 2 709 26 3966 4014 4394 4592 +11744 4 2 709 26 5283 4088 4438 4609 +11745 4 2 709 26 4088 4304 4438 5546 +11746 4 2 709 26 4070 5593 4820 3938 +11747 4 2 709 26 4857 4145 5371 4786 +11748 4 2 709 26 4109 5328 4739 4922 +11749 4 2 709 26 5019 3880 4403 4518 +11750 4 2 709 26 489 5323 4559 5228 +11751 4 2 709 26 4041 5102 4747 4880 +11752 4 2 709 26 4532 4548 5139 5336 +11753 4 2 709 26 4104 5886 4519 5098 +11754 4 2 709 26 5418 4098 4679 4767 +11755 4 2 709 26 4397 4127 4989 4991 +11756 4 2 709 26 4132 3886 4616 4927 +11757 4 2 709 26 3955 5415 4411 5050 +11758 4 2 709 26 315 6060 4869 5556 +11759 4 2 709 26 5881 3992 4886 4392 +11760 4 2 709 26 3913 4081 4707 5034 +11761 4 2 709 26 4617 3966 4569 5021 +11762 4 2 709 26 4274 5889 5201 5047 +11763 4 2 709 26 217 5997 5590 5634 +11764 4 2 709 26 4769 5803 5034 3913 +11765 4 2 709 26 5798 977 4534 5161 +11766 4 2 709 26 4125 4576 5800 4495 +11767 4 2 709 26 4132 5476 4425 5840 +11768 4 2 709 26 3986 4351 4413 3958 +11769 4 2 709 26 5365 5336 5139 4548 +11770 4 2 709 26 4132 4616 5280 4927 +11771 4 2 709 26 4852 933 4784 5488 +11772 4 2 709 26 4044 4207 4439 4448 +11773 4 2 709 26 5811 670 4574 5764 +11774 4 2 709 26 5941 171 4538 5204 +11775 4 2 709 26 5511 3951 4412 4520 +11776 4 2 709 26 5530 4105 4911 5253 +11777 4 2 709 26 4207 4044 4536 3927 +11778 4 2 709 26 4085 5632 4558 4908 +11779 4 2 709 26 5112 3977 4361 4835 +11780 4 2 709 26 3911 4966 4276 4640 +11781 4 2 709 26 4900 4190 4917 3998 +11782 4 2 709 26 5758 5780 4528 4387 +11783 4 2 709 26 6023 393 5727 4303 +11784 4 2 709 26 5261 4001 4763 5044 +11785 4 2 709 26 5698 4804 4601 4076 +11786 4 2 709 26 4125 5800 4576 3946 +11787 4 2 709 26 4553 4499 5003 5750 +11788 4 2 709 26 5412 3992 4392 5258 +11789 4 2 709 26 4139 4641 5075 5123 +11790 4 2 709 26 5844 615 4691 5526 +11791 4 2 709 26 4156 5627 4424 5434 +11792 4 2 709 26 5963 5280 4927 4132 +11793 4 2 709 26 3888 4851 4151 4697 +11794 4 2 709 26 3956 4499 5016 4649 +11795 4 2 709 26 4117 6051 3979 4708 +11796 4 2 709 26 3886 5963 4927 4132 +11797 4 2 709 26 3887 5494 4548 4601 +11798 4 2 709 26 5950 4110 4855 5116 +11799 4 2 709 26 4029 4740 4550 5463 +11800 4 2 709 26 4681 5808 951 5448 +11801 4 2 709 26 4739 5109 4442 4922 +11802 4 2 709 26 4318 5647 5395 5578 +11803 4 2 709 26 5328 4109 4739 4933 +11804 4 2 709 26 4813 3917 4238 5468 +11805 4 2 709 26 5023 4896 4427 3900 +11806 4 2 709 26 5747 240 4620 4810 +11807 4 2 709 26 4750 3945 4350 4535 +11808 4 2 709 26 6069 493 4880 5706 +11809 4 2 709 26 3933 4262 4458 4582 +11810 4 2 709 26 4813 4796 4311 4063 +11811 4 2 709 26 4502 4230 4638 5848 +11812 4 2 709 26 5273 4162 4946 5047 +11813 4 2 709 26 6015 3892 4822 4767 +11814 4 2 709 26 5452 4274 5047 5889 +11815 4 2 709 26 806 4614 5483 5922 +11816 4 2 709 26 4339 523 5015 5236 +11817 4 2 709 26 4044 4207 4536 5123 +11818 4 2 709 26 5513 4569 4070 4735 +11819 4 2 709 26 964 5950 4766 4959 +11820 4 2 709 26 4297 4497 4957 5366 +11821 4 2 709 26 3949 4109 4739 4922 +11822 4 2 709 26 4160 3875 4445 4324 +11823 4 2 709 26 5600 3937 4435 4325 +11824 4 2 709 26 4163 5728 4117 5024 +11825 4 2 709 26 4005 4224 4527 5014 +11826 4 2 709 26 4693 4250 4412 5058 +11827 4 2 709 26 5819 4679 5132 5418 +11828 4 2 709 26 5238 5068 4700 3998 +11829 4 2 709 26 6003 4294 4055 5531 +11830 4 2 709 26 3879 4497 4096 4199 +11831 4 2 709 26 761 5931 4701 4871 +11832 4 2 709 26 5998 4297 4645 4497 +11833 4 2 709 26 3917 5843 4737 4923 +11834 4 2 709 26 3889 5292 4200 5180 +11835 4 2 709 26 4053 5293 4300 4895 +11836 4 2 709 26 5959 574 4945 5200 +11837 4 2 709 26 5045 4645 4200 3889 +11838 4 2 709 26 4186 4162 4773 4946 +11839 4 2 709 26 3881 4479 4746 5685 +11840 4 2 709 26 800 5517 4682 5324 +11841 4 2 709 26 4070 5513 4735 4565 +11842 4 2 709 26 6007 4261 4416 5109 +11843 4 2 709 26 5292 3889 4200 4645 +11844 4 2 709 26 4117 4425 4462 5239 +11845 4 2 709 26 4252 5155 4695 5110 +11846 4 2 709 26 5728 3999 4117 5024 +11847 4 2 709 26 3969 4205 5335 5676 +11848 4 2 709 26 4528 319 5857 4792 +11849 4 2 709 26 4441 3955 4756 5050 +11850 4 2 709 26 4440 5541 228 5812 +11851 4 2 709 26 4191 6011 4357 3874 +11852 4 2 709 26 4524 5429 4447 4487 +11853 4 2 709 26 5633 660 4603 5559 +11854 4 2 709 26 5471 4085 4241 4908 +11855 4 2 709 26 3957 4579 4414 4519 +11856 4 2 709 26 3981 5171 4251 4721 +11857 4 2 709 26 4786 4074 4437 4748 +11858 4 2 709 26 5293 4053 4300 5013 +11859 4 2 709 26 4334 6011 4357 4831 +11860 4 2 709 26 3924 4300 4341 5163 +11861 4 2 709 26 4708 5239 4834 4117 +11862 4 2 709 26 902 5983 4623 5282 +11863 4 2 709 26 3952 6064 5209 6041 +11864 4 2 709 26 5067 4649 4094 4028 +11865 4 2 709 26 5495 4487 4315 5744 +11866 4 2 709 26 5105 4072 4797 4845 +11867 4 2 709 26 5812 276 4820 5541 +11868 4 2 709 26 6048 4155 4271 4676 +11869 4 2 709 26 5067 4649 5078 4094 +11870 4 2 709 26 6065 4238 5627 4731 +11871 4 2 709 26 220 5814 4914 5162 +11872 4 2 709 26 4028 3890 4305 5453 +11873 4 2 709 26 6034 5047 5086 4162 +11874 4 2 709 26 4739 5109 4922 5328 +11875 4 2 709 26 4056 4764 4479 4533 +11876 4 2 709 26 5698 4087 5309 5586 +11877 4 2 709 26 4990 5698 5586 4087 +11878 4 2 709 26 4704 4139 5075 5123 +11879 4 2 709 26 5712 3997 4269 4004 +11880 4 2 709 26 791 5939 5550 5705 +11881 4 2 709 26 5023 4427 4896 4340 +11882 4 2 709 26 1012 6004 5073 5220 +11883 4 2 709 26 4760 5814 4236 4901 +11884 4 2 709 26 5439 3983 4367 4878 +11885 4 2 709 26 4748 4899 5222 4201 +11886 4 2 709 26 4056 4993 4479 4764 +11887 4 2 709 26 6000 646 4985 5990 +11888 4 2 709 26 4906 3967 4284 4762 +11889 4 2 709 26 4836 4200 3920 5180 +11890 4 2 709 26 5285 5762 4899 4363 +11891 4 2 709 26 4173 3876 4352 4906 +11892 4 2 709 26 4112 4281 4402 3950 +11893 4 2 709 26 4796 5664 5075 4704 +11894 4 2 709 26 5346 4582 4906 5383 +11895 4 2 709 26 905 4521 5220 5944 +11896 4 2 709 26 3926 4143 5063 5520 +11897 4 2 709 26 4577 5613 4344 4145 +11898 4 2 709 26 5885 3962 4549 4908 +11899 4 2 709 26 3894 3969 5335 5676 +11900 4 2 709 26 3997 3908 4269 4004 +11901 4 2 709 26 4468 4145 5081 5278 +11902 4 2 709 26 4121 4888 4728 4935 +11903 4 2 709 26 594 5878 4690 5271 +11904 4 2 709 26 5434 3911 4424 4640 +11905 4 2 709 26 4300 3924 5082 5615 +11906 4 2 709 26 3939 4313 4314 5204 +11907 4 2 709 26 3952 6064 4701 4500 +11908 4 2 709 26 5871 975 5077 5594 +11909 4 2 709 26 5450 450 4595 4812 +11910 4 2 709 26 5648 5751 5112 4361 +11911 4 2 709 26 5627 3911 4424 5434 +11912 4 2 709 26 5347 4201 4363 5025 +11913 4 2 709 26 4015 4292 4451 5322 +11914 4 2 709 26 967 5461 4784 4850 +11915 4 2 709 26 4281 6067 4809 4402 +11916 4 2 709 26 5345 4055 4555 5165 +11917 4 2 709 26 4070 4386 4565 4735 +11918 4 2 709 26 3939 4226 4538 5204 +11919 4 2 709 26 3916 4439 4704 4806 +11920 4 2 709 26 4445 4212 4973 4324 +11921 4 2 709 26 4153 4274 5982 5047 +11922 4 2 709 26 4746 4056 4479 4533 +11923 4 2 709 26 3908 5754 4461 4004 +11924 4 2 709 26 5765 467 4678 4280 +11925 4 2 709 26 4693 4412 5049 5058 +11926 4 2 709 26 5428 5458 855 5147 +11927 4 2 709 26 5121 3950 4460 5061 +11928 4 2 709 26 4067 5028 4336 4780 +11929 4 2 709 26 6083 5625 673 5235 +11930 4 2 709 26 4695 4252 4102 5155 +11931 4 2 709 26 4619 4172 4821 5647 +11932 4 2 709 26 3917 4813 4238 5339 +11933 4 2 709 26 5648 3977 4361 5112 +11934 4 2 709 26 5758 4408 4843 4387 +11935 4 2 709 26 4207 4609 4796 5447 +11936 4 2 709 26 559 4812 4450 5697 +11937 4 2 709 26 796 6007 5109 5328 +11938 4 2 709 26 4015 5322 4451 5041 +11939 4 2 709 26 4288 4535 3945 4750 +11940 4 2 709 26 4973 3970 4324 4212 +11941 4 2 709 26 5712 4269 4461 4004 +11942 4 2 709 26 4324 5362 3875 4541 +11943 4 2 709 26 4814 5241 4196 4386 +11944 4 2 709 26 4916 4104 4519 5098 +11945 4 2 709 26 953 5944 4605 5493 +11946 4 2 709 26 4698 753 4791 5828 +11947 4 2 709 26 940 5999 5104 5958 +11948 4 2 709 26 5240 5362 4514 4468 +11949 4 2 709 26 5452 4274 4153 5047 +11950 4 2 709 26 5881 5412 5421 3992 +11951 4 2 709 26 356 5894 4934 5827 +11952 4 2 709 26 3981 3953 4410 4058 +11953 4 2 709 26 5116 4110 4855 5037 +11954 4 2 709 26 5366 4199 4770 5054 +11955 4 2 709 26 4408 5758 4528 4387 +11956 4 2 709 26 5155 4038 4695 5110 +11957 4 2 709 26 4497 4297 4645 5366 +11958 4 2 709 26 4374 4498 3958 5783 +11959 4 2 709 26 5464 5458 4614 3932 +11960 4 2 709 26 4698 4791 753 5837 +11961 4 2 709 26 5726 3966 4569 4735 +11962 4 2 709 26 3950 5121 4460 4661 +11963 4 2 709 26 3952 4500 4701 4721 +11964 4 2 709 26 4404 5412 5368 4291 +11965 4 2 709 26 4830 4597 4143 4325 +11966 4 2 709 26 5017 4169 4713 5090 +11967 4 2 709 26 6047 3933 4392 5258 +11968 4 2 709 26 5301 4749 5911 699 +11969 4 2 709 26 4922 4432 5960 3898 +11970 4 2 709 26 5434 4305 5453 4028 +11971 4 2 709 26 3889 5180 4200 4836 +11972 4 2 709 26 4796 4609 5277 5447 +11973 4 2 709 26 686 5789 4943 5641 +11974 4 2 709 26 3875 5362 4468 4541 +11975 4 2 709 26 4270 5880 4423 4773 +11976 4 2 709 26 4145 4857 5666 4786 +11977 4 2 709 26 5645 954 4921 5094 +11978 4 2 709 26 4178 5066 4425 4616 +11979 4 2 709 26 4044 4386 4617 4735 +11980 4 2 709 26 5635 986 4281 4809 +11981 4 2 709 26 4823 4083 4754 4939 +11982 4 2 709 26 226 5961 4848 5576 +11983 4 2 709 26 4055 5345 4583 5165 +11984 4 2 709 26 5104 5050 5999 4441 +11985 4 2 709 26 4051 3891 4135 4568 +11986 4 2 709 26 3913 4245 5503 5293 +11987 4 2 709 26 4067 5028 4780 4950 +11988 4 2 709 26 5045 3889 4200 4836 +11989 4 2 709 26 3932 5662 4390 5358 +11990 4 2 709 26 5769 4112 4809 4925 +11991 4 2 709 26 770 5458 5428 5599 +11992 4 2 709 26 3991 5016 5423 4427 +11993 4 2 709 26 4049 5031 4468 5362 +11994 4 2 709 26 3875 4160 3969 5065 +11995 4 2 709 26 4004 5243 4690 5271 +11996 4 2 709 26 3911 4640 4276 4424 +11997 4 2 709 26 4015 5041 4451 4586 +11998 4 2 709 26 4985 5260 5298 6000 +11999 4 2 709 26 4022 4316 4860 4313 +12000 4 2 709 26 455 6057 4664 5846 +12001 4 2 709 26 4918 3995 4371 4808 +12002 4 2 709 26 3996 4185 4897 3970 +12003 4 2 709 26 4085 4414 4241 4581 +12004 4 2 709 26 852 5925 5438 5595 +12005 4 2 709 26 4254 4401 3983 5131 +12006 4 2 709 26 4036 5311 4110 4634 +12007 4 2 709 26 4851 3888 4469 5343 +12008 4 2 709 26 937 5714 4544 5232 +12009 4 2 709 26 5885 4085 4558 4908 +12010 4 2 709 26 4386 4070 4617 4735 +12011 4 2 709 26 3913 4245 4772 5503 +12012 4 2 709 26 4760 5814 4901 4505 +12013 4 2 709 26 5362 5031 4324 4049 +12014 4 2 709 26 4254 4401 5126 3983 +12015 4 2 709 26 5346 5534 4906 4035 +12016 4 2 709 26 4767 5338 4822 4567 +12017 4 2 709 26 4318 5578 3874 5647 +12018 4 2 709 26 4292 4015 4451 4586 +12019 4 2 709 26 4135 4568 4536 4347 +12020 4 2 709 26 6048 4155 5864 4271 +12021 4 2 709 26 4397 4127 4501 4989 +12022 4 2 709 26 5848 4388 4638 5112 +12023 4 2 709 26 3870 4364 4367 4178 +12024 4 2 709 26 5553 244 4492 5145 +12025 4 2 709 26 4965 6048 5662 4049 +12026 4 2 709 26 469 4237 4503 4909 +12027 4 2 709 26 4028 3890 4649 4305 +12028 4 2 709 26 5132 3892 4679 5095 +12029 4 2 709 26 5823 3979 4834 4195 +12030 4 2 709 26 3977 4432 4835 5112 +12031 4 2 709 26 5266 3983 4362 4590 +12032 4 2 709 26 4305 4094 4649 4028 +12033 4 2 709 26 391 5785 4535 5234 +12034 4 2 709 26 5464 5458 3932 5160 +12035 4 2 709 26 4242 4501 5156 4397 +12036 4 2 709 26 3970 4591 5214 5454 +12037 4 2 709 26 4295 4619 4567 4822 +12038 4 2 709 26 4704 4139 5664 5075 +12039 4 2 709 26 3956 4236 4901 4760 +12040 4 2 709 26 3916 4806 4704 4937 +12041 4 2 709 26 4185 4324 3970 3996 +12042 4 2 709 26 4441 5495 4487 4524 +12043 4 2 709 26 3986 3938 4405 4820 +12044 4 2 709 26 5992 4110 4634 4036 +12045 4 2 709 26 4004 5243 5271 5330 +12046 4 2 709 26 381 5832 4732 4864 +12047 4 2 709 26 5055 3987 4249 4409 +12048 4 2 709 26 4334 6011 4947 3874 +12049 4 2 709 26 4004 4625 4369 5271 +12050 4 2 709 26 518 5633 4603 5584 +12051 4 2 709 26 3932 5464 4271 3982 +12052 4 2 709 26 4116 5408 5001 5402 +12053 4 2 709 26 993 5897 5386 4312 +12054 4 2 709 26 4374 3958 5312 4290 +12055 4 2 709 26 4195 4367 4400 5036 +12056 4 2 709 26 4116 5408 4638 5001 +12057 4 2 709 26 5714 937 4544 5329 +12058 4 2 709 26 4184 5600 4435 4325 +12059 4 2 709 26 4195 5066 5823 3979 +12060 4 2 709 26 4760 3956 4505 4901 +12061 4 2 709 26 6003 3918 5178 4773 +12062 4 2 709 26 5543 348 4880 5029 +12063 4 2 709 26 5249 6072 581 4783 +12064 4 2 709 26 6037 810 4287 5616 +12065 4 2 709 26 4205 3969 4389 5071 +12066 4 2 709 26 4404 5412 3933 5258 +12067 4 2 709 26 5433 271 6050 5459 +12068 4 2 709 26 6058 681 5209 5888 +12069 4 2 709 26 5848 4638 5408 5112 +12070 4 2 709 26 5969 1025 4942 5510 +12071 4 2 709 26 3955 4524 4487 5429 +12072 4 2 709 26 407 5507 4421 4816 +12073 4 2 709 26 4912 6005 5224 959 +12074 4 2 709 26 3947 4302 3969 4331 +12075 4 2 709 26 5804 492 4684 5377 +12076 4 2 709 26 4151 4479 4469 4821 +12077 4 2 709 26 3956 5016 4427 5078 +12078 4 2 709 26 3925 4631 4391 4570 +12079 4 2 709 26 4722 246 4849 5872 +12080 4 2 709 26 4218 6056 205 5753 +12081 4 2 709 26 3997 5343 4004 5039 +12082 4 2 709 26 3996 4823 4754 4939 +12083 4 2 709 26 5032 3935 4866 5168 +12084 4 2 709 26 975 5594 4476 5077 +12085 4 2 709 26 6022 932 4779 5080 +12086 4 2 709 26 4440 5541 5127 228 +12087 4 2 709 26 794 5454 4897 4399 +12088 4 2 709 26 3969 4205 4389 5335 +12089 4 2 709 26 4899 4565 5222 5610 +12090 4 2 709 26 3917 4923 4737 4813 +12091 4 2 709 26 4294 4900 4917 3998 +12092 4 2 709 26 4697 4827 4089 4517 +12093 4 2 709 26 3872 4153 4456 5086 +12094 4 2 709 26 3981 5171 4348 4819 +12095 4 2 709 26 4160 3969 5034 4389 +12096 4 2 709 26 512 5750 5236 4553 +12097 4 2 709 26 4029 5653 3935 5032 +12098 4 2 709 26 5582 3934 4570 5534 +12099 4 2 709 26 4193 3991 5423 4427 +12100 4 2 709 26 3929 6045 4418 4767 +12101 4 2 709 26 4300 3924 4341 5082 +12102 4 2 709 26 4222 5520 4387 5230 +12103 4 2 709 26 4162 5870 4773 4946 +12104 4 2 709 26 6034 4162 5086 5087 +12105 4 2 709 26 5862 991 4879 5149 +12106 4 2 709 26 5128 4049 4245 4965 +12107 4 2 709 26 3967 4906 4582 5383 +12108 4 2 709 26 4901 4028 4654 5443 +12109 4 2 709 26 4453 4133 4583 5294 +12110 4 2 709 26 4304 4438 3966 5283 +12111 4 2 709 26 4970 5112 4432 3977 +12112 4 2 709 26 3888 4851 4398 5343 +12113 4 2 709 26 4806 4439 4704 5447 +12114 4 2 709 26 4396 4130 4621 5014 +12115 4 2 709 26 5944 972 4521 5493 +12116 4 2 709 26 4178 4195 4425 5066 +12117 4 2 709 26 4004 5948 4369 4625 +12118 4 2 709 26 5662 3932 4390 4823 +12119 4 2 709 26 4067 5140 4523 3958 +12120 4 2 709 26 5239 4195 4400 5036 +12121 4 2 709 26 4966 4276 4640 4828 +12122 4 2 709 26 5771 3928 4403 5422 +12123 4 2 709 26 511 5697 4886 5696 +12124 4 2 709 26 4906 5534 5218 4035 +12125 4 2 709 26 4160 5034 3969 5065 +12126 4 2 709 26 4377 4009 4914 4236 +12127 4 2 709 26 3955 5050 4411 4756 +12128 4 2 709 26 3927 4044 4536 4814 +12129 4 2 709 26 4193 3991 4427 4563 +12130 4 2 709 26 3966 4448 4617 4735 +12131 4 2 709 26 5531 464 4508 5378 +12132 4 2 709 26 5032 4174 3935 5168 +12133 4 2 709 26 4432 4221 4835 5112 +12134 4 2 709 26 3969 3894 4807 5676 +12135 4 2 709 26 3876 4291 4458 4906 +12136 4 2 709 26 4546 4146 4845 4411 +12137 4 2 709 26 4288 3945 4535 4012 +12138 4 2 709 26 5025 4201 4363 4744 +12139 4 2 709 26 4241 4908 4549 5499 +12140 4 2 709 26 6009 4403 5771 3928 +12141 4 2 709 26 3971 4411 4546 4845 +12142 4 2 709 26 4298 4704 5018 5391 +12143 4 2 709 26 388 5384 4540 5369 +12144 4 2 709 26 3969 5676 4807 5310 +12145 4 2 709 26 4001 4786 4437 4748 +12146 4 2 709 26 366 5745 4955 5164 +12147 4 2 709 26 4004 3908 4269 4461 +12148 4 2 709 26 5783 4290 3958 4374 +12149 4 2 709 26 5644 853 4754 4897 +12150 4 2 709 26 5845 742 5005 5400 +12151 4 2 709 26 4145 4026 4344 4577 +12152 4 2 709 26 4592 4304 3966 5283 +12153 4 2 709 26 5024 4231 4117 4163 +12154 4 2 709 26 4005 4396 4621 5014 +12155 4 2 709 26 5847 388 4540 5369 +12156 4 2 709 26 3888 4469 4539 5059 +12157 4 2 709 26 5276 274 4720 4810 +12158 4 2 709 26 4922 4432 3898 5146 +12159 4 2 709 26 4970 4432 5112 4221 +12160 4 2 709 26 684 5709 4322 5229 +12161 4 2 709 26 4064 4184 4325 4597 +12162 4 2 709 26 3983 5904 4362 4590 +12163 4 2 709 26 5653 4029 3935 4858 +12164 4 2 709 26 4747 457 4717 5706 +12165 4 2 709 26 5159 3880 4403 4433 +12166 4 2 709 26 5023 3939 4340 4896 +12167 4 2 709 26 3875 4344 5278 4152 +12168 4 2 709 26 3998 4190 4008 5446 +12169 4 2 709 26 4416 4922 4261 5146 +12170 4 2 709 26 3932 5864 4719 5333 +12171 4 2 709 26 4917 3998 4190 4008 +12172 4 2 709 26 4147 4318 4549 5395 +12173 4 2 709 26 5260 3901 4367 5058 +12174 4 2 709 26 5827 311 4652 4934 +12175 4 2 709 26 4367 3985 4400 5036 +12176 4 2 709 26 5503 3880 5159 4300 +12177 4 2 709 26 4253 5926 4991 5838 +12178 4 2 709 26 225 5891 4598 5443 +12179 4 2 709 26 402 5621 4781 5525 +12180 4 2 709 26 4825 4023 4332 4800 +12181 4 2 709 26 5527 4064 4597 4184 +12182 4 2 709 26 5791 278 4405 5678 +12183 4 2 709 26 5249 436 6072 4783 +12184 4 2 709 26 3905 4172 4469 4479 +12185 4 2 709 26 4806 4032 4704 4937 +12186 4 2 709 26 3984 4084 4337 4756 +12187 4 2 709 26 5642 827 4457 5288 +12188 4 2 709 26 3987 5265 4249 4409 +12189 4 2 709 26 5418 3892 4679 5132 +12190 4 2 709 26 5277 4159 5339 4813 +12191 4 2 709 26 4207 4438 4448 4044 +12192 4 2 709 26 899 5488 4703 4850 +12193 4 2 709 26 742 5939 5005 5400 +12194 4 2 709 26 4067 5459 4523 4992 +12195 4 2 709 26 4291 4458 4906 5393 +12196 4 2 709 26 3956 4236 4499 4901 +12197 4 2 709 26 395 5672 4692 5608 +12198 4 2 709 26 4012 3945 4535 4788 +12199 4 2 709 26 5772 5493 4521 972 +12200 4 2 709 26 5647 4172 5059 5395 +12201 4 2 709 26 5764 597 4574 5135 +12202 4 2 709 26 5647 4172 5395 5578 +12203 4 2 709 26 4500 4126 4831 5577 +12204 4 2 709 26 160 5872 4722 4714 +12205 4 2 709 26 4657 4732 312 5832 +12206 4 2 709 26 4797 4072 4447 4008 +12207 4 2 709 26 5367 4526 5883 4806 +12208 4 2 709 26 4265 5034 4599 4769 +12209 4 2 709 26 4425 3870 4178 5840 +12210 4 2 709 26 358 5432 4653 5314 +12211 4 2 709 26 3956 5078 4839 4649 +12212 4 2 709 26 4112 4281 4809 4402 +12213 4 2 709 26 4469 4214 4539 5059 +12214 4 2 709 26 5847 371 4602 5628 +12215 4 2 709 26 4906 4762 5346 5383 +12216 4 2 709 26 6009 4403 3928 4566 +12217 4 2 709 26 4377 4914 4009 5145 +12218 4 2 709 26 3982 3932 4349 5333 +12219 4 2 709 26 208 5980 4405 5215 +12220 4 2 709 26 4032 4806 4704 5447 +12221 4 2 709 26 496 5605 5053 5143 +12222 4 2 709 26 5190 4231 4117 4787 +12223 4 2 709 26 5023 4218 4675 5223 +12224 4 2 709 26 5168 5998 3935 4866 +12225 4 2 709 26 5625 349 4776 5235 +12226 4 2 709 26 3927 5873 4617 4814 +12227 4 2 709 26 3918 4133 4453 4953 +12228 4 2 709 26 3933 5412 4392 5258 +12229 4 2 709 26 355 4220 4421 4926 +12230 4 2 709 26 3984 4337 4323 4756 +12231 4 2 709 26 4173 4291 4906 5393 +12232 4 2 709 26 5887 4251 5370 878 +12233 4 2 709 26 5832 380 4657 4779 +12234 4 2 709 26 4238 5277 5339 4813 +12235 4 2 709 26 5265 3987 4249 4818 +12236 4 2 709 26 661 5830 5141 5709 +12237 4 2 709 26 4601 4140 4570 5309 +12238 4 2 709 26 442 4249 4657 5233 +12239 4 2 709 26 550 5835 5542 5637 +12240 4 2 709 26 935 5518 5069 5172 +12241 4 2 709 26 5728 4163 4621 5024 +12242 4 2 709 26 5463 4184 4435 4325 +12243 4 2 709 26 653 5530 4668 5353 +12244 4 2 709 26 997 5420 4382 4802 +12245 4 2 709 26 6001 642 5053 5572 +12246 4 2 709 26 4173 3876 4906 4291 +12247 4 2 709 26 4425 4117 5196 3979 +12248 4 2 709 26 5451 4823 3996 5662 +12249 4 2 709 26 4948 480 4603 5322 +12250 4 2 709 26 520 5835 4608 5535 +12251 4 2 709 26 5585 6035 202 5057 +12252 4 2 709 26 5140 4067 4523 4992 +12253 4 2 709 26 4094 4305 3917 4028 +12254 4 2 709 26 5533 4106 4742 5521 +12255 4 2 709 26 5520 4222 4387 5063 +12256 4 2 709 26 4922 4432 5333 5960 +12257 4 2 709 26 5939 848 4512 5400 +12258 4 2 709 26 5384 343 4875 5176 +12259 4 2 709 26 3918 4133 4953 5087 +12260 4 2 709 26 4044 5241 4536 4814 +12261 4 2 709 26 696 5629 4782 5526 +12262 4 2 709 26 5276 158 4620 5127 +12263 4 2 709 26 4214 4469 4539 5343 +12264 4 2 709 26 4203 3905 4469 4479 +12265 4 2 709 26 4294 5531 4684 4055 +12266 4 2 709 26 3966 4617 4569 4735 +12267 4 2 709 26 4471 5876 4575 4085 +12268 4 2 709 26 5031 4049 4468 4307 +12269 4 2 709 26 5016 4649 5078 3956 +12270 4 2 709 26 5830 684 5229 5709 +12271 4 2 709 26 5055 3987 4350 4818 +12272 4 2 709 26 3996 4185 4754 4897 +12273 4 2 709 26 4425 4195 4178 3870 +12274 4 2 709 26 5695 4163 4621 5231 +12275 4 2 709 26 5034 4081 4599 4769 +12276 4 2 709 26 5838 5111 5926 210 +12277 4 2 709 26 5093 4051 4374 4868 +12278 4 2 709 26 408 4371 5284 5770 +12279 4 2 709 26 4830 4597 4184 3926 +12280 4 2 709 26 562 4383 5085 5833 +12281 4 2 709 26 3925 4804 4400 5477 +12282 4 2 709 26 5885 4471 4575 4085 +12283 4 2 709 26 4201 5762 4363 4899 +12284 4 2 709 26 4517 4045 4506 4710 +12285 4 2 709 26 4469 4172 4821 4479 +12286 4 2 709 26 4133 5294 4453 4953 +12287 4 2 709 26 844 5721 4757 5164 +12288 4 2 709 26 4026 4145 4344 5278 +12289 4 2 709 26 5391 4796 4434 4704 +12290 4 2 709 26 4067 4523 4351 3958 +12291 4 2 709 26 4201 4899 5222 5610 +12292 4 2 709 26 4085 5885 4558 4575 +12293 4 2 709 26 4240 5514 4199 5153 +12294 4 2 709 26 3875 3969 4160 4445 +12295 4 2 709 26 493 6069 4775 5706 +12296 4 2 709 26 369 5857 4589 5482 +12297 4 2 709 26 311 5551 4652 4934 +12298 4 2 709 26 5632 4085 4558 4738 +12299 4 2 709 26 4028 4901 4654 4839 +12300 4 2 709 26 3941 3968 4379 5457 +12301 4 2 709 26 5305 3875 5240 5278 +12302 4 2 709 26 4447 4008 4917 5562 +12303 4 2 709 26 4127 5193 4253 4397 +12304 4 2 709 26 4391 3878 5243 4570 +12305 4 2 709 26 5881 5412 3992 4392 +12306 4 2 709 26 475 5236 4339 5085 +12307 4 2 709 26 4307 4049 4468 5128 +12308 4 2 709 26 4612 5303 4524 4921 +12309 4 2 709 26 4775 4041 4693 4717 +12310 4 2 709 26 6032 4294 4684 4055 +12311 4 2 709 26 4175 4601 4570 3925 +12312 4 2 709 26 310 5815 4659 4753 +12313 4 2 709 26 3880 4628 4403 4433 +12314 4 2 709 26 3983 4878 4364 4367 +12315 4 2 709 26 5128 5362 4245 4049 +12316 4 2 709 26 5955 735 4694 4104 +12317 4 2 709 26 4106 5533 4983 5521 +12318 4 2 709 26 5967 817 4819 5761 +12319 4 2 709 26 4389 4205 5037 5335 +12320 4 2 709 26 5177 4502 4638 5001 +12321 4 2 709 26 4025 4147 4549 5395 +12322 4 2 709 26 290 5961 5364 4848 +12323 4 2 709 26 4162 5086 4456 5047 +12324 4 2 709 26 219 5646 4600 5553 +12325 4 2 709 26 4961 4825 4332 5698 +12326 4 2 709 26 6003 4294 5178 4055 +12327 4 2 709 26 5388 4263 3990 4741 +12328 4 2 709 26 4501 4397 4989 5156 +12329 4 2 709 26 348 6069 4880 5029 +12330 4 2 709 26 4007 4300 4433 4375 +12331 4 2 709 26 3996 4049 4823 4939 +12332 4 2 709 26 5717 244 4492 5553 +12333 4 2 709 26 4081 5951 4769 3913 +12334 4 2 709 26 5632 638 4908 5471 +12335 4 2 709 26 5717 196 4828 5351 +12336 4 2 709 26 4195 3870 4400 4367 +12337 4 2 709 26 529 6001 4669 5735 +12338 4 2 709 26 349 5551 4776 5235 +12339 4 2 709 26 687 5630 4579 4738 +12340 4 2 709 26 4287 5678 4888 5505 +12341 4 2 709 26 4151 4203 4469 4479 +12342 4 2 709 26 5104 5050 4441 3984 +12343 4 2 709 26 839 5629 4289 4782 +12344 4 2 709 26 496 6001 5053 5605 +12345 4 2 709 26 4028 4156 5434 3917 +12346 4 2 709 26 4300 5615 3880 4433 +12347 4 2 709 26 4172 4214 5395 5497 +12348 4 2 709 26 4413 5980 212 5215 +12349 4 2 709 26 4823 6048 4939 4049 +12350 4 2 709 26 5562 4008 4612 5303 +12351 4 2 709 26 6026 5599 816 4662 +12352 4 2 709 26 4172 4214 5059 5395 +12353 4 2 709 26 4906 3967 4762 5383 +12354 4 2 709 26 5929 5457 3968 3941 +12355 4 2 709 26 781 5734 4989 6010 +12356 4 2 709 26 3926 5527 4184 4464 +12357 4 2 709 26 4700 3909 4845 5350 +12358 4 2 709 26 3939 4896 4345 4815 +12359 4 2 709 26 4093 3952 4517 5289 +12360 4 2 709 26 4738 4085 4558 4575 +12361 4 2 709 26 5388 4263 4741 4344 +12362 4 2 709 26 4300 3924 4433 4375 +12363 4 2 709 26 5406 4962 587 5909 +12364 4 2 709 26 5343 3888 4469 4539 +12365 4 2 709 26 5058 3985 4412 4804 +12366 4 2 709 26 5495 4487 4524 4315 +12367 4 2 709 26 5406 587 4962 5914 +12368 4 2 709 26 898 5116 4663 4766 +12369 4 2 709 26 5653 4052 3935 5032 +12370 4 2 709 26 5153 5033 4199 4240 +12371 4 2 709 26 5770 423 5230 5426 +12372 4 2 709 26 4165 4135 4372 4829 +12373 4 2 709 26 4822 4295 4767 4567 +12374 4 2 709 26 4481 3875 5240 5305 +12375 4 2 709 26 811 5965 4611 5953 +12376 4 2 709 26 3939 4943 4345 4516 +12377 4 2 709 26 5977 357 4994 5118 +12378 4 2 709 26 5965 833 4887 5953 +12379 4 2 709 26 5697 569 4812 5696 +12380 4 2 709 26 4201 4899 4363 4744 +12381 4 2 709 26 909 4742 4856 6005 +12382 4 2 709 26 5622 310 4659 4753 +12383 4 2 709 26 5920 914 4771 4972 +12384 4 2 709 26 4435 4550 4325 3937 +12385 4 2 709 26 6064 4233 5209 6041 +12386 4 2 709 26 5556 410 4486 5442 +12387 4 2 709 26 4570 3878 5243 5794 +12388 4 2 709 26 5948 4004 4369 5330 +12389 4 2 709 26 5330 4004 4369 5271 +12390 4 2 709 26 4631 4570 3925 5424 +12391 4 2 709 26 4923 4313 3976 4316 +12392 4 2 709 26 3870 4425 4462 5476 +12393 4 2 709 26 3956 4236 4760 4553 +12394 4 2 709 26 904 5940 5149 5751 +12395 4 2 709 26 827 5642 4457 4832 +12396 4 2 709 26 3947 3969 5065 5388 +12397 4 2 709 26 4391 4570 5243 5309 +12398 4 2 709 26 4798 4570 5243 5794 +12399 4 2 709 26 4923 3976 4313 5509 +12400 4 2 709 26 4318 3980 4467 4831 +12401 4 2 709 26 3984 5050 4441 4756 +12402 4 2 709 26 4294 6032 5178 4055 +12403 4 2 709 26 3985 4367 4804 5058 +12404 4 2 709 26 4804 3951 5058 4367 +12405 4 2 709 26 3880 5503 5084 4300 +12406 4 2 709 26 5238 5068 4773 4270 +12407 4 2 709 26 5923 169 4810 4397 +12408 4 2 709 26 5959 487 5200 5735 +12409 4 2 709 26 309 5639 5176 5384 +12410 4 2 709 26 4524 3955 4237 5429 +12411 4 2 709 26 4933 4792 4739 5318 +12412 4 2 709 26 4413 5980 4785 212 +12413 4 2 709 26 5662 6048 4823 4049 +12414 4 2 709 26 5977 359 4408 5466 +12415 4 2 709 26 3879 5033 5231 4199 +12416 4 2 709 26 468 5697 4450 5542 +12417 4 2 709 26 991 5730 4879 5149 +12418 4 2 709 26 5597 4041 4693 4775 +12419 4 2 709 26 218 4863 4605 6046 +12420 4 2 709 26 5007 5502 4683 531 +12421 4 2 709 26 392 5749 4644 5380 +12422 4 2 709 26 4467 4318 4831 4334 +12423 4 2 709 26 6045 3964 4418 4767 +12424 4 2 709 26 5341 584 4658 5825 +12425 4 2 709 26 5765 5626 5377 535 +12426 4 2 709 26 3894 3969 4807 5388 +12427 4 2 709 26 5941 4516 4538 4847 +12428 4 2 709 26 4195 3979 4425 5066 +12429 4 2 709 26 4419 4033 4920 4719 +12430 4 2 709 26 5761 861 5268 5512 +12431 4 2 709 26 5241 4044 4386 4814 +12432 4 2 709 26 4064 5463 4497 4550 +12433 4 2 709 26 5860 5816 4801 698 +12434 4 2 709 26 342 5749 4642 5308 +12435 4 2 709 26 5478 5275 215 4729 +12436 4 2 709 26 3880 4300 4433 5159 +12437 4 2 709 26 4679 3953 4410 5743 +12438 4 2 709 26 4820 276 4768 5541 +12439 4 2 709 26 4077 4499 5016 4553 +12440 4 2 709 26 4591 4212 5214 4395 +12441 4 2 709 26 803 6066 5038 5400 +12442 4 2 709 26 743 5952 4980 5324 +12443 4 2 709 26 182 4960 4720 5576 +12444 4 2 709 26 4318 3874 5578 4147 +12445 4 2 709 26 313 5543 4666 4926 +12446 4 2 709 26 3932 4719 4349 5333 +12447 4 2 709 26 4185 3996 4754 4939 +12448 4 2 709 26 4909 572 5702 4503 +12449 4 2 709 26 5638 3981 4348 4712 +12450 4 2 709 26 4423 4294 5068 4773 +12451 4 2 709 26 4847 4101 4516 4538 +12452 4 2 709 26 4331 4265 5071 5448 +12453 4 2 709 26 5277 4238 4609 4813 +12454 4 2 709 26 648 5861 4930 4981 +12455 4 2 709 26 4991 4127 4253 4397 +12456 4 2 709 26 546 5959 4495 4928 +12457 4 2 709 26 3951 4412 4804 5058 +12458 4 2 709 26 4829 4027 4376 4604 +12459 4 2 709 26 647 5955 4984 5577 +12460 4 2 709 26 5999 940 4978 5958 +12461 4 2 709 26 5047 4946 5035 3915 +12462 4 2 709 26 896 5969 4942 5073 +12463 4 2 709 26 3981 4819 4348 4712 +12464 4 2 709 26 5388 3947 3969 4807 +12465 4 2 709 26 4435 4550 5463 4325 +12466 4 2 709 26 4690 644 5892 4154 +12467 4 2 709 26 932 5602 4779 5080 +12468 4 2 709 26 4377 4028 4840 4901 +12469 4 2 709 26 4169 5017 4713 4808 +12470 4 2 709 26 5695 5024 4621 4163 +12471 4 2 709 26 4256 5996 4200 5180 +12472 4 2 709 26 466 4451 5173 5584 +12473 4 2 709 26 4601 4570 3925 5309 +12474 4 2 709 26 4028 3890 4499 4649 +12475 4 2 709 26 6014 604 4648 5572 +12476 4 2 709 26 764 5953 4736 4399 +12477 4 2 709 26 3890 4028 4499 4840 +12478 4 2 709 26 4270 4773 4423 5068 +12479 4 2 709 26 5047 5035 4946 5273 +12480 4 2 709 26 1007 5282 4312 5000 +12481 4 2 709 26 4044 5661 4735 4448 +12482 4 2 709 26 322 6021 4535 5785 +12483 4 2 709 26 5470 494 4864 5080 +12484 4 2 709 26 5071 5037 4389 4205 +12485 4 2 709 26 458 5470 4658 4969 +12486 4 2 709 26 4200 5292 4256 5180 +12487 4 2 709 26 5897 998 5232 5445 +12488 4 2 709 26 4922 4432 5146 5333 +12489 4 2 709 26 5599 806 4614 5483 +12490 4 2 709 26 615 5816 4691 5526 +12491 4 2 709 26 4051 3891 4838 4829 +12492 4 2 709 26 4200 5998 4256 5292 +12493 4 2 709 26 172 4671 5553 5717 +12494 4 2 709 26 4088 4304 4592 5283 +12495 4 2 709 26 3982 5464 4416 5109 +12496 4 2 709 26 5864 3932 4719 5662 +12497 4 2 709 26 3968 4379 5213 3941 +12498 4 2 709 26 3909 5350 4275 4845 +12499 4 2 709 26 4570 4798 5243 5309 +12500 4 2 709 26 511 4354 4886 5697 +12501 4 2 709 26 4830 4597 4325 4184 +12502 4 2 709 26 3926 5527 4597 4184 +12503 4 2 709 26 5020 6062 3939 4829 +12504 4 2 709 26 4679 4410 4615 5743 +12505 4 2 709 26 4525 4829 5020 3939 +12506 4 2 709 26 5147 792 4428 5845 +12507 4 2 709 26 5870 4129 4456 4773 +12508 4 2 709 26 5929 3968 4415 3941 +12509 4 2 709 26 5861 6014 604 4648 +12510 4 2 709 26 5637 550 4783 5542 +12511 4 2 709 26 4999 4524 4487 4315 +12512 4 2 709 26 5811 620 4310 5374 +12513 4 2 709 26 4153 4456 5040 3872 +12514 4 2 709 26 4601 4175 4570 5534 +12515 4 2 709 26 4056 5685 4479 4993 +12516 4 2 709 26 5790 337 4841 5233 +12517 4 2 709 26 5069 200 5172 5291 +12518 4 2 709 26 5613 5388 3875 3894 +12519 4 2 709 26 4418 3964 4295 4767 +12520 4 2 709 26 5685 4056 4479 4746 +12521 4 2 709 26 4140 4601 4570 5534 +12522 4 2 709 26 6020 546 4495 5141 +12523 4 2 709 26 5736 4750 5055 4350 +12524 4 2 709 26 4025 4147 5395 5578 +12525 4 2 709 26 4804 3925 4400 4328 +12526 4 2 709 26 4522 4319 5445 4433 +12527 4 2 709 26 3939 4101 5023 4538 +12528 4 2 709 26 4116 5848 4502 4638 +12529 4 2 709 26 4697 4710 4045 4517 +12530 4 2 709 26 4497 4029 4550 5463 +12531 4 2 709 26 3980 4318 4357 4831 +12532 4 2 709 26 6054 743 4980 5324 +12533 4 2 709 26 4664 6020 536 5052 +12534 4 2 709 26 4728 6054 865 5347 +12535 4 2 709 26 4337 4084 4566 4756 +12536 4 2 709 26 4294 3998 5068 4773 +12537 4 2 709 26 4304 4088 4438 5283 +12538 4 2 709 26 3979 4117 4708 4834 +12539 4 2 709 26 5909 577 5167 5797 +12540 4 2 709 26 6052 451 5106 5256 +12541 4 2 709 26 4323 4337 4566 4756 +12542 4 2 709 26 4550 4866 4497 4064 +12543 4 2 709 26 5343 4214 4004 5039 +12544 4 2 709 26 4933 4739 4792 4109 +12545 4 2 709 26 4447 4797 4487 5429 +12546 4 2 709 26 4313 3939 4538 5204 +12547 4 2 709 26 4415 3968 5213 3941 +12548 4 2 709 26 3995 5520 4371 4808 +12549 4 2 709 26 5239 3870 4400 4195 +12550 4 2 709 26 5857 390 4528 5482 +12551 4 2 709 26 991 5940 5730 5149 +12552 4 2 709 26 4943 3939 4226 4516 +12553 4 2 709 26 5380 326 4486 5264 +12554 4 2 709 26 638 5632 4579 5471 +12555 4 2 709 26 5200 5605 460 4962 +12556 4 2 709 26 5197 844 4757 5164 +12557 4 2 709 26 4438 4044 4617 4448 +12558 4 2 709 26 3996 5662 4307 5451 +12559 4 2 709 26 3924 4433 4319 4761 +12560 4 2 709 26 4376 4829 4604 4838 +12561 4 2 709 26 5343 3908 4004 5257 +12562 4 2 709 26 513 5731 4944 5150 +12563 4 2 709 26 4992 4067 4780 4950 +12564 4 2 709 26 164 5340 4675 4905 +12565 4 2 709 26 6001 677 4669 5735 +12566 4 2 709 26 4214 5343 4004 5257 +12567 4 2 709 26 593 5904 4362 5228 +12568 4 2 709 26 4559 465 4510 5731 +12569 4 2 709 26 3997 3908 4004 5343 +12570 4 2 709 26 5129 4797 4008 4700 +12571 4 2 709 26 3956 4236 4553 4499 +12572 4 2 709 26 3987 5055 4249 4818 +12573 4 2 709 26 775 5887 4757 5370 +12574 4 2 709 26 5520 4371 4808 5219 +12575 4 2 709 26 895 5798 4476 5161 +12576 4 2 709 26 5910 350 4982 5558 +12577 4 2 709 26 170 6046 4862 5342 +12578 4 2 709 26 720 6031 4500 5577 +12579 4 2 709 26 4153 5040 4456 5982 +12580 4 2 709 26 5825 458 4658 4969 +12581 4 2 709 26 5732 782 4977 5092 +12582 4 2 709 26 5950 5311 4959 820 +12583 4 2 709 26 4447 4008 4487 4797 +12584 4 2 709 26 5751 904 4493 5149 +12585 4 2 709 26 998 5714 5232 5445 +12586 4 2 709 26 960 5714 4805 5329 +12587 4 2 709 26 5087 4133 4953 5086 +12588 4 2 709 26 4020 5296 3935 4858 +12589 4 2 709 26 200 5069 4683 5291 +12590 4 2 709 26 5358 4719 4920 3932 +12591 4 2 709 26 4522 4761 4319 4433 +12592 4 2 709 26 3924 5445 4319 4433 +12593 4 2 709 26 5691 5608 5558 316 +12594 4 2 709 26 5434 4305 3917 5627 +12595 4 2 709 26 5632 687 4579 4738 +12596 4 2 709 26 3973 5093 4374 4868 +12597 4 2 709 26 4262 3933 4458 5412 +12598 4 2 709 26 5462 396 4519 5169 +12599 4 2 709 26 5978 383 4655 5687 +12600 4 2 709 26 523 4339 5015 5804 +12601 4 2 709 26 4973 3970 5214 4399 +12602 4 2 709 26 4416 4922 5109 4261 +12603 4 2 709 26 4219 3978 4381 4453 +12604 4 2 709 26 3969 5034 4302 5065 +12605 4 2 709 26 4591 4212 3970 5214 +12606 4 2 709 26 4829 3939 4525 5490 +12607 4 2 709 26 640 5597 4775 5029 +12608 4 2 709 26 5639 412 4647 5349 +12609 4 2 709 26 4797 4072 4008 4700 +12610 4 2 709 26 5487 4179 4814 3958 +12611 4 2 709 26 821 5837 4791 4795 +12612 4 2 709 26 4453 3978 4187 4219 +12613 4 2 709 26 5642 759 4501 4832 +12614 4 2 709 26 6047 3933 4362 4392 +12615 4 2 709 26 4318 4334 4357 4831 +12616 4 2 709 26 4029 4497 4550 4866 +12617 4 2 709 26 934 5740 4959 4699 +12618 4 2 709 26 3948 4219 4381 4453 +12619 4 2 709 26 4187 3948 4453 4219 +12620 4 2 709 26 5238 5068 3998 4773 +12621 4 2 709 26 4081 3913 4769 5034 +12622 4 2 709 26 670 5811 4574 5374 +12623 4 2 709 26 519 5094 4237 4921 +12624 4 2 709 26 4110 5992 4634 5214 +12625 4 2 709 26 3985 4367 5058 5260 +12626 4 2 709 26 3955 4441 4487 4524 +12627 4 2 709 26 5260 3901 4195 4367 +12628 4 2 709 26 5721 814 4904 4955 +12629 4 2 709 26 4404 5393 3933 4291 +12630 4 2 709 26 4147 4318 5395 5578 +12631 4 2 709 26 5846 541 4572 4996 +12632 4 2 709 26 600 4800 4322 4995 +12633 4 2 709 26 4334 4318 4357 3874 +12634 4 2 709 26 645 4459 5302 5374 +12635 4 2 709 26 4085 4581 4241 4549 +12636 4 2 709 26 4427 4193 4563 4896 +12637 4 2 709 26 6063 641 4758 6035 +12638 4 2 709 26 5602 897 4695 4978 +12639 4 2 709 26 5631 843 4293 5318 +12640 4 2 709 26 3998 4700 4008 4917 +12641 4 2 709 26 5585 6035 4778 202 +12642 4 2 709 26 4999 4612 4444 5501 +12643 4 2 709 26 6029 4220 5314 355 +12644 4 2 709 26 390 5780 4528 5482 +12645 4 2 709 26 4748 4744 4201 5025 +12646 4 2 709 26 3939 6062 4815 4829 +12647 4 2 709 26 4890 3973 4374 4868 +12648 4 2 709 26 3996 5662 4823 4049 +12649 4 2 709 26 5965 774 4611 4956 +12650 4 2 709 26 6046 241 4863 5342 +12651 4 2 709 26 5745 366 4955 5090 +12652 4 2 709 26 5240 5362 3875 4481 +12653 4 2 709 26 4899 3938 4386 4565 +12654 4 2 709 26 4743 5752 4633 831 +12655 4 2 709 26 5585 162 4718 4975 +12656 4 2 709 26 605 5955 4694 4984 +12657 4 2 709 26 4093 4824 4517 5209 +12658 4 2 709 26 4165 4135 4829 5489 +12659 4 2 709 26 5840 4178 4425 4616 +12660 4 2 709 26 5606 4276 3968 4828 +12661 4 2 709 26 786 5967 4910 5096 +12662 4 2 709 26 5384 309 4660 5369 +12663 4 2 709 26 5648 5751 5940 992 +12664 4 2 709 26 5054 4497 5366 4199 +12665 4 2 709 26 4085 4241 4414 5471 +12666 4 2 709 26 391 5234 4535 5192 +12667 4 2 709 26 5835 468 5542 5697 +12668 4 2 709 26 5057 826 4696 5568 +12669 4 2 709 26 5044 4001 4763 4786 +12670 4 2 709 26 3938 4899 4386 5285 +12671 4 2 709 26 4193 5508 5139 4896 +12672 4 2 709 26 822 6063 6082 4758 +12673 4 2 709 26 4237 519 4921 5303 +12674 4 2 709 26 5662 3996 4307 4049 +12675 4 2 709 26 4291 3933 4458 5393 +12676 4 2 709 26 3978 5121 4402 4661 +12677 4 2 709 26 4195 4367 5036 5260 +12678 4 2 709 26 983 5944 4278 5601 +12679 4 2 709 26 4276 5829 4640 4828 +12680 4 2 709 26 3973 5991 4374 5093 +12681 4 2 709 26 5239 3870 4195 4425 +12682 4 2 709 26 4461 4690 734 5878 +12683 4 2 709 26 947 5510 4382 5225 +12684 4 2 709 26 5288 771 4606 4949 +12685 4 2 709 26 5087 4456 4162 5086 +12686 4 2 709 26 4448 4044 4617 4735 +12687 4 2 709 26 3915 5870 4456 5047 +12688 4 2 709 26 4178 3983 4364 4367 +12689 4 2 709 26 831 5486 4633 4743 +12690 4 2 709 26 5508 3975 5139 4896 +12691 4 2 709 26 4829 4051 4604 4838 +12692 4 2 709 26 5388 4263 4344 4751 +12693 4 2 709 26 4371 5219 5230 317 +12694 4 2 709 26 5388 4263 4751 3990 +12695 4 2 709 26 5195 5663 4219 4925 +12696 4 2 709 26 387 4853 4554 5581 +12697 4 2 709 26 5727 329 4826 4982 +12698 4 2 709 26 3875 4145 4344 5613 +12699 4 2 709 26 5052 557 4356 4945 +12700 4 2 709 26 6011 4334 4357 3874 +12701 4 2 709 26 4425 3870 4462 5239 +12702 4 2 709 26 4416 4922 5146 5333 +12703 4 2 709 26 4020 4326 3935 5296 +12704 4 2 709 26 5662 4157 4419 4719 +12705 4 2 709 26 823 5734 4667 5157 +12706 4 2 709 26 5955 651 4104 5900 +12707 4 2 709 26 5709 684 4322 4995 +12708 4 2 709 26 244 5351 4492 5145 +12709 4 2 709 26 783 5993 5611 5618 +12710 4 2 709 26 4359 4500 4831 5577 +12711 4 2 709 26 4700 3998 4008 5129 +12712 4 2 709 26 5858 717 4801 5816 +12713 4 2 709 26 6036 950 5420 4315 +12714 4 2 709 26 4008 4524 4447 4487 +12715 4 2 709 26 5433 168 4336 5185 +12716 4 2 709 26 851 6026 4491 5483 +12717 4 2 709 26 6014 4752 674 5572 +12718 4 2 709 26 3956 4553 5016 4499 +12719 4 2 709 26 6041 3952 4517 5209 +12720 4 2 709 26 714 5874 5209 5379 +12721 4 2 709 26 4178 3933 4903 5152 +12722 4 2 709 26 4367 3985 5036 5260 +12723 4 2 709 26 5176 315 6060 4869 +12724 4 2 709 26 955 5871 4936 5594 +12725 4 2 709 26 5980 292 4718 4785 +12726 4 2 709 26 742 5845 5005 5512 +12727 4 2 709 26 5955 647 5030 5577 +12728 4 2 709 26 4689 495 5069 5502 +12729 4 2 709 26 6069 640 4775 5029 +12730 4 2 709 26 647 5955 5030 5900 +12731 4 2 709 26 5054 4497 4199 5529 +12732 4 2 709 26 4500 4126 4721 4831 +12733 4 2 709 26 4748 4744 4899 4201 +12734 4 2 709 26 5945 258 4316 4654 +12735 4 2 709 26 4908 4085 4241 4549 +12736 4 2 709 26 5648 5879 4865 979 +12737 4 2 709 26 3979 4425 4834 4195 +12738 4 2 709 26 5702 555 4393 5450 +12739 4 2 709 26 179 5757 4891 5478 +12740 4 2 709 26 5448 889 4599 5071 +12741 4 2 709 26 4072 4447 4008 4917 +12742 4 2 709 26 5844 696 5526 5629 +12743 4 2 709 26 385 5551 4688 5360 +12744 4 2 709 26 5358 4719 3932 5662 +12745 4 2 709 26 4044 3927 4617 4814 +12746 4 2 709 26 4051 4890 4374 4868 +12747 4 2 709 26 988 6005 5224 5521 +12748 4 2 709 26 5991 3973 4374 4890 +12749 4 2 709 26 244 5717 4492 5351 +12750 4 2 709 26 5945 5891 180 4902 +12751 4 2 709 26 4313 4022 4780 4860 +12752 4 2 709 26 543 5460 4510 5150 +12753 4 2 709 26 4362 3933 4262 4392 +12754 4 2 709 26 555 5702 4393 4909 +12755 4 2 709 26 5687 338 4781 5978 +12756 4 2 709 26 4410 4679 4615 4910 +12757 4 2 709 26 5249 381 4732 4864 +12758 4 2 709 26 4303 414 4982 5397 +12759 4 2 709 26 5231 5514 4199 4240 +12760 4 2 709 26 5781 4892 978 5320 +12761 4 2 709 26 4236 4840 4901 4377 +12762 4 2 709 26 5698 4804 4328 3925 +12763 4 2 709 26 5698 4087 4332 4961 +12764 4 2 709 26 3975 4896 4755 5139 +12765 4 2 709 26 5599 816 4662 5428 +12766 4 2 709 26 616 4854 4414 4579 +12767 4 2 709 26 5481 894 4573 4879 +12768 4 2 709 26 5628 987 4286 4841 +12769 4 2 709 26 6067 514 4612 5635 +12770 4 2 709 26 5552 848 4512 5550 +12771 4 2 709 26 5644 794 4897 4399 +12772 4 2 709 26 5706 525 4717 4775 +12773 4 2 709 26 5952 858 4380 5324 +12774 4 2 709 26 5214 4110 4736 5311 +12775 4 2 709 26 5230 408 5770 4371 +12776 4 2 709 26 5034 5071 4599 4389 +12777 4 2 709 26 593 5228 4362 4894 +12778 4 2 709 26 4372 4604 4829 4051 +12779 4 2 709 26 5001 4116 4502 4638 +12780 4 2 709 26 326 5556 4486 5264 +12781 4 2 709 26 5891 180 4902 5443 +12782 4 2 709 26 3935 4200 4174 4610 +12783 4 2 709 26 3900 4427 4563 4896 +12784 4 2 709 26 4045 4517 4506 4827 +12785 4 2 709 26 4890 4051 4637 4868 +12786 4 2 709 26 840 5752 4745 5142 +12787 4 2 709 26 5944 983 4278 5220 +12788 4 2 709 26 3933 4178 4364 4651 +12789 4 2 709 26 3939 4829 4815 5490 +12790 4 2 709 26 4110 5214 4634 5311 +12791 4 2 709 26 254 5167 4505 5162 +12792 4 2 709 26 5798 895 4476 4892 +12793 4 2 709 26 4796 5664 4704 3902 +12794 4 2 709 26 4999 4524 4008 4487 +12795 4 2 709 26 5053 201 5143 5340 +12796 4 2 709 26 5231 4240 4199 5033 +12797 4 2 709 26 4326 4052 3935 5296 +12798 4 2 709 26 5953 4855 5603 841 +12799 4 2 709 26 889 5808 5071 5448 +12800 4 2 709 26 3953 4679 4410 4058 +12801 4 2 709 26 4135 3891 4829 5489 +12802 4 2 709 26 4520 4995 685 5559 +12803 4 2 709 26 5740 199 5157 5405 +12804 4 2 709 26 5871 906 4638 5077 +12805 4 2 709 26 4052 4326 3935 5359 +12806 4 2 709 26 894 5730 4573 4879 +12807 4 2 709 26 3933 4262 4392 5412 +12808 4 2 709 26 4500 3952 4359 4831 +12809 4 2 709 26 492 4684 5377 5765 +12810 4 2 709 26 4796 4813 5277 4609 +12811 4 2 709 26 5427 474 4572 5372 +12812 4 2 709 26 5931 868 4701 4977 +12813 4 2 709 26 4966 3968 4276 4828 +12814 4 2 709 26 4195 4425 4834 5239 +12815 4 2 709 26 240 4810 5276 4620 +12816 4 2 709 26 380 5184 4657 4779 +12817 4 2 709 26 5872 198 4355 5364 +12818 4 2 709 26 384 4933 4659 4795 +12819 4 2 709 26 817 5925 4819 5761 +12820 4 2 709 26 5656 515 4914 5162 +12821 4 2 709 26 448 4799 4680 5300 +12822 4 2 709 26 6082 4870 822 4758 +12823 4 2 709 26 4236 4901 4840 4499 +12824 4 2 709 26 681 5888 4824 5209 +12825 4 2 709 26 3933 4178 4651 5152 +12826 4 2 709 26 5459 4067 4780 4992 +12827 4 2 709 26 4052 5653 3935 5296 +12828 4 2 709 26 4239 222 4912 5224 +12829 4 2 709 26 4231 5024 4117 4787 +12830 4 2 709 26 536 5532 4664 5052 +12831 4 2 709 26 5055 4350 4750 4818 +12832 4 2 709 26 4524 4008 4447 5303 +12833 4 2 709 26 3952 4500 4721 4831 +12834 4 2 709 26 5870 3915 4946 5047 +12835 4 2 709 26 5464 3982 4416 4271 +12836 4 2 709 26 4313 5008 4538 5023 +12837 4 2 709 26 251 5941 4847 5179 +12838 4 2 709 26 3935 5653 4858 5296 +12839 4 2 709 26 4614 770 5599 5458 +12840 4 2 709 26 3982 5333 4416 4271 +12841 4 2 709 26 5814 254 4505 5162 +12842 4 2 709 26 5358 4719 4419 4920 +12843 4 2 709 26 4748 4744 4001 4899 +12844 4 2 709 26 5086 4153 4456 5047 +12845 4 2 709 26 5752 812 4956 5142 +12846 4 2 709 26 4679 4910 4767 4098 +12847 4 2 709 26 4517 4045 4697 4827 +12848 4 2 709 26 191 5997 5253 4785 +12849 4 2 709 26 832 5595 4562 4871 +12850 4 2 709 26 604 5861 4648 4930 +12851 4 2 709 26 4748 4899 4786 5222 +12852 4 2 709 26 703 6061 4376 5524 +12853 4 2 709 26 4961 4087 4332 4874 +12854 4 2 709 26 4226 5941 4516 4538 +12855 4 2 709 26 4399 3970 5214 5454 +12856 4 2 709 26 3918 5178 4773 4953 +12857 4 2 709 26 5709 661 4948 5141 +12858 4 2 709 26 4404 5412 4291 3933 +12859 4 2 709 26 3902 4704 5018 5664 +12860 4 2 709 26 4093 3952 5209 4517 +12861 4 2 709 26 5925 793 4348 5595 +12862 4 2 709 26 162 5980 4718 4975 +12863 4 2 709 26 158 5409 4620 5127 +12864 4 2 709 26 4233 6041 4517 5209 +12865 4 2 709 26 5860 596 4801 5353 +12866 4 2 709 26 5024 3999 4117 4787 +12867 4 2 709 26 4072 4917 4008 4700 +12868 4 2 709 26 5261 4001 4744 4899 +12869 4 2 709 26 5147 4428 792 5428 +12870 4 2 709 26 4899 3938 4565 5610 +12871 4 2 709 26 4796 5277 4813 4159 +12872 4 2 709 26 460 5909 4962 5605 +12873 4 2 709 26 5648 5879 979 5920 +12874 4 2 709 26 5029 383 4655 5543 +12875 4 2 709 26 5488 967 4784 4850 +12876 4 2 709 26 322 6021 4750 4535 +12877 4 2 709 26 5249 526 4864 5470 +12878 4 2 709 26 4567 3929 4418 4767 +12879 4 2 709 26 4468 3875 4541 4145 +12880 4 2 709 26 963 5983 5282 4557 +12881 4 2 709 26 5433 271 5459 4336 +12882 4 2 709 26 182 4720 4960 5276 +12883 4 2 709 26 5023 3976 4313 5008 +12884 4 2 709 26 4275 5350 4595 4845 +12885 4 2 709 26 4305 5434 3917 4028 +12886 4 2 709 26 5833 475 4339 5085 +12887 4 2 709 26 373 5813 4587 5621 +12888 4 2 709 26 788 5837 4795 4852 +12889 4 2 709 26 5160 756 4390 6066 +12890 4 2 709 26 5518 896 4942 5073 +12891 4 2 709 26 642 5572 4752 5053 +12892 4 2 709 26 4295 4567 4418 4767 +12893 4 2 709 26 5317 5717 265 4828 +12894 4 2 709 26 5391 4796 4704 3902 +12895 4 2 709 26 4312 902 4623 5282 +12896 4 2 709 26 4370 4502 4932 5349 +12897 4 2 709 26 4282 936 4443 4972 +12898 4 2 709 26 537 6057 5480 4451 +12899 4 2 709 26 5593 4386 4617 4814 +12900 4 2 709 26 5631 5318 5857 400 +12901 4 2 709 26 4289 807 4588 5629 +12902 4 2 709 26 4679 4767 4910 4058 +12903 4 2 709 26 5322 537 4451 6057 +12904 4 2 709 26 5409 261 4440 5127 +12905 4 2 709 26 4286 958 5628 4602 +12906 4 2 709 26 6046 4811 5601 252 +12907 4 2 709 26 371 5847 4602 5369 +12908 4 2 709 26 5320 5798 939 5679 +12909 4 2 709 26 3983 3933 4364 5266 +12910 4 2 709 26 446 5780 4808 5219 +12911 4 2 709 26 5388 3875 3969 5065 +12912 4 2 709 26 4900 3978 4402 4661 +12913 4 2 709 26 5642 808 4949 5156 +12914 4 2 709 26 5300 553 4383 4680 +12915 4 2 709 26 5837 788 4784 4852 +12916 4 2 709 26 5018 3902 5391 4704 +12917 4 2 709 26 5087 3918 4773 4953 +12918 4 2 709 26 626 5641 4596 4938 +12919 4 2 709 26 6031 720 4984 5577 +12920 4 2 709 26 4679 4410 4058 4910 +12921 4 2 709 26 3892 5418 4679 4767 +12922 4 2 709 26 5945 177 4475 4860 +12923 4 2 709 26 4285 658 4587 5621 +12924 4 2 709 26 808 5288 5642 4949 +12925 4 2 709 26 5757 215 4729 5478 +12926 4 2 709 26 5551 385 4688 4934 +12927 4 2 709 26 983 5601 4278 4811 +12928 4 2 709 26 5505 4287 4728 4888 +12929 4 2 709 26 5858 622 5189 5712 +12930 4 2 709 26 3933 4291 4458 5412 +12931 4 2 709 26 3928 3984 4323 5385 +12932 4 2 709 26 4129 4953 4456 4773 +12933 4 2 709 26 211 5549 4671 5317 +12934 4 2 709 26 5978 338 4781 5525 +12935 4 2 709 26 329 5727 4303 4982 +12936 4 2 709 26 5480 499 4590 5372 +12937 4 2 709 26 5141 546 4495 4928 +12938 4 2 709 26 4233 4517 4824 5209 +12939 4 2 709 26 5479 605 4694 4984 +12940 4 2 709 26 5087 4456 5086 4953 +12941 4 2 709 26 5131 506 4449 5667 +12942 4 2 709 26 886 5967 4819 4910 +12943 4 2 709 26 4051 5208 4374 4890 +12944 4 2 709 26 4112 4402 4809 4925 +12945 4 2 709 26 5358 4719 5662 4419 +12946 4 2 709 26 4722 4849 246 4239 +12947 4 2 709 26 5111 5961 4355 267 +12948 4 2 709 26 4894 524 5323 5715 +12949 4 2 709 26 529 5735 4669 5200 +12950 4 2 709 26 5641 626 4596 5144 +12951 4 2 709 26 948 5000 5124 5781 +12952 4 2 709 26 5630 625 4587 5404 +12953 4 2 709 26 3894 3875 4445 3969 +12954 4 2 709 26 5870 4162 4456 5047 +12955 4 2 709 26 986 5225 4281 4809 +12956 4 2 709 26 5904 556 4401 5228 +12957 4 2 709 26 4162 5870 4946 5047 +12958 4 2 709 26 5158 899 4703 4850 +12959 4 2 709 26 897 5958 4695 4978 +12960 4 2 709 26 5220 983 4278 4811 +12961 4 2 709 26 5384 343 4540 4875 +12962 4 2 709 26 4999 4612 5501 4008 +12963 4 2 709 26 4051 3958 4568 5093 +12964 4 2 709 26 5633 5173 5584 545 +12965 4 2 709 26 784 5263 4591 4832 +12966 4 2 709 26 4922 4416 3982 5333 +12967 4 2 709 26 5208 4051 4637 4890 +12968 4 2 709 26 5698 4804 3925 4601 +12969 4 2 709 26 5140 4051 3958 4568 +12970 4 2 709 26 948 5000 5386 5124 +12971 4 2 709 26 3938 5762 5610 4899 +12972 4 2 709 26 554 5531 4423 5378 +12973 4 2 709 26 1009 6036 4802 4319 +12974 4 2 709 26 4422 939 5679 5564 +12975 4 2 709 26 774 5965 4743 4956 +12976 4 2 709 26 3939 4101 4896 5023 +12977 4 2 709 26 3928 3984 5009 4337 +12978 4 2 709 26 4153 5982 4456 5047 +12979 4 2 709 26 409 5910 4527 5558 +12980 4 2 709 26 5559 614 4520 5049 +12981 4 2 709 26 5910 424 5014 5397 +12982 4 2 709 26 5909 530 4709 5605 +12983 4 2 709 26 5785 332 4608 5234 +12984 4 2 709 26 655 5878 4625 5712 +12985 4 2 709 26 516 4280 4600 5646 +12986 4 2 709 26 5285 5762 3938 4899 +12987 4 2 709 26 5921 270 4304 5021 +12988 4 2 709 26 5545 748 4491 4904 +12989 4 2 709 26 5442 425 4430 4869 +12990 4 2 709 26 4814 4044 4386 4617 +12991 4 2 709 26 5741 3928 4403 4566 +12992 4 2 709 26 4881 3955 4237 4524 +12993 4 2 709 26 648 5861 4981 5778 +12994 4 2 709 26 556 4559 4401 5228 +12995 4 2 709 26 4067 4351 4814 3958 +12996 4 2 709 26 397 5150 4653 5460 +12997 4 2 709 26 677 6001 4669 5572 +12998 4 2 709 26 5679 939 5320 5564 +12999 4 2 709 26 631 6000 4985 5298 +13000 4 2 709 26 4656 4758 822 4870 +13001 4 2 709 26 3958 3986 4351 4814 +13002 4 2 709 26 5910 409 4527 5284 +13003 4 2 709 26 5996 4256 4200 5168 +13004 4 2 709 26 667 5671 4241 4833 +13005 4 2 709 26 5322 4451 537 5584 +13006 4 2 709 26 518 5584 4603 5322 +13007 4 2 709 26 455 5846 4664 5532 +13008 4 2 709 26 625 5630 4587 4954 +13009 4 2 709 26 6083 5235 673 4916 +13010 4 2 709 26 561 5480 4572 5372 +13011 4 2 709 26 252 6046 4811 4862 +13012 4 2 709 26 4922 3982 4416 5109 +13013 4 2 709 26 976 6005 4856 5042 +13014 4 2 709 26 5572 604 4648 4930 +13015 4 2 709 26 5646 547 4280 4817 +13016 4 2 709 26 946 5808 4742 5533 +13017 4 2 709 26 5633 5173 545 4794 +13018 4 2 709 26 744 4614 5109 5464 +13019 4 2 709 26 701 5189 4987 4478 +13020 4 2 709 26 4072 4700 4845 5350 +13021 4 2 709 26 5509 3976 4313 5023 +13022 4 2 709 26 5195 3978 4402 4900 +13023 4 2 709 26 4219 5182 4670 4925 +13024 4 2 709 26 5386 1007 4312 5000 +13025 4 2 709 26 4179 4067 4814 3958 +13026 4 2 709 26 4256 5998 4200 5168 +13027 4 2 709 26 198 5872 4355 4849 +13028 4 2 709 26 484 5667 4794 5173 +13029 4 2 709 26 5897 938 5445 4522 +13030 4 2 709 26 5879 900 4627 5313 +13031 4 2 709 26 5871 955 4936 5177 +13032 4 2 709 26 393 4303 4642 5749 +13033 4 2 709 26 5234 308 4466 5192 +13034 4 2 709 26 5545 786 4910 5096 +13035 4 2 709 26 232 5057 4696 5585 +13036 4 2 709 26 203 5891 4475 5398 +13037 4 2 709 26 809 4293 4589 5631 +13038 4 2 709 26 3925 4804 5477 4601 +13039 4 2 709 26 3984 3928 4323 4337 +13040 4 2 709 26 5233 337 4841 5184 +13041 4 2 709 26 6007 744 5109 5464 +13042 4 2 709 26 411 5264 4644 5192 +13043 4 2 709 26 5727 422 4816 5507 +13044 4 2 709 26 5034 5071 4265 4599 +13045 4 2 709 26 668 5524 4345 4749 +13046 4 2 709 26 5448 980 4265 4599 +13047 4 2 709 26 621 5524 4749 4997 +13048 4 2 709 26 198 5961 4355 5364 +13049 4 2 709 26 970 5602 4706 4978 +13050 4 2 709 26 525 5174 4717 4775 +13051 4 2 709 26 6050 197 4523 5459 +13052 4 2 709 26 5799 755 4489 4626 +13053 4 2 709 26 3955 4441 4524 4881 +13054 4 2 709 26 5195 3978 4219 5121 +13055 4 2 709 26 4344 3875 5278 4145 +13056 4 2 709 26 5816 719 4420 5526 +13057 4 2 709 26 6054 798 5324 5528 +13058 4 2 709 26 4459 645 4574 5374 +13059 4 2 709 26 232 5585 4696 4975 +13060 4 2 709 26 339 4688 4934 5197 +13061 4 2 709 26 5835 552 4580 5535 +13062 4 2 709 26 679 5029 4655 5597 +13063 4 2 709 26 792 5428 4428 4861 +13064 4 2 709 26 767 5925 4480 5438 +13065 4 2 709 26 5140 4051 4498 3958 +13066 4 2 709 26 4443 5386 5124 1008 +13067 4 2 709 26 3984 3928 5009 5385 +13068 4 2 709 26 541 5427 4572 4996 +13069 4 2 709 26 410 5556 4869 5442 +13070 4 2 709 26 4383 463 4996 5427 +13071 4 2 709 26 5769 927 4809 5225 +13072 4 2 709 26 4008 4190 4612 5501 +13073 4 2 709 26 5718 886 4819 4910 +13074 4 2 709 26 538 4237 4447 5303 +13075 4 2 709 26 5838 4253 4397 4991 +13076 4 2 709 26 5517 881 4656 4935 +13077 4 2 709 26 4387 305 5118 5022 +13078 4 2 709 26 5904 449 4590 5131 +13079 4 2 709 26 4871 4348 793 5595 +13080 4 2 709 26 3875 4468 5278 4145 +13081 4 2 709 26 659 5634 4596 5571 +13082 4 2 709 26 375 5691 4826 4982 +13083 4 2 709 26 5321 184 4596 4938 +13084 4 2 709 26 5645 4237 4524 4881 +13085 4 2 709 26 5828 753 4791 5328 +13086 4 2 709 26 3939 4101 4538 4516 +13087 4 2 709 26 5441 4955 4904 773 +13088 4 2 709 26 3986 5487 4814 3958 +13089 4 2 709 26 5648 888 4865 5112 +13090 4 2 709 26 810 6037 4287 4606 +13091 4 2 709 26 330 5482 4589 5090 +13092 4 2 709 26 456 5323 4354 4883 +13093 4 2 709 26 5351 161 4377 5145 +13094 4 2 709 26 5441 829 4491 4685 +13095 4 2 709 26 985 5645 4881 5094 +13096 4 2 709 26 3875 5613 4212 4541 +13097 4 2 709 26 4925 5561 4670 4219 +13098 4 2 709 26 5663 4219 4925 5182 +13099 4 2 709 26 4827 5595 852 5438 +13100 4 2 709 26 921 5475 4841 5184 +13101 4 2 709 26 5195 5663 5121 4219 +13102 4 2 709 26 4925 5561 4219 5195 +13103 4 2 709 26 5594 975 4476 5161 +13104 4 2 709 26 5350 4072 4595 4845 +13105 4 2 709 26 816 5096 4662 4861 +13106 4 2 709 26 6063 5568 4758 822 +13107 4 2 709 26 464 4339 4508 5378 +13108 4 2 709 26 5911 621 4749 4997 +13109 4 2 709 26 5547 207 4206 4968 +13110 4 2 709 26 702 5844 4691 5417 +13111 4 2 709 26 363 5426 4430 4869 +13112 4 2 709 26 5887 819 4688 5560 +13113 4 2 709 26 6052 558 4553 4368 +13114 4 2 709 26 5532 5256 490 4996 +13115 4 2 709 26 5492 3892 4679 4767 +13116 4 2 709 26 909 4856 4742 5808 +13117 4 2 709 26 275 5921 4304 4768 +13118 4 2 709 26 609 5811 4990 4332 +13119 4 2 709 26 982 5603 4283 4855 +13120 4 2 709 26 4339 464 4508 5804 +13121 4 2 709 26 4912 6005 959 5042 +13122 4 2 709 26 5142 989 4493 5137 +13123 4 2 709 26 4569 259 5541 5921 +13124 4 2 709 26 957 5149 5862 5142 +13125 4 2 709 26 428 5525 4421 5507 +13126 4 2 709 26 5678 257 4405 5812 +13127 4 2 709 26 673 5479 4694 5235 +13128 4 2 709 26 470 5052 4495 4945 +13129 4 2 709 26 208 5791 4405 4975 +13130 4 2 709 26 767 5438 4480 5268 +13131 4 2 709 26 5092 825 4686 5732 +13132 4 2 709 26 748 5096 5545 6026 +13133 4 2 709 26 379 4916 4652 5235 +13134 4 2 709 26 4684 565 4381 5765 +13135 4 2 709 26 752 5887 4940 5560 +13136 4 2 709 26 5184 965 4695 4779 +13137 4 2 709 26 6012 680 4890 5858 +13138 4 2 709 26 755 5719 4489 4626 +13139 4 2 709 26 4742 988 5521 6005 +13140 4 2 709 26 199 5740 4699 5405 +13141 4 2 709 26 5400 803 4512 5038 +13142 4 2 709 26 337 5233 4657 5184 +13143 4 2 709 26 448 4680 4799 5175 +13144 4 2 709 26 3939 5509 4313 5023 +13145 4 2 709 26 625 4738 5404 5630 +13146 4 2 709 26 5466 359 4408 4792 +13147 4 2 709 26 243 5321 4314 5204 +13148 4 2 709 26 3939 5023 4313 4538 +13149 4 2 709 26 3894 3875 3969 5388 +13150 4 2 709 26 868 5092 4701 4977 +13151 4 2 709 26 5634 217 4596 5590 +13152 4 2 709 26 344 5780 5219 4387 +13153 4 2 709 26 201 5053 4752 5340 +13154 4 2 709 26 5874 5577 5030 697 +13155 4 2 709 26 5680 3935 4610 4200 +13156 4 2 709 26 176 4505 4901 5814 +13157 4 2 709 26 673 5235 4694 4916 +13158 4 2 709 26 5861 652 4516 5778 +13159 4 2 709 26 544 5656 4760 5162 +13160 4 2 709 26 5925 745 4819 5171 +13161 4 2 709 26 4162 5870 4456 4773 +13162 4 2 709 26 5397 5749 314 5380 +13163 4 2 709 26 5405 5734 237 5157 +13164 4 2 709 26 176 4901 4505 6056 +13165 4 2 709 26 400 5857 4792 5318 +13166 4 2 709 26 6035 641 4758 4778 +13167 4 2 709 26 5922 829 4685 5483 +13168 4 2 709 26 4768 6050 239 4820 +13169 4 2 709 26 5719 767 5268 5438 +13170 4 2 709 26 4425 4117 4834 5239 +13171 4 2 709 26 6001 529 4669 5605 +13172 4 2 709 26 5914 508 5106 5406 +13173 4 2 709 26 602 5404 4738 5302 +13174 4 2 709 26 4656 822 4758 5568 +13175 4 2 709 26 5749 392 4644 5308 +13176 4 2 709 26 5562 538 4447 5303 +13177 4 2 709 26 360 4409 4249 5233 +13178 4 2 709 26 5626 478 4600 5003 +13179 4 2 709 26 632 4686 6031 4984 +13180 4 2 709 26 4190 4008 4612 5562 +13181 4 2 709 26 5632 688 4558 4908 +13182 4 2 709 26 5778 668 4345 4749 +13183 4 2 709 26 350 5910 4982 5397 +13184 4 2 709 26 797 5214 4634 5700 +13185 4 2 709 26 3956 4649 4839 4901 +13186 4 2 709 26 934 4766 4699 4959 +13187 4 2 709 26 554 5378 4799 5300 +13188 4 2 709 26 3935 4497 4645 5366 +13189 4 2 709 26 3935 5998 4645 4497 +13190 4 2 709 26 722 5830 4576 4928 +13191 4 2 709 26 4592 214 5021 4304 +13192 4 2 709 26 552 5835 4580 5697 +13193 4 2 709 26 6061 621 4997 5524 +13194 4 2 709 26 5167 5406 486 5909 +13195 4 2 709 26 5667 506 4449 5173 +13196 4 2 709 26 6057 455 4664 5322 +13197 4 2 709 26 553 5427 4383 4680 +13198 4 2 709 26 180 5443 4654 4902 +13199 4 2 709 26 4117 4425 4834 3979 +13200 4 2 709 26 5400 863 4390 5147 +13201 4 2 709 26 858 5611 5952 4380 +13202 4 2 709 26 969 4663 4983 4699 +13203 4 2 709 26 3978 5195 4402 5121 +13204 4 2 709 26 671 5878 5271 4625 +13205 4 2 709 26 267 4355 5111 4849 +13206 4 2 709 26 928 6039 5313 5879 +13207 4 2 709 26 4233 832 4562 4871 +13208 4 2 709 26 5945 180 4654 4902 +13209 4 2 709 26 4001 5261 4763 4899 +13210 4 2 709 26 635 6014 4516 4847 +13211 4 2 709 26 5691 375 4826 4941 +13212 4 2 709 26 3983 5598 4367 4178 +13213 4 2 709 26 5109 5922 866 4739 +13214 4 2 709 26 911 4286 4726 4534 +13215 4 2 709 26 5993 4588 5618 828 +13216 4 2 709 26 4933 821 4791 4795 +13217 4 2 709 26 415 5859 4407 5821 +13218 4 2 709 26 4249 5237 4818 5055 +13219 4 2 709 26 5397 5749 4303 314 +13220 4 2 709 26 4441 5983 931 4557 +13221 4 2 709 26 5799 4980 5025 837 +13222 4 2 709 26 5625 673 5235 5479 +13223 4 2 709 26 758 5552 4437 5550 +13224 4 2 709 26 632 4686 5732 6031 +13225 4 2 709 26 280 5753 4505 5167 +13226 4 2 709 26 4816 4220 4421 355 +13227 4 2 709 26 4681 5808 4856 951 +13228 4 2 709 26 419 5118 4370 4994 +13229 4 2 709 26 622 6012 5712 5858 +13230 4 2 709 26 5980 208 4405 4975 +13231 4 2 709 26 279 5547 4862 4968 +13232 4 2 709 26 4569 5541 259 5127 +13233 4 2 709 26 840 5142 4745 5137 +13234 4 2 709 26 4384 342 4642 5308 +13235 4 2 709 26 5034 5071 4389 3969 +13236 4 2 709 26 6039 928 5313 5077 +13237 4 2 709 26 4901 4028 4649 4839 +13238 4 2 709 26 4428 5761 5512 847 +13239 4 2 709 26 813 4233 4958 5166 +13240 4 2 709 26 3939 4226 4516 4538 +13241 4 2 709 26 5874 623 4833 4329 +13242 4 2 709 26 5387 776 4745 5137 +13243 4 2 709 26 5812 257 4405 4820 +13244 4 2 709 26 505 5542 4450 5341 +13245 4 2 709 26 1004 4627 5920 5879 +13246 4 2 709 26 4918 413 4527 5608 +13247 4 2 709 26 5471 706 4414 4579 +13248 4 2 709 26 4028 4499 4840 4901 +13249 4 2 709 26 6060 447 4875 5055 +13250 4 2 709 26 5111 175 4849 4515 +13251 4 2 709 26 5897 938 4522 4312 +13252 4 2 709 26 5770 301 5014 5284 +13253 4 2 709 26 233 4646 4683 5007 +13254 4 2 709 26 765 5721 4615 4757 +13255 4 2 709 26 5450 555 4393 4595 +13256 4 2 709 26 5275 153 4592 4731 +13257 4 2 709 26 482 5561 4678 4817 +13258 4 2 709 26 398 5197 4496 5164 +13259 4 2 709 26 5441 4955 773 4589 +13260 4 2 709 26 968 5518 4677 5073 +13261 4 2 709 26 919 5594 4602 5161 +13262 4 2 709 26 5353 596 4801 4890 +13263 4 2 709 26 623 5874 5379 4329 +13264 4 2 709 26 751 4667 4634 5311 +13265 4 2 709 26 567 4294 4423 5531 +13266 4 2 709 26 921 5475 4726 4841 +13267 4 2 709 26 533 5731 4559 4883 +13268 4 2 709 26 4443 4972 1004 5920 +13269 4 2 709 26 5237 4750 4818 5055 +13270 4 2 709 26 4516 4217 4345 4896 +13271 4 2 709 26 269 5547 4379 4862 +13272 4 2 709 26 214 5185 4304 4592 +13273 4 2 709 26 5545 786 4615 4910 +13274 4 2 709 26 656 5006 4369 4513 +13275 4 2 709 26 965 5602 4695 4779 +13276 4 2 709 26 5404 682 4459 5302 +13277 4 2 709 26 627 5709 4603 4995 +13278 4 2 709 26 5488 4753 4852 5402 +13279 4 2 709 26 4441 5983 5495 931 +13280 4 2 709 26 710 6000 4446 5135 +13281 4 2 709 26 5323 533 4559 4883 +13282 4 2 709 26 4989 4991 5734 188 +13283 4 2 709 26 4741 3990 4397 4720 +13284 4 2 709 26 4720 5838 3990 4397 +13285 4 2 709 26 306 5780 5482 4713 +13286 4 2 709 26 4414 4104 651 5900 +13287 4 2 709 26 4217 4101 4896 4516 +13288 4 2 709 26 555 4909 4393 4595 +13289 4 2 709 26 6007 801 4416 5387 +13290 4 2 709 26 5740 790 4667 5157 +13291 4 2 709 26 829 5483 4491 4685 +13292 4 2 709 26 5109 806 5922 4614 +13293 4 2 709 26 835 5719 4299 5438 +13294 4 2 709 26 5966 331 4587 4954 +13295 4 2 709 26 5568 826 4696 4935 +13296 4 2 709 26 5782 930 5188 5281 +13297 4 2 709 26 4428 5761 847 4861 +13298 4 2 709 26 5887 775 4757 5197 +13299 4 2 709 26 658 4285 4587 5404 +13300 4 2 709 26 454 5750 4555 5015 +13301 4 2 709 26 173 5997 4523 5590 +13302 4 2 709 26 5602 970 4706 5080 +13303 4 2 709 26 947 5969 5101 5510 +13304 4 2 709 26 5461 776 4698 5387 +13305 4 2 709 26 4649 3956 4499 4901 +13306 4 2 709 26 4911 234 4718 4778 +13307 4 2 709 26 165 5291 4646 4968 +13308 4 2 709 26 4956 916 4879 5862 +13309 4 2 709 26 3983 3933 4362 4903 +13310 4 2 709 26 925 5220 5073 4811 +13311 4 2 709 26 242 5590 4523 4992 +13312 4 2 709 26 690 6058 4500 5166 +13313 4 2 709 26 842 5156 4501 4989 +13314 4 2 709 26 240 5747 4620 5409 +13315 4 2 709 26 365 4543 5507 4826 +13316 4 2 709 26 416 4875 4409 4540 +13317 4 2 709 26 679 5597 4655 4985 +13318 4 2 709 26 5965 750 4743 5644 +13319 4 2 709 26 5525 428 4421 4926 +13320 4 2 709 26 862 5719 5512 5705 +13321 4 2 709 26 5317 5717 4671 265 +13322 4 2 709 26 5552 758 4437 5263 +13323 4 2 709 26 328 5672 4918 4665 +13324 4 2 709 26 5765 565 4381 4678 +13325 4 2 709 26 5488 971 4703 5402 +13326 4 2 709 26 5193 3990 4397 4741 +13327 4 2 709 26 4277 768 4897 5038 +13328 4 2 709 26 5745 398 4496 5164 +13329 4 2 709 26 5442 410 4486 5380 +13330 4 2 709 26 995 6004 4417 5101 +13331 4 2 709 26 5329 915 4265 4681 +13332 4 2 709 26 4461 734 4690 4154 +13333 4 2 709 26 4237 549 4503 5094 +13334 4 2 709 26 4728 798 5528 4935 +13335 4 2 709 26 5931 813 5166 4233 +13336 4 2 709 26 4502 419 4370 4994 +13337 4 2 709 26 1009 4319 4802 5782 +13338 4 2 709 26 5608 413 4527 5558 +13339 4 2 709 26 925 4677 4811 5073 +13340 4 2 709 26 617 4516 4943 5789 +13341 4 2 709 26 5087 4456 4773 4162 +13342 4 2 709 26 482 5561 4817 5007 +13343 4 2 709 26 4739 5109 5328 866 +13344 4 2 709 26 570 5085 4507 5236 +13345 4 2 709 26 915 5448 4265 4681 +13346 4 2 709 26 5719 862 4489 5705 +13347 4 2 709 26 263 5443 4377 4901 +13348 4 2 709 26 4598 281 5351 4640 +13349 4 2 709 26 1000 5793 4681 4805 +13350 4 2 709 26 5953 841 4736 4855 +13351 4 2 709 26 681 5379 5209 4824 +13352 4 2 709 26 5833 562 4383 5300 +13353 4 2 709 26 5428 816 4662 4861 +13354 4 2 709 26 524 4894 4392 5715 +13355 4 2 709 26 4293 809 4589 5441 +13356 4 2 709 26 5560 819 4688 5360 +13357 4 2 709 26 5672 304 4692 4407 +13358 4 2 709 26 4522 1002 5445 4319 +13359 4 2 709 26 5990 650 4412 5135 +13360 4 2 709 26 5179 221 4226 4938 +13361 4 2 709 26 318 5745 4496 5017 +13362 4 2 709 26 5102 382 4880 5543 +13363 4 2 709 26 5606 156 5317 5547 +13364 4 2 709 26 691 5621 4285 4781 +13365 4 2 709 26 4961 4332 4825 4023 +13366 4 2 709 26 259 5276 4569 5127 +13367 4 2 709 26 235 5340 4709 5143 +13368 4 2 709 26 5007 5502 531 4670 +13369 4 2 709 26 4051 3958 4374 4498 +13370 4 2 709 26 4023 4961 4332 4874 +13371 4 2 709 26 5479 678 4686 5357 +13372 4 2 709 26 5740 790 4959 4667 +13373 4 2 709 26 5641 686 4376 4943 +13374 4 2 709 26 204 5606 4891 5342 +13375 4 2 709 26 4558 602 4738 5302 +13376 4 2 709 26 4444 5225 4281 908 +13377 4 2 709 26 4220 355 4816 5314 +13378 4 2 709 26 5168 3935 5998 4200 +13379 4 2 709 26 477 5562 4612 5303 +13380 4 2 709 26 365 5727 4826 5507 +13381 4 2 709 26 4832 885 5263 4457 +13382 4 2 709 26 5462 630 4854 4104 +13383 4 2 709 26 703 5524 4376 4943 +13384 4 2 709 26 5761 767 4480 5268 +13385 4 2 709 26 5240 5362 4468 3875 +13386 4 2 709 26 268 5829 4424 5478 +13387 4 2 709 26 4558 4738 602 5632 +13388 4 2 709 26 330 5090 4589 4955 +13389 4 2 709 26 5793 951 4681 4856 +13390 4 2 709 26 392 5380 4644 5264 +13391 4 2 709 26 3933 3983 4362 5266 +13392 4 2 709 26 957 5862 4956 5142 +13393 4 2 709 26 4848 4960 226 5576 +13394 4 2 709 26 5925 767 4480 5761 +13395 4 2 709 26 5861 6014 4516 736 +13396 4 2 709 26 4451 499 4590 5480 +13397 4 2 709 26 5342 269 4379 4862 +13398 4 2 709 26 700 5229 4309 4576 +13399 4 2 709 26 619 5712 4625 5189 +13400 4 2 709 26 4685 762 4739 4293 +13401 4 2 709 26 302 4384 4816 5314 +13402 4 2 709 26 4685 762 5922 4739 +13403 4 2 709 26 4336 213 4780 4860 +13404 4 2 709 26 3875 3894 4212 5613 +13405 4 2 709 26 5940 1006 4771 5648 +13406 4 2 709 26 4212 3894 3875 4445 +13407 4 2 709 26 4625 671 4369 5271 +13408 4 2 709 26 222 4515 5224 4239 +13409 4 2 709 26 5160 4390 756 5458 +13410 4 2 709 26 5687 679 4655 4985 +13411 4 2 709 26 5691 350 5558 4982 +13412 4 2 709 26 5812 174 4440 5678 +13413 4 2 709 26 425 5442 4430 5014 +13414 4 2 709 26 723 5471 4241 4908 +13415 4 2 709 26 833 5644 4887 4399 +13416 4 2 709 26 275 5433 4304 5185 +13417 4 2 709 26 5301 618 5911 4874 +13418 4 2 709 26 5772 5493 892 4715 +13419 4 2 709 26 3875 4468 5240 5278 +13420 4 2 709 26 5651 929 5481 4454 +13421 4 2 709 26 5525 338 4926 5978 +13422 4 2 709 26 5606 156 4828 5317 +13423 4 2 709 26 4645 3935 4200 5998 +13424 4 2 709 26 4660 412 5639 5349 +13425 4 2 709 26 4930 5735 633 4928 +13426 4 2 709 26 5094 549 4503 4998 +13427 4 2 709 26 4664 6020 4948 536 +13428 4 2 709 26 4423 4799 554 5378 +13429 4 2 709 26 4897 818 4277 5454 +13430 4 2 709 26 6031 690 4500 4977 +13431 4 2 709 26 5606 300 5829 4828 +13432 4 2 709 26 5195 5663 4402 5121 +13433 4 2 709 26 4423 554 4799 6049 +13434 4 2 709 26 269 5606 4379 5547 +13435 4 2 709 26 5900 595 4241 5030 +13436 4 2 709 26 342 5308 4384 5051 +13437 4 2 709 26 508 6052 5106 4368 +13438 4 2 709 26 4981 700 4309 4576 +13439 4 2 709 26 257 5215 4405 4820 +13440 4 2 709 26 5559 627 4603 4995 +13441 4 2 709 26 5709 627 4603 4948 +13442 4 2 709 26 995 5220 4417 6004 +13443 4 2 709 26 5531 522 4294 4684 +13444 4 2 709 26 5087 4456 4953 4773 +13445 4 2 709 26 4280 516 4600 5626 +13446 4 2 709 26 924 5461 4850 5137 +13447 4 2 709 26 4499 4028 4649 4901 +13448 4 2 709 26 394 5176 4647 4869 +13449 4 2 709 26 5181 501 4401 5131 +13450 4 2 709 26 3958 4051 4374 5093 +13451 4 2 709 26 5118 419 4370 5022 +13452 4 2 709 26 6036 913 4931 4319 +13453 4 2 709 26 600 4322 4800 4023 +13454 4 2 709 26 6067 472 4402 4190 +13455 4 2 709 26 4285 611 5298 4459 +13456 4 2 709 26 854 5799 4489 5705 +13457 4 2 709 26 190 5753 5167 4905 +13458 4 2 709 26 5551 379 4652 5235 +13459 4 2 709 26 259 5921 4569 5021 +13460 4 2 709 26 5887 775 5197 4688 +13461 4 2 709 26 4087 718 4513 4990 +13462 4 2 709 26 835 5438 4299 4827 +13463 4 2 709 26 557 5106 4356 4945 +13464 4 2 709 26 5966 331 4954 5581 +13465 4 2 709 26 4752 4675 236 5340 +13466 4 2 709 26 5271 656 4369 4513 +13467 4 2 709 26 335 5466 4659 4933 +13468 4 2 709 26 5941 221 4226 5179 +13469 4 2 709 26 5433 275 4304 4768 +13470 4 2 709 26 234 5585 4718 4778 +13471 4 2 709 26 5124 5313 900 5781 +13472 4 2 709 26 5747 183 4606 5409 +13473 4 2 709 26 5542 485 4783 5341 +13474 4 2 709 26 686 5641 4376 5144 +13475 4 2 709 26 5791 195 4888 4975 +13476 4 2 709 26 6066 863 4390 5400 +13477 4 2 709 26 4701 795 5171 4251 +13478 4 2 709 26 4072 491 4595 4909 +13479 4 2 709 26 823 6010 4667 5734 +13480 4 2 709 26 508 5406 4368 5106 +13481 4 2 709 26 306 5780 4713 4808 +13482 4 2 709 26 331 5966 4853 5581 +13483 4 2 709 26 5167 544 4760 5162 +13484 4 2 709 26 4936 333 4602 5369 +13485 4 2 709 26 858 4682 4380 5324 +13486 4 2 709 26 5021 178 4394 4960 +13487 4 2 709 26 930 5772 5188 5281 +13488 4 2 709 26 5846 541 4996 5532 +13489 4 2 709 26 5003 478 4600 4914 +13490 4 2 709 26 5680 3935 4645 5366 +13491 4 2 709 26 5816 669 4691 4478 +13492 4 2 709 26 461 4362 4392 4894 +13493 4 2 709 26 6066 836 4754 5160 +13494 4 2 709 26 515 5656 4914 5003 +13495 4 2 709 26 6039 928 4865 5879 +13496 4 2 709 26 4237 538 4447 4909 +13497 4 2 709 26 4001 4899 4763 4786 +13498 4 2 709 26 6050 155 4820 4351 +13499 4 2 709 26 155 4351 5215 4820 +13500 4 2 709 26 5464 5458 838 4614 +13501 4 2 709 26 5667 484 4794 5174 +13502 4 2 709 26 962 6036 4931 4315 +13503 4 2 709 26 4748 4899 4001 4786 +13504 4 2 709 26 5510 947 4382 5101 +13505 4 2 709 26 4501 4395 849 5700 +13506 4 2 709 26 4914 186 4600 5145 +13507 4 2 709 26 748 5441 4491 4904 +13508 4 2 709 26 302 6023 4816 4384 +13509 4 2 709 26 653 5860 5530 5353 +13510 4 2 709 26 5111 5961 267 5838 +13511 4 2 709 26 5417 4958 5888 624 +13512 4 2 709 26 690 5166 4500 4977 +13513 4 2 709 26 335 5318 4792 4933 +13514 4 2 709 26 484 5667 4717 5174 +13515 4 2 709 26 4520 4995 4800 685 +13516 4 2 709 26 867 6010 4501 5700 +13517 4 2 709 26 795 4701 5092 4251 +13518 4 2 709 26 4760 471 4553 5656 +13519 4 2 709 26 688 5006 4558 4908 +13520 4 2 709 26 238 5291 4677 5172 +13521 4 2 709 26 4623 962 4931 4315 +13522 4 2 709 26 5308 386 4466 5051 +13523 4 2 709 26 264 5757 4714 4891 +13524 4 2 709 26 4781 5687 4985 631 +13525 4 2 709 26 4841 987 4286 4726 +13526 4 2 709 26 678 5479 4686 4984 +13527 4 2 709 26 608 4154 4461 4637 +13528 4 2 709 26 3935 4174 4200 5168 +13529 4 2 709 26 4374 707 4668 5353 +13530 4 2 709 26 186 5553 4600 5145 +13531 4 2 709 26 5340 235 4709 4905 +13532 4 2 709 26 704 5811 4310 4990 +13533 4 2 709 26 5518 968 4677 5172 +13534 4 2 709 26 4282 999 4544 5232 +13535 4 2 709 26 5189 701 4987 4329 +13536 4 2 709 26 5124 5313 4627 900 +13537 4 2 709 26 382 4666 5543 5102 +13538 4 2 709 26 818 4591 4277 5454 +13539 4 2 709 26 712 4154 4997 5911 +13540 4 2 709 26 5634 4668 689 5253 +13541 4 2 709 26 161 5351 4377 4598 +13542 4 2 709 26 836 5486 4754 5160 +13543 4 2 709 26 5025 4001 5799 769 +13544 4 2 709 26 5443 161 4377 4598 +13545 4 2 709 26 250 4671 4817 5646 +13546 4 2 709 26 6061 601 4376 5208 +13547 4 2 709 26 776 5461 5137 5387 +13548 4 2 709 26 4551 448 4799 5175 +13549 4 2 709 26 5605 530 4709 5143 +13550 4 2 709 26 858 5611 4380 5618 +13551 4 2 709 26 5562 560 4190 4917 +13552 4 2 709 26 5829 281 4640 4828 +13553 4 2 709 26 352 5736 5264 4535 +13554 4 2 709 26 5377 454 4555 5015 +13555 4 2 709 26 964 5116 4766 5950 +13556 4 2 709 26 630 5462 4916 4104 +13557 4 2 709 26 271 5459 4336 4780 +13558 4 2 709 26 798 6054 4728 5528 +13559 4 2 709 26 5329 1000 4681 4805 +13560 4 2 709 26 5298 691 4285 4781 +13561 4 2 709 26 5953 833 4887 4399 +13562 4 2 709 26 5765 5626 535 4280 +13563 4 2 709 26 4401 4510 575 5181 +13564 4 2 709 26 5736 326 5264 5556 +13565 4 2 709 26 6049 448 4799 4551 +13566 4 2 709 26 4523 173 4785 5997 +13567 4 2 709 26 5150 321 4653 5051 +13568 4 2 709 26 4678 5195 5561 507 +13569 4 2 709 26 5829 268 4424 5398 +13570 4 2 709 26 256 4810 4397 4720 +13571 4 2 709 26 5387 801 4416 4745 +13572 4 2 709 26 5528 5517 798 5324 +13573 4 2 709 26 556 5904 4401 5131 +13574 4 2 709 26 5208 601 4376 5144 +13575 4 2 709 26 606 4758 4650 4929 +13576 4 2 709 26 4407 361 5098 5827 +13577 4 2 709 26 4896 4563 5139 4193 +13578 4 2 709 26 3933 3983 4364 4178 +13579 4 2 709 26 5101 997 4382 4802 +13580 4 2 709 26 4757 765 4410 4615 +13581 4 2 709 26 793 5171 5925 4348 +13582 4 2 709 26 203 5398 4475 4731 +13583 4 2 709 26 225 4640 4598 5891 +13584 4 2 709 26 5298 631 4781 4985 +13585 4 2 709 26 5281 5101 5782 995 +13586 4 2 709 26 5911 4154 5892 712 +13587 4 2 709 26 383 5978 4655 4926 +13588 4 2 709 26 595 5030 4833 4241 +13589 4 2 709 26 881 5517 4656 4870 +13590 4 2 709 26 163 5405 4723 4991 +13591 4 2 709 26 1010 5564 4422 5104 +13592 4 2 709 26 5751 941 5112 5158 +13593 4 2 709 26 5303 4008 4612 4524 +13594 4 2 709 26 4354 456 4883 5535 +13595 4 2 709 26 5281 5101 995 4417 +13596 4 2 709 26 4277 860 4512 5552 +13597 4 2 709 26 5193 4253 4397 3990 +13598 4 2 709 26 5029 679 4655 5687 +13599 4 2 709 26 5838 256 4720 5576 +13600 4 2 709 26 4445 4212 4324 3875 +13601 4 2 709 26 4918 395 5608 5672 +13602 4 2 709 26 5813 5966 331 4587 +13603 4 2 709 26 4832 849 4395 4591 +13604 4 2 709 26 5482 306 4713 5090 +13605 4 2 709 26 551 5750 4553 5003 +13606 4 2 709 26 383 5029 4655 5687 +13607 4 2 709 26 459 4689 4670 5502 +13608 4 2 709 26 5731 543 4510 5150 +13609 4 2 709 26 4293 843 4739 5318 +13610 4 2 709 26 361 5821 4407 5098 +13611 4 2 709 26 4520 708 4412 5049 +13612 4 2 709 26 552 4354 4580 5535 +13613 4 2 709 26 5149 904 4493 5142 +13614 4 2 709 26 860 4277 4512 5038 +13615 4 2 709 26 5507 5813 4543 405 +13616 4 2 709 26 985 5094 4881 4998 +13617 4 2 709 26 189 5941 4538 4847 +13618 4 2 709 26 4701 859 4348 5171 +13619 4 2 709 26 4414 651 4104 4854 +13620 4 2 709 26 5764 4412 5414 708 +13621 4 2 709 26 4640 225 5398 5891 +13622 4 2 709 26 708 4520 4412 5414 +13623 4 2 709 26 966 5769 4689 4942 +13624 4 2 709 26 5860 5816 719 4420 +13625 4 2 709 26 281 4640 4828 5351 +13626 4 2 709 26 962 4522 4623 4931 +13627 4 2 709 26 5172 56 6084 1030 +13628 4 2 709 26 5920 1006 5648 4771 +13629 4 2 709 26 4743 5752 831 4956 +13630 4 2 709 26 5200 5605 4669 529 +13631 4 2 709 26 704 4990 4310 4513 +13632 4 2 709 26 4896 3939 4345 4516 +13633 4 2 709 26 752 5560 4940 5092 +13634 4 2 709 26 772 4233 4588 4958 +13635 4 2 709 26 5671 671 4369 4625 +13636 4 2 709 26 5790 323 4409 4540 +13637 4 2 709 26 5475 921 4695 5184 +13638 4 2 709 26 3939 4101 4516 4896 +13639 4 2 709 26 5172 56 297 6084 +13640 4 2 709 26 5102 443 4666 5432 +13641 4 2 709 26 4377 5814 245 4901 +13642 4 2 709 26 4501 849 4395 4832 +13643 4 2 709 26 4354 552 4580 5697 +13644 4 2 709 26 522 5804 4684 5531 +13645 4 2 709 26 5524 668 4345 4943 +13646 4 2 709 26 332 5995 4608 5234 +13647 4 2 709 26 4253 5838 4397 3990 +13648 4 2 709 26 351 4527 5284 4371 +13649 4 2 709 26 571 5131 4449 4590 +13650 4 2 709 26 4908 607 4369 5671 +13651 4 2 709 26 563 5881 4551 5350 +13652 4 2 709 26 5764 4412 708 5135 +13653 4 2 709 26 5370 799 4410 4757 +13654 4 2 709 26 221 5941 4226 5204 +13655 4 2 709 26 6037 771 4949 4606 +13656 4 2 709 26 662 5844 4588 5629 +13657 4 2 709 26 4871 859 4348 4701 +13658 4 2 709 26 619 5189 4625 4329 +13659 4 2 709 26 5656 551 4553 5003 +13660 4 2 709 26 5175 4262 509 4680 +13661 4 2 709 26 628 4309 4023 5301 +13662 4 2 709 26 5730 961 4573 4771 +13663 4 2 709 26 481 5702 4998 4969 +13664 4 2 709 26 481 4503 4998 5702 +13665 4 2 709 26 5859 325 4554 5821 +13666 4 2 709 26 4251 752 4940 5092 +13667 4 2 709 26 779 5950 5311 4855 +13668 4 2 709 26 1005 5077 4388 4638 +13669 4 2 709 26 4921 477 4612 5303 +13670 4 2 709 26 5507 5813 320 5525 +13671 4 2 709 26 5528 5517 4935 798 +13672 4 2 709 26 5651 894 4573 5481 +13673 4 2 709 26 4827 5595 4562 852 +13674 4 2 709 26 4999 4612 4008 4524 +13675 4 2 709 26 839 4782 4289 4682 +13676 4 2 709 26 5098 4652 441 4916 +13677 4 2 709 26 5466 335 4792 4933 +13678 4 2 709 26 521 4362 4590 5372 +13679 4 2 709 26 5379 599 4478 4824 +13680 4 2 709 26 5478 5275 4424 260 +13681 4 2 709 26 5718 4251 799 4410 +13682 4 2 709 26 818 4277 4591 5552 +13683 4 2 709 26 5594 919 4602 4936 +13684 4 2 709 26 981 5188 4319 5782 +13685 4 2 709 26 864 5454 4399 5214 +13686 4 2 709 26 892 5793 4715 5042 +13687 4 2 709 26 5291 238 4677 4968 +13688 4 2 709 26 825 5560 4686 5357 +13689 4 2 709 26 676 4650 4778 4911 +13690 4 2 709 26 701 4478 4987 5379 +13691 4 2 709 26 183 5747 4606 4949 +13692 4 2 709 26 4319 913 4931 4522 +13693 4 2 709 26 4510 488 5181 5460 +13694 4 2 709 26 6014 4752 4847 674 +13695 4 2 709 26 4218 294 4675 4905 +13696 4 2 709 26 221 5321 4226 4938 +13697 4 2 709 26 4104 630 4694 4916 +13698 4 2 709 26 5008 209 4538 4218 +13699 4 2 709 26 783 5993 4827 5611 +13700 4 2 709 26 80 5625 6080 741 +13701 4 2 709 26 5887 4251 752 4940 +13702 4 2 709 26 917 5493 4605 5042 +13703 4 2 709 26 5799 4980 837 4626 +13704 4 2 709 26 858 4380 4682 5618 +13705 4 2 709 26 5405 5734 4991 237 +13706 4 2 709 26 4692 4407 415 5859 +13707 4 2 709 26 485 5249 4783 5341 +13708 4 2 709 26 332 5995 4944 4608 +13709 4 2 709 26 5526 719 4420 4929 +13710 4 2 709 26 856 5718 4410 4910 +13711 4 2 709 26 3933 3983 4178 4903 +13712 4 2 709 26 5813 5966 4853 331 +13713 4 2 709 26 190 5797 4709 5167 +13714 4 2 709 26 301 4430 5770 5014 +13715 4 2 709 26 5543 383 4655 4926 +13716 4 2 709 26 5606 269 4379 5342 +13717 4 2 709 26 4212 4324 3875 4541 +13718 4 2 709 26 4289 807 5618 4588 +13719 4 2 709 26 1031 5772 4805 5188 +13720 4 2 709 26 5493 892 4715 5042 +13721 4 2 709 26 567 6049 4423 5068 +13722 4 2 709 26 5445 5188 903 5714 +13723 4 2 709 26 892 5772 4715 4805 +13724 4 2 709 26 4382 908 4444 5420 +13725 4 2 709 26 5797 235 4709 5143 +13726 4 2 709 26 4930 5735 4669 677 +13727 4 2 709 26 3969 4302 4265 4331 +13728 4 2 709 26 5793 892 4715 4805 +13729 4 2 709 26 4714 264 4891 5342 +13730 4 2 709 26 5671 723 4241 4908 +13731 4 2 709 26 1014 5751 4493 5158 +13732 4 2 709 26 5750 454 4555 5003 +13733 4 2 709 26 571 4451 4449 5173 +13734 4 2 709 26 5888 5417 681 4824 +13735 4 2 709 26 4758 675 4870 4929 +13736 4 2 709 26 80 5625 445 6080 +13737 4 2 709 26 3969 4265 4302 5034 +13738 4 2 709 26 5904 521 4362 4590 +13739 4 2 709 26 4535 411 5192 5264 +13740 4 2 709 26 4633 5464 857 4416 +13741 4 2 709 26 885 4457 4748 5263 +13742 4 2 709 26 159 5459 4780 4992 +13743 4 2 709 26 5181 488 4747 5102 +13744 4 2 709 26 405 5813 4543 4853 +13745 4 2 709 26 5926 163 4723 4991 +13746 4 2 709 26 5829 5606 4891 229 +13747 4 2 709 26 5398 260 4424 4731 +13748 4 2 709 26 4446 710 5298 6000 +13749 4 2 709 26 396 5581 4519 5169 +13750 4 2 709 26 586 4254 4717 5667 +13751 4 2 709 26 4812 540 4275 5696 +13752 4 2 709 26 4315 1032 5495 4623 +13753 4 2 709 26 5006 704 4310 4513 +13754 4 2 709 26 6049 568 4551 5350 +13755 4 2 709 26 5549 193 4671 4817 +13756 4 2 709 26 557 5256 4356 5106 +13757 4 2 709 26 260 5275 4424 4731 +13758 4 2 709 26 418 5977 4408 5118 +13759 4 2 709 26 4294 567 4423 5068 +13760 4 2 709 26 626 5571 4596 5144 +13761 4 2 709 26 5426 327 4222 4647 +13762 4 2 709 26 454 5750 5015 5236 +13763 4 2 709 26 4983 231 4699 4723 +13764 4 2 709 26 719 5860 4420 4929 +13765 4 2 709 26 837 5952 4626 4980 +13766 4 2 709 26 5626 5377 454 4555 +13767 4 2 709 26 5789 695 4516 5179 +13768 4 2 709 26 5564 963 4337 4557 +13769 4 2 709 26 829 4293 4685 5441 +13770 4 2 709 26 530 5797 4709 5143 +13771 4 2 709 26 4051 4372 4135 4829 +13772 4 2 709 26 327 5426 4222 5230 +13773 4 2 709 26 531 5561 5007 4670 +13774 4 2 709 26 4331 3969 5071 4265 +13775 4 2 709 26 713 5671 4329 4625 +13776 4 2 709 26 4981 722 4576 4930 +13777 4 2 709 26 4896 5139 4563 4755 +13778 4 2 709 26 353 5349 4370 5022 +13779 4 2 709 26 4466 4644 308 5308 +13780 4 2 709 26 677 5572 4669 4930 +13781 4 2 709 26 4890 717 4801 5858 +13782 4 2 709 26 756 5458 4390 5147 +13783 4 2 709 26 5177 401 4502 5001 +13784 4 2 709 26 5253 191 4785 4911 +13785 4 2 709 26 172 5646 5553 4671 +13786 4 2 709 26 710 5135 4446 4574 +13787 4 2 709 26 963 5282 4337 4557 +13788 4 2 709 26 5951 961 4573 5651 +13789 4 2 709 26 4444 5225 908 4382 +13790 4 2 709 26 454 5626 4555 5003 +13791 4 2 709 26 5034 5071 3969 4265 +13792 4 2 709 26 842 5642 4501 5156 +13793 4 2 709 26 4282 4544 999 4769 +13794 4 2 709 26 599 5417 4478 4824 +13795 4 2 709 26 622 5858 5189 4478 +13796 4 2 709 26 4633 857 4745 4416 +13797 4 2 709 26 4848 4960 4394 226 +13798 4 2 709 26 5757 247 4714 5364 +13799 4 2 709 26 416 5055 4409 4875 +13800 4 2 709 26 4736 5214 864 4399 +13801 4 2 709 26 4792 4528 418 4408 +13802 4 2 709 26 5590 184 4596 5321 +13803 4 2 709 26 459 4689 4925 4670 +13804 4 2 709 26 5872 247 5364 4714 +13805 4 2 709 26 783 5611 4827 4626 +13806 4 2 709 26 4646 233 4683 5291 +13807 4 2 709 26 4313 291 4314 5204 +13808 4 2 709 26 5442 362 5380 5397 +13809 4 2 709 26 4446 5298 710 4459 +13810 4 2 709 26 984 4638 5177 5871 +13811 4 2 709 26 929 5651 4599 4454 +13812 4 2 709 26 190 5167 4709 4905 +13813 4 2 709 26 4521 905 5281 5772 +13814 4 2 709 26 707 5353 4374 4890 +13815 4 2 709 26 4451 571 4449 4590 +13816 4 2 709 26 4785 266 4523 4413 +13817 4 2 709 26 1005 5112 4388 4865 +13818 4 2 709 26 887 5897 4124 5386 +13819 4 2 709 26 342 6023 4384 4642 +13820 4 2 709 26 5328 780 4791 4933 +13821 4 2 709 26 4457 747 4748 4201 +13822 4 2 709 26 4283 907 4454 5579 +13823 4 2 709 26 5939 742 5005 5705 +13824 4 2 709 26 832 5931 4871 4233 +13825 4 2 709 26 351 4527 4371 4918 +13826 4 2 709 26 939 5798 4534 5679 +13827 4 2 709 26 4394 230 4592 5275 +13828 4 2 709 26 4329 701 4987 5379 +13829 4 2 709 26 1027 5408 4703 5402 +13830 4 2 709 26 5597 603 4693 4985 +13831 4 2 709 26 4392 497 4551 5175 +13832 4 2 709 26 4743 750 4754 5644 +13833 4 2 709 26 5357 5732 678 4686 +13834 4 2 709 26 5705 742 5005 5512 +13835 4 2 709 26 333 4936 4660 5369 +13836 4 2 709 26 917 5042 4605 4912 +13837 4 2 709 26 4466 308 4644 5192 +13838 4 2 709 26 536 5322 4948 4664 +13839 4 2 709 26 5357 5732 4686 825 +13840 4 2 709 26 528 4969 4998 4706 +13841 4 2 709 26 6037 183 4606 4949 +13842 4 2 709 26 4743 4754 750 5486 +13843 4 2 709 26 522 4900 4294 4684 +13844 4 2 709 26 488 5460 5102 5181 +13845 4 2 709 26 984 5177 4638 5001 +13846 4 2 709 26 5718 4251 5171 799 +13847 4 2 709 26 603 5990 4693 4985 +13848 4 2 709 26 42 5734 282 6070 +13849 4 2 709 26 5549 193 4817 5007 +13850 4 2 709 26 6058 610 4500 5209 +13851 4 2 709 26 5426 394 4647 4869 +13852 4 2 709 26 4817 547 4280 4678 +13853 4 2 709 26 935 4689 5069 5518 +13854 4 2 709 26 5454 746 4591 5214 +13855 4 2 709 26 5892 665 4087 4874 +13856 4 2 709 26 340 5249 4732 5237 +13857 4 2 709 26 856 4910 4410 4615 +13858 4 2 709 26 595 5874 4833 5030 +13859 4 2 709 26 4201 5347 850 5025 +13860 4 2 709 26 1027 5158 4703 5408 +13861 4 2 709 26 4558 620 4310 5006 +13862 4 2 709 26 5321 221 4226 5204 +13863 4 2 709 26 376 5736 5055 5556 +13864 4 2 709 26 4417 905 4521 5220 +13865 4 2 709 26 5532 5256 4356 490 +13866 4 2 709 26 950 4315 4444 5420 +13867 4 2 709 26 4699 898 4663 4766 +13868 4 2 709 26 970 4998 4978 4706 +13869 4 2 709 26 5533 5808 5071 946 +13870 4 2 709 26 230 4394 4592 5021 +13871 4 2 709 26 4562 772 4233 4588 +13872 4 2 709 26 4657 312 4732 4249 +13873 4 2 709 26 5603 982 4283 5579 +13874 4 2 709 26 5532 490 4356 5052 +13875 4 2 709 26 296 5549 4646 5007 +13876 4 2 709 26 5897 887 4124 5232 +13877 4 2 709 26 364 5017 4665 4808 +13878 4 2 709 26 4665 328 4808 4918 +13879 4 2 709 26 33 5057 6081 883 +13880 4 2 709 26 6021 429 4750 4783 +13881 4 2 709 26 5645 918 4524 4921 +13882 4 2 709 26 586 4254 5667 5131 +13883 4 2 709 26 4886 524 4392 5715 +13884 4 2 709 26 586 4254 4747 4717 +13885 4 2 709 26 4677 194 4811 4968 +13886 4 2 709 26 4785 191 4718 4911 +13887 4 2 709 26 501 5131 5181 4747 +13888 4 2 709 26 5525 373 5621 5813 +13889 4 2 709 26 4999 4524 4315 4444 +13890 4 2 709 26 5360 81 445 6080 +13891 4 2 709 26 5671 713 4329 4833 +13892 4 2 709 26 1004 4627 4443 5920 +13893 4 2 709 26 628 4874 5301 4023 +13894 4 2 709 26 323 5790 4409 5233 +13895 4 2 709 26 4251 799 4410 5370 +13896 4 2 709 26 5360 81 6080 882 +13897 4 2 709 26 4407 356 5827 5894 +13898 4 2 709 26 5900 706 4414 4241 +13899 4 2 709 26 4999 4612 4524 4444 +13900 4 2 709 26 207 5547 4206 5317 +13901 4 2 709 26 4401 4510 4559 575 +13902 4 2 709 26 3891 4051 4135 4829 +13903 4 2 709 26 528 4969 4706 5470 +13904 4 2 709 26 4558 4310 620 5374 +13905 4 2 709 26 4862 194 4968 4811 +13906 4 2 709 26 4812 4275 540 4595 +13907 4 2 709 26 5237 429 4783 4750 +13908 4 2 709 26 5634 4668 5571 689 +13909 4 2 709 26 669 5858 4478 5816 +13910 4 2 709 26 5560 5092 825 4686 +13911 4 2 709 26 672 5597 4693 4775 +13912 4 2 709 26 166 4848 5364 4353 +13913 4 2 709 26 6012 724 4637 4890 +13914 4 2 709 26 4693 634 4794 5049 +13915 4 2 709 26 532 5706 4747 4880 +13916 4 2 709 26 33 5057 298 6081 +13917 4 2 709 26 227 4343 4901 6056 +13918 4 2 709 26 157 4316 4654 5008 +13919 4 2 709 26 768 5038 4754 4897 +13920 4 2 709 26 4760 4553 471 4368 +13921 4 2 709 26 634 4693 4794 5174 +13922 4 2 709 26 867 4634 6010 5700 +13923 4 2 709 26 718 4087 4513 5271 +13924 4 2 709 26 192 4106 4983 5521 +13925 4 2 709 26 528 5470 4706 5080 +13926 4 2 709 26 4116 341 4994 5622 +13927 4 2 709 26 4930 722 4576 4928 +13928 4 2 709 26 4459 710 4446 4574 +13929 4 2 709 26 4281 956 5635 4612 +13930 4 2 709 26 4562 828 4588 5993 +13931 4 2 709 26 4285 682 4459 5404 +13932 4 2 709 26 362 5442 5014 5397 +13933 4 2 709 26 867 4989 4501 6010 +13934 4 2 709 26 6078 104 438 6022 +13935 4 2 709 26 4908 4369 607 5006 +13936 4 2 709 26 5829 229 4891 5478 +13937 4 2 709 26 5533 1023 4663 4983 +13938 4 2 709 26 801 6007 4416 5464 +13939 4 2 709 26 6078 57 6022 438 +13940 4 2 709 26 610 5577 4500 5209 +13941 4 2 709 26 6060 376 5055 5556 +13942 4 2 709 26 5104 996 4557 4441 +13943 4 2 709 26 4377 5814 4914 245 +13944 4 2 709 26 241 4714 4863 5342 +13945 4 2 709 26 4849 222 4239 4515 +13946 4 2 709 26 231 5405 4699 4723 +13947 4 2 709 26 255 5791 4888 5678 +13948 4 2 709 26 4443 5386 887 4124 +13949 4 2 709 26 920 5999 4978 4998 +13950 4 2 709 26 227 4901 4343 4654 +13951 4 2 709 26 760 5762 4728 5347 +13952 4 2 709 26 715 4023 4309 5229 +13953 4 2 709 26 5881 497 4551 4392 +13954 4 2 709 26 818 5552 4591 5263 +13955 4 2 709 26 5158 924 4850 5137 +13956 4 2 709 26 5102 532 4747 4880 +13957 4 2 709 26 341 4116 5001 5402 +13958 4 2 709 26 4992 197 5459 4523 +13959 4 2 709 26 4476 5313 4892 895 +13960 4 2 709 26 629 4929 4782 4870 +13961 4 2 709 26 709 5414 4332 4800 +13962 4 2 709 26 542 6052 4507 5256 +13963 4 2 709 26 6066 768 5038 4754 +13964 4 2 709 26 6057 455 561 5846 +13965 4 2 709 26 1004 4443 4627 5124 +13966 4 2 709 26 4246 4996 542 5256 +13967 4 2 709 26 4860 258 4316 5945 +13968 4 2 709 26 4262 509 4680 5427 +13969 4 2 709 26 6054 805 865 5347 +13970 4 2 709 26 189 4675 4847 4538 +13971 4 2 709 26 1003 4265 4544 5329 +13972 4 2 709 26 358 6029 443 5432 +13973 4 2 709 26 4249 312 4732 5237 +13974 4 2 709 26 4023 715 4322 5229 +13975 4 2 709 26 5417 702 4478 4691 +13976 4 2 709 26 5197 5894 426 4496 +13977 4 2 709 26 4925 5561 585 4670 +13978 4 2 709 26 4106 192 4515 5521 +13979 4 2 709 26 143 5950 6075 1018 +13980 4 2 709 26 5517 778 4682 4782 +13981 4 2 709 26 336 5460 4653 5102 +13982 4 2 709 26 5174 672 4693 4775 +13983 4 2 709 26 4626 835 4299 4827 +13984 4 2 709 26 565 4684 4381 5195 +13985 4 2 709 26 1023 5533 4663 5116 +13986 4 2 709 26 4283 907 5037 4454 +13987 4 2 709 26 779 5311 4736 4855 +13988 4 2 709 26 6078 57 589 6022 +13989 4 2 709 26 6078 104 6022 1029 +13990 4 2 709 26 5249 340 4783 5237 +13991 4 2 709 26 6052 570 4507 4553 +13992 4 2 709 26 4748 850 5025 4201 +13993 4 2 709 26 5691 5608 316 4941 +13994 4 2 709 26 928 4388 5077 6039 +13995 4 2 709 26 4848 166 4394 4353 +13996 4 2 709 26 4992 159 4314 4780 +13997 4 2 709 26 5894 318 4496 5017 +13998 4 2 709 26 5517 778 4782 4870 +13999 4 2 709 26 5432 336 4653 5102 +14000 4 2 709 26 905 4417 4521 5281 +14001 4 2 709 26 928 4388 6039 4865 +14002 4 2 709 26 4387 418 4408 5118 +14003 4 2 709 26 5719 835 4299 4626 +14004 4 2 709 26 996 5104 5999 4441 +14005 4 2 709 26 245 4914 4377 5145 +14006 4 2 709 26 4645 4200 3935 5680 +14007 4 2 709 26 4443 5232 999 4282 +14008 4 2 709 26 996 4881 4441 5999 +14009 4 2 709 26 5276 259 4569 4960 +14010 4 2 709 26 5037 982 4283 4855 +14011 4 2 709 26 693 5559 4794 5049 +14012 4 2 709 26 307 4853 4306 4941 +14013 4 2 709 26 5530 739 4650 4929 +14014 4 2 709 26 4752 4675 4847 236 +14015 4 2 709 26 5518 966 4689 4942 +14016 4 2 709 26 5559 693 4794 5633 +14017 4 2 709 26 837 5025 6054 4980 +14018 4 2 709 26 935 5069 1030 5172 +14019 4 2 709 26 4351 266 4413 4523 +14020 4 2 709 26 920 4881 5999 4998 +14021 4 2 709 26 5364 5757 166 4353 +14022 4 2 709 26 266 6050 4523 4351 +14023 4 2 709 26 327 5349 4222 4647 +14024 4 2 709 26 980 4265 4599 4769 +14025 4 2 709 26 5926 4106 4723 192 +14026 4 2 709 26 5571 683 4498 5144 +14027 4 2 709 26 5408 926 4638 5001 +14028 4 2 709 26 706 5471 4414 4241 +14029 4 2 709 26 4116 341 4753 5402 +14030 4 2 709 26 629 5526 4782 4929 +14031 4 2 709 26 542 4507 4246 5256 +14032 4 2 709 26 4306 307 4543 4853 +14033 4 2 709 26 5314 417 4384 4653 +14034 4 2 709 26 5318 780 4739 4933 +14035 4 2 709 26 780 5328 4739 4933 +14036 4 2 709 26 4748 769 4001 5025 +14037 4 2 709 26 4443 5232 4124 887 +14038 4 2 709 26 5197 5894 4934 426 +14039 4 2 709 26 791 5939 848 5550 +14040 4 2 709 26 377 4222 5022 4387 +14041 4 2 709 26 6056 176 280 4505 +14042 4 2 709 26 5179 695 4516 4847 +14043 4 2 709 26 5037 943 5116 4205 +14044 4 2 709 26 479 5995 4608 4944 +14045 4 2 709 26 3975 598 4749 5301 +14046 4 2 709 26 5995 479 4608 5535 +14047 4 2 709 26 598 3975 4749 5778 +14048 4 2 709 26 5530 636 4668 5253 +14049 4 2 709 26 4684 452 4900 5195 +14050 4 2 709 26 5464 5458 5160 838 +14051 4 2 709 26 916 5579 4611 4879 +14052 4 2 709 26 565 4678 5195 4381 +14053 4 2 709 26 417 5051 4384 4653 +14054 4 2 709 26 5461 150 869 6073 +14055 4 2 709 26 961 4771 5951 4573 +14056 4 2 709 26 4888 777 4728 4935 +14057 4 2 709 26 42 5734 6070 876 +14058 4 2 709 26 5736 4750 4535 420 +14059 4 2 709 26 4553 570 4507 5236 +14060 4 2 709 26 503 5195 4925 4402 +14061 4 2 709 26 406 5894 4385 5017 +14062 4 2 709 26 5349 327 4222 5022 +14063 4 2 709 26 266 4351 4413 5215 +14064 4 2 709 26 6020 470 536 5052 +14065 4 2 709 26 4692 316 5608 4941 +14066 4 2 709 26 166 4729 4353 5757 +14067 4 2 709 26 4528 344 4387 5780 +14068 4 2 709 26 166 4729 4394 4353 +14069 4 2 709 26 961 5951 4771 4972 +14070 4 2 709 26 4190 500 4900 4917 +14071 4 2 709 26 922 5950 4855 5116 +14072 4 2 709 26 524 5881 4886 4392 +14073 4 2 709 26 6079 44 5740 293 +14074 4 2 709 26 6079 44 884 5740 +14075 4 2 709 26 5923 169 240 4810 +14076 4 2 709 26 613 4374 4668 5571 +14077 4 2 709 26 540 5881 4275 5696 +14078 4 2 709 26 6058 657 681 5888 +14079 4 2 709 26 5143 20 6077 591 +14080 4 2 709 26 5143 20 299 6077 +14081 4 2 709 26 192 4106 4723 4983 +14082 4 2 709 26 5417 4958 624 4588 +14083 4 2 709 26 6029 313 443 4666 +14084 4 2 709 26 5080 116 589 6078 +14085 4 2 709 26 542 4246 4507 5085 +14086 4 2 709 26 294 4218 4675 4538 +14087 4 2 709 26 649 5860 4929 5530 +14088 4 2 709 26 5080 116 6078 1029 +14089 4 2 709 26 5443 227 4654 4901 +14090 4 2 709 26 341 4116 4753 5622 +14091 4 2 709 26 4543 4306 4826 307 +14092 4 2 709 26 492 5804 592 5377 +14093 4 2 709 26 4956 916 4611 4879 +14094 4 2 709 26 6010 823 4667 4634 +14095 4 2 709 26 5219 377 4387 5230 +14096 4 2 709 26 259 5021 4569 4960 +14097 4 2 709 26 140 5357 741 6080 +14098 4 2 709 26 739 5530 4650 4911 +14099 4 2 709 26 140 5357 6080 882 +14100 4 2 709 26 5705 791 4001 5550 +14101 4 2 709 26 5549 296 4646 4968 +14102 4 2 709 26 4888 4975 232 4696 +14103 4 2 709 26 5648 5751 992 5112 +14104 4 2 709 26 5167 5406 4760 486 +14105 4 2 709 26 527 4925 4689 5769 +14106 4 2 709 26 683 5208 4498 5144 +14107 4 2 709 26 4190 566 4402 4900 +14108 4 2 709 26 307 4306 4826 4941 +14109 4 2 709 26 4599 980 4769 5651 +14110 4 2 709 26 5445 5188 4319 903 +14111 4 2 709 26 922 5037 5116 4855 +14112 4 2 709 26 389 5349 4660 4932 +14113 4 2 709 26 941 5408 5112 5158 +14114 4 2 709 26 6023 393 422 5727 +14115 4 2 709 26 636 5530 4911 5253 +14116 4 2 709 26 4345 617 4516 4943 +14117 4 2 709 26 5828 753 880 4698 +14118 4 2 709 26 5311 790 4667 4959 +14119 4 2 709 26 377 4222 4387 5230 +14120 4 2 709 26 4454 973 4879 5579 +14121 4 2 709 26 5408 926 5001 5402 +14122 4 2 709 26 1003 4544 4265 4769 +14123 4 2 709 26 4422 939 4534 5679 +14124 4 2 709 26 349 5360 445 4776 +14125 4 2 709 26 406 5017 4385 4665 +14126 4 2 709 26 4528 418 4408 4387 +14127 4 2 709 26 4354 524 4886 5715 +14128 4 2 709 26 6067 573 4809 4402 +14129 4 2 709 26 487 5959 579 5735 +14130 4 2 709 26 524 4354 5323 5715 +14131 4 2 709 26 6035 789 883 5057 +14132 4 2 709 26 5301 700 4309 4981 +14133 4 2 709 26 643 5625 741 4776 +14134 4 2 709 26 666 4154 4604 4997 +14135 4 2 709 26 4534 1010 4422 4726 +14136 4 2 709 26 5625 349 445 4776 +14137 4 2 709 26 4282 936 4972 4769 +14138 4 2 709 26 4805 903 5188 5714 +14139 4 2 709 26 956 4444 4612 4281 +14140 4 2 709 26 3975 598 4981 5778 +14141 4 2 709 26 4522 902 4623 4312 +14142 4 2 709 26 359 5977 439 5466 +14143 4 2 709 26 4087 594 4690 5271 +14144 4 2 709 26 830 5288 4606 4201 +14145 4 2 709 26 5654 664 694 5169 +14146 4 2 709 26 5874 5577 697 5209 +14147 4 2 709 26 6061 666 4604 4997 +14148 4 2 709 26 639 5764 4332 5414 +14149 4 2 709 26 542 4383 4246 5085 +14150 4 2 709 26 4538 4313 262 5008 +14151 4 2 709 26 471 5406 4760 4368 +14152 4 2 709 26 4538 262 4313 5204 +14153 4 2 709 26 202 6035 298 5057 +14154 4 2 709 26 4374 637 4890 5208 +14155 4 2 709 26 187 5008 4313 4316 +14156 4 2 709 26 5341 4658 584 5249 +14157 4 2 709 26 5844 624 4588 5417 +14158 4 2 709 26 6022 494 589 5080 +14159 4 2 709 26 185 4006 4605 4863 +14160 4 2 709 26 473 4294 4917 5068 +14161 4 2 709 26 5926 4106 192 5111 +14162 4 2 709 26 961 4769 5651 5951 +14163 4 2 709 26 5789 663 695 5179 +14164 4 2 709 26 483 5769 4809 4925 +14165 4 2 709 26 5672 406 4385 4665 +14166 4 2 709 26 205 6056 280 5753 +14167 4 2 709 26 4769 961 4972 5951 +14168 4 2 709 26 369 5857 400 5631 +14169 4 2 709 26 4006 185 4722 4863 +14170 4 2 709 26 4722 241 4714 4863 +14171 4 2 709 26 747 4201 4457 5288 +14172 4 2 709 26 4637 666 4154 4604 +14173 4 2 709 26 932 6022 1029 5080 +14174 4 2 709 26 5185 4860 213 4336 +14175 4 2 709 26 5549 207 4206 5317 +14176 4 2 709 26 510 6049 5068 5350 +14177 4 2 709 26 207 5549 4206 4968 +14178 4 2 709 26 350 5910 409 5558 +14179 4 2 709 26 184 5590 4992 5321 +14180 4 2 709 26 5357 643 741 4776 +14181 4 2 709 26 923 5533 4742 5521 +14182 4 2 709 26 5821 334 4519 5098 +14183 4 2 709 26 5069 200 297 5172 +14184 4 2 709 26 586 4254 5131 4747 +14185 4 2 709 26 5909 486 587 5406 +14186 4 2 709 26 143 5950 871 6075 +14187 4 2 709 26 1014 5158 4493 5137 +14188 4 2 709 26 4437 815 4748 5263 +14189 4 2 709 26 598 3975 4981 5301 +14190 4 2 709 26 609 5811 4332 5764 +14191 4 2 709 26 4246 542 4996 4383 +14192 4 2 709 26 1025 5769 4942 5510 +14193 4 2 709 26 5958 4556 944 5475 +14194 4 2 709 26 5053 201 299 5143 +14195 4 2 709 26 4287 261 4440 5409 +14196 4 2 709 26 5470 584 4658 5249 +14197 4 2 709 26 5225 5769 1025 5510 +14198 4 2 709 26 5360 787 882 4776 +14199 4 2 709 26 4476 5313 895 5077 +14200 4 2 709 26 4941 387 4554 5859 +14201 4 2 709 26 944 4556 4726 5475 +14202 4 2 709 26 606 4778 4650 4758 +14203 4 2 709 26 496 5053 591 5143 +14204 4 2 709 26 450 6059 559 4812 +14205 4 2 709 26 4205 943 5116 5533 +14206 4 2 709 26 5799 854 4001 5705 +14207 4 2 709 26 4343 157 5008 4218 +14208 4 2 709 26 4808 4371 374 5219 +14209 4 2 709 26 5533 923 4983 5521 +14210 4 2 709 26 661 5830 692 5141 +14211 4 2 709 26 5926 206 4991 5838 +14212 4 2 709 26 5953 811 841 5603 +14213 4 2 709 26 5184 102 432 6074 +14214 4 2 709 26 6021 372 403 5637 +14215 4 2 709 26 4343 157 4654 5008 +14216 4 2 709 26 4941 4554 387 4853 +14217 4 2 709 26 360 4249 4409 5055 +14218 4 2 709 26 4422 944 4556 4726 +14219 4 2 709 26 5838 256 4397 4720 +14220 4 2 709 26 657 6058 690 5166 +14221 4 2 709 26 4088 224 4592 5185 +14222 4 2 709 26 6031 632 726 5732 +14223 4 2 709 26 5892 594 4690 4087 +14224 4 2 709 26 5184 102 6074 1019 +14225 4 2 709 26 534 6067 4612 4190 +14226 4 2 709 26 334 4916 4519 5098 +14227 4 2 709 26 787 5357 882 4776 +14228 4 2 709 26 325 4554 4519 5581 +14229 4 2 709 26 5461 150 6073 1020 +14230 4 2 709 26 5071 5037 4205 943 +14231 4 2 709 26 479 5995 4944 5731 +14232 4 2 709 26 724 5208 4637 4890 +14233 4 2 709 26 5112 945 4638 5408 +14234 4 2 709 26 4994 4116 4502 341 +14235 4 2 709 26 105 5069 590 6084 +14236 4 2 709 26 325 4519 4554 5821 +14237 4 2 709 26 5562 534 4612 4190 +14238 4 2 709 26 5321 159 4314 4992 +14239 4 2 709 26 505 5825 584 5341 +14240 4 2 709 26 6046 218 252 5601 +14241 4 2 709 26 709 5414 4800 4520 +14242 4 2 709 26 538 4072 4447 4909 +14243 4 2 709 26 724 5208 4604 4637 +14244 4 2 709 26 105 5069 6084 1030 +14245 4 2 709 26 5983 931 1032 5495 +14246 4 2 709 26 192 4106 4515 5111 +14247 4 2 709 26 6079 5740 141 1024 +14248 4 2 709 26 5958 4556 5104 944 +14249 4 2 709 26 616 5654 694 4854 +14250 4 2 709 26 5931 813 846 5166 +14251 4 2 709 26 45 5740 6079 1024 +14252 4 2 709 26 5732 782 875 4977 +14253 4 2 709 26 6079 5740 884 141 +14254 4 2 709 26 5911 618 712 5892 +14255 4 2 709 26 4422 944 5104 4556 +14256 4 2 709 26 4989 277 4397 4991 +14257 4 2 709 26 255 5616 4287 4888 +14258 4 2 709 26 5282 963 4337 5000 +14259 4 2 709 26 724 6061 4604 5208 +14260 4 2 709 26 45 5740 293 6079 +14261 4 2 709 26 215 4394 4729 5275 +14262 4 2 709 26 101 4841 432 6074 +14263 4 2 709 26 5887 775 878 5370 +14264 4 2 709 26 815 4437 4001 5550 +14265 4 2 709 26 174 4287 4440 5678 +14266 4 2 709 26 566 5195 4402 4900 +14267 4 2 709 26 6005 959 988 5224 +14268 4 2 709 26 815 4001 4437 4748 +14269 4 2 709 26 4397 248 4989 5156 +14270 4 2 709 26 6036 950 1009 5420 +14271 4 2 709 26 5995 4466 5234 386 +14272 4 2 709 26 248 5923 5156 4397 +14273 4 2 709 26 617 4345 4516 5778 +14274 4 2 709 26 5967 757 817 5761 +14275 4 2 709 26 5185 4860 4088 224 +14276 4 2 709 26 4916 334 4519 5462 +14277 4 2 709 26 4693 4412 650 5049 +14278 4 2 709 26 6082 6063 822 130 +14279 4 2 709 26 664 5654 687 5630 +14280 4 2 709 26 5495 893 4315 4524 +14281 4 2 709 26 5920 979 1004 5879 +14282 4 2 709 26 5678 255 4287 4888 +14283 4 2 709 26 371 5847 399 5628 +14284 4 2 709 26 5881 540 4275 5350 +14285 4 2 709 26 6059 505 559 4450 +14286 4 2 709 26 4006 185 4605 4912 +14287 4 2 709 26 5068 539 4700 4917 +14288 4 2 709 26 344 5780 446 5219 +14289 4 2 709 26 963 5564 4337 5320 +14290 4 2 709 26 654 4023 4800 4332 +14291 4 2 709 26 343 6060 447 4875 +14292 4 2 709 26 4693 650 4412 5990 +14293 4 2 709 26 302 6023 422 4816 +14294 4 2 709 26 5214 877 4634 5311 +14295 4 2 709 26 963 5320 4337 5000 +14296 4 2 709 26 5845 792 863 5147 +14297 4 2 709 26 5350 540 4275 4595 +14298 4 2 709 26 4808 4371 4918 374 +14299 4 2 709 26 257 5812 276 4820 +14300 4 2 709 26 5253 29 6076 727 +14301 4 2 709 26 4286 958 4602 4534 +14302 4 2 709 26 778 4870 872 4782 +14303 4 2 709 26 5878 655 734 4461 +14304 4 2 709 26 5958 944 1026 5475 +14305 4 2 709 26 5462 630 694 4854 +14306 4 2 709 26 5945 180 5891 272 +14307 4 2 709 26 187 4860 4316 4313 +14308 4 2 709 26 4652 441 311 5827 +14309 4 2 709 26 514 6067 548 5635 +14310 4 2 709 26 5980 212 292 4785 +14311 4 2 709 26 101 4841 6074 1019 +14312 4 2 709 26 5997 217 249 5634 +14313 4 2 709 26 5374 645 705 5302 +14314 4 2 709 26 4534 958 4602 5161 +14315 4 2 709 26 508 5914 587 5406 +14316 4 2 709 26 6021 322 372 5785 +14317 4 2 709 26 197 6050 271 5459 +14318 4 2 709 26 5769 107 6071 1016 +14319 4 2 709 26 801 6007 880 5387 +14320 4 2 709 26 4454 4879 973 5481 +14321 4 2 709 26 5071 5533 943 4205 +14322 4 2 709 26 5797 190 289 5167 +14323 4 2 709 26 341 4116 4502 5001 +14324 4 2 709 26 793 5925 852 5595 +14325 4 2 709 26 923 5521 1015 4983 +14326 4 2 709 26 378 5815 4753 4852 +14327 4 2 709 26 826 4888 4696 4935 +14328 4 2 709 26 654 4023 4332 4874 +14329 4 2 709 26 5454 794 864 4399 +14330 4 2 709 26 4006 185 4912 4239 +14331 4 2 709 26 185 4006 4722 4239 +14332 4 2 709 26 5616 845 4287 4888 +14333 4 2 709 26 386 4229 4466 5051 +14334 4 2 709 26 4925 5561 5195 585 +14335 4 2 709 26 5736 4750 420 5055 +14336 4 2 709 26 5765 467 565 4678 +14337 4 2 709 26 509 4262 5372 5427 +14338 4 2 709 26 21 5053 6077 740 +14339 4 2 709 26 621 6061 703 5524 +14340 4 2 709 26 5815 347 384 4795 +14341 4 2 709 26 5894 406 4385 4407 +14342 4 2 709 26 761 5931 868 4701 +14343 4 2 709 26 306 5017 4713 5090 +14344 4 2 709 26 21 5053 299 6077 +14345 4 2 709 26 716 608 4461 6012 +14346 4 2 709 26 4936 389 4660 4932 +14347 4 2 709 26 675 6063 6082 130 +14348 4 2 709 26 5804 523 592 5015 +14349 4 2 709 26 5995 479 4883 5731 +14350 4 2 709 26 4736 877 5214 5311 +14351 4 2 709 26 30 4911 6076 727 +14352 4 2 709 26 6081 129 6035 738 +14353 4 2 709 26 5745 318 404 5017 +14354 4 2 709 26 5112 1005 4388 4638 +14355 4 2 709 26 5967 817 886 4819 +14356 4 2 709 26 5053 117 591 6077 +14357 4 2 709 26 5053 117 6077 740 +14358 4 2 709 26 953 5944 983 5601 +14359 4 2 709 26 633 5735 731 4928 +14360 4 2 709 26 5909 530 577 5797 +14361 4 2 709 26 760 5762 4287 4728 +14362 4 2 709 26 785 5160 5464 4271 +14363 4 2 709 26 4633 5464 4271 785 +14364 4 2 709 26 631 5687 730 4781 +14365 4 2 709 26 623 5874 714 5379 +14366 4 2 709 26 5921 181 259 5541 +14367 4 2 709 26 5654 616 687 4579 +14368 4 2 709 26 489 5228 593 4894 +14369 4 2 709 26 6081 129 883 6035 +14370 4 2 709 26 785 4271 4633 5486 +14371 4 2 709 26 4271 785 5160 5486 +14372 4 2 709 26 6059 502 505 5825 +14373 4 2 709 26 5731 465 533 4559 +14374 4 2 709 26 479 5995 4883 5535 +14375 4 2 709 26 453 5562 4447 4917 +14376 4 2 709 26 5350 539 4700 5068 +14377 4 2 709 26 6060 315 376 5556 +14378 4 2 709 26 539 4072 4700 4917 +14379 4 2 709 26 5837 788 824 4784 +14380 4 2 709 26 814 5721 844 5164 +14381 4 2 709 26 655 5712 716 4461 +14382 4 2 709 26 6035 32 298 6081 +14383 4 2 709 26 154 5961 226 5576 +14384 4 2 709 26 4229 5150 5051 386 +14385 4 2 709 26 954 5645 985 5094 +14386 4 2 709 26 5214 849 4395 5700 +14387 4 2 709 26 322 6021 429 4750 +14388 4 2 709 26 5830 684 612 5229 +14389 4 2 709 26 5959 487 574 5200 +14390 4 2 709 26 5420 997 1009 4802 +14391 4 2 709 26 5923 216 248 5156 +14392 4 2 709 26 5017 306 4713 4808 +14393 4 2 709 26 5253 636 727 4911 +14394 4 2 709 26 665 4087 4332 4990 +14395 4 2 709 26 473 4900 4917 4294 +14396 4 2 709 26 406 5672 4385 4407 +14397 4 2 709 26 918 4921 4612 4524 +14398 4 2 709 26 5952 743 858 5324 +14399 4 2 709 26 346 5832 381 4864 +14400 4 2 709 26 5717 196 265 4828 +14401 4 2 709 26 4860 224 4475 4088 +14402 4 2 709 26 5798 895 977 5161 +14403 4 2 709 26 520 5835 550 5637 +14404 4 2 709 26 6035 32 6081 738 +14405 4 2 709 26 4780 291 4314 4313 +14406 4 2 709 26 108 4809 582 6071 +14407 4 2 709 26 6007 796 880 5828 +14408 4 2 709 26 5230 408 423 5770 +14409 4 2 709 26 160 5872 246 4722 +14410 4 2 709 26 788 5837 821 4795 +14411 4 2 709 26 5184 921 1019 4841 +14412 4 2 709 26 5622 310 439 4659 +14413 4 2 709 26 5910 301 409 5284 +14414 4 2 709 26 4990 704 718 4513 +14415 4 2 709 26 5969 947 1025 5510 +14416 4 2 709 26 5462 334 435 4916 +14417 4 2 709 26 5812 228 276 5541 +14418 4 2 709 26 5547 269 279 4862 +14419 4 2 709 26 748 5545 834 4904 +14420 4 2 709 26 4072 453 4447 4917 +14421 4 2 709 26 891 5782 1009 4802 +14422 4 2 709 26 914 5920 1004 4972 +14423 4 2 709 26 5633 518 545 5584 +14424 4 2 709 26 360 4249 442 5233 +14425 4 2 709 26 5914 460 587 4962 +14426 4 2 709 26 181 5921 275 4768 +14427 4 2 709 26 5734 188 282 4989 +14428 4 2 709 26 903 5714 998 5445 +14429 4 2 709 26 37 6037 223 5616 +14430 4 2 709 26 5461 924 1020 5137 +14431 4 2 709 26 4925 573 4402 4809 +14432 4 2 709 26 5845 742 847 5512 +14433 4 2 709 26 896 5969 1025 4942 +14434 4 2 709 26 4475 203 272 5891 +14435 4 2 709 26 5762 760 4201 5347 +14436 4 2 709 26 226 5961 290 4848 +14437 4 2 709 26 5835 520 552 5535 +14438 4 2 709 26 622 5712 711 5189 +14439 4 2 709 26 5697 511 569 5696 +14440 4 2 709 26 5069 297 9 6084 +14441 4 2 709 26 4780 187 4313 4860 +14442 4 2 709 26 792 5428 855 5147 +14443 4 2 709 26 6026 816 5599 851 +14444 4 2 709 26 663 5789 686 5641 +14445 4 2 709 26 766 5752 831 4633 +14446 4 2 709 26 337 5184 432 4841 +14447 4 2 709 26 609 5811 704 4990 +14448 4 2 709 26 925 5220 1012 5073 +14449 4 2 709 26 770 5458 855 5428 +14450 4 2 709 26 4374 683 4498 5571 +14451 4 2 709 26 5253 29 284 6076 +14452 4 2 709 26 5608 316 413 5558 +14453 4 2 709 26 6037 37 810 5616 +14454 4 2 709 26 849 5214 4395 4591 +14455 4 2 709 26 206 4397 4991 5838 +14456 4 2 709 26 216 5923 240 5747 +14457 4 2 709 26 5995 4229 4466 386 +14458 4 2 709 26 5871 955 975 5594 +14459 4 2 709 26 6084 590 9 5069 +14460 4 2 709 26 6020 517 546 5141 +14461 4 2 709 26 180 5891 225 5443 +14462 4 2 709 26 59 5249 6072 581 +14463 4 2 709 26 683 4374 4498 5208 +14464 4 2 709 26 4989 41 6070 876 +14465 4 2 709 26 4218 6056 4343 227 +14466 4 2 709 26 4909 572 4503 469 +14467 4 2 709 26 5702 502 555 5450 +14468 4 2 709 26 799 4251 878 5370 +14469 4 2 709 26 5832 346 380 4779 +14470 4 2 709 26 361 5827 441 5098 +14471 4 2 709 26 539 5350 4700 4072 +14472 4 2 709 26 792 5845 847 4428 +14473 4 2 709 26 5350 491 4595 4072 +14474 4 2 709 26 759 5642 827 4832 +14475 4 2 709 26 5541 181 276 4768 +14476 4 2 709 26 742 5845 863 5400 +14477 4 2 709 26 5833 498 562 5300 +14478 4 2 709 26 30 4911 284 6076 +14479 4 2 709 26 5150 4229 4944 386 +14480 4 2 709 26 895 5798 1001 4892 +14481 4 2 709 26 710 6000 721 5298 +14482 4 2 709 26 5978 338 383 5687 +14483 4 2 709 26 483 5769 582 4809 +14484 4 2 709 26 806 5599 851 5483 +14485 4 2 709 26 776 5461 869 5137 +14486 4 2 709 26 5318 335 431 4933 +14487 4 2 709 26 6004 942 1012 5073 +14488 4 2 709 26 812 5752 840 5142 +14489 4 2 709 26 5433 239 275 4768 +14490 4 2 709 26 4888 845 4287 4728 +14491 4 2 709 26 221 5941 251 5179 +14492 4 2 709 26 5789 617 686 4943 +14493 4 2 709 26 476 5696 511 4886 +14494 4 2 709 26 5770 363 423 5426 +14495 4 2 709 26 4855 144 871 6075 +14496 4 2 709 26 4249 354 5237 5055 +14497 4 2 709 26 916 5862 991 4879 +14498 4 2 709 26 389 5177 4932 4936 +14499 4 2 709 26 5717 172 244 5553 +14500 4 2 709 26 6063 5568 822 789 +14501 4 2 709 26 4229 5995 4944 386 +14502 4 2 709 26 767 5761 861 5268 +14503 4 2 709 26 5830 612 722 4576 +14504 4 2 709 26 4088 4475 4731 224 +14505 4 2 709 26 5940 904 992 5751 +14506 4 2 709 26 5846 541 561 4572 +14507 4 2 709 26 5959 546 579 4928 +14508 4 2 709 26 394 5639 412 4647 +14509 4 2 709 26 323 5847 388 4540 +14510 4 2 709 26 5925 767 852 5438 +14511 4 2 709 26 177 4475 272 5945 +14512 4 2 709 26 4399 764 864 4736 +14513 4 2 709 26 624 5888 657 4958 +14514 4 2 709 26 5847 323 399 5790 +14515 4 2 709 26 745 5718 886 4819 +14516 4 2 709 26 224 4088 4592 4731 +14517 4 2 709 26 301 5770 408 5284 +14518 4 2 709 26 5832 312 381 4732 +14519 4 2 709 26 5940 992 1006 5648 +14520 4 2 709 26 349 5551 385 5360 +14521 4 2 709 26 906 5871 975 5077 +14522 4 2 709 26 5835 468 550 5542 +14523 4 2 709 26 193 5007 283 4817 +14524 4 2 709 26 5200 504 574 4945 +14525 4 2 709 26 5714 937 998 5232 +14526 4 2 709 26 313 6029 355 4926 +14527 4 2 709 26 830 4287 4201 4606 +14528 4 2 709 26 5752 766 840 4745 +14529 4 2 709 26 605 5955 735 4694 +14530 4 2 709 26 5861 6014 736 604 +14531 4 2 709 26 4989 41 282 6070 +14532 4 2 709 26 5944 953 972 5493 +14533 4 2 709 26 389 4502 4932 5177 +14534 4 2 709 26 5944 905 983 5220 +14535 4 2 709 26 779 5950 4855 871 +14536 4 2 709 26 4832 885 784 5263 +14537 4 2 709 26 4087 665 4332 4874 +14538 4 2 709 26 5897 887 993 5386 +14539 4 2 709 26 5781 900 978 5313 +14540 4 2 709 26 781 5734 876 4989 +14541 4 2 709 26 460 5914 504 5200 +14542 4 2 709 26 922 5950 1018 4855 +14543 4 2 709 26 309 5384 388 5369 +14544 4 2 709 26 475 5236 523 4339 +14545 4 2 709 26 5769 927 1016 4809 +14546 4 2 709 26 5632 602 687 4738 +14547 4 2 709 26 208 5791 278 4405 +14548 4 2 709 26 498 5378 554 5300 +14549 4 2 709 26 559 5697 569 4812 +14550 4 2 709 26 353 4502 4370 5349 +14551 4 2 709 26 5955 605 647 4984 +14552 4 2 709 26 515 5656 544 5162 +14553 4 2 709 26 5730 894 991 4879 +14554 4 2 709 26 556 5904 593 5228 +14555 4 2 709 26 5625 79 6083 673 +14556 4 2 709 26 482 5561 507 4678 +14557 4 2 709 26 994 5071 4389 4599 +14558 4 2 709 26 5479 643 678 5357 +14559 4 2 709 26 5347 760 865 4728 +14560 4 2 709 26 926 5402 1017 5001 +14561 4 2 709 26 858 5611 783 5952 +14562 4 2 709 26 5745 366 398 5164 +14563 4 2 709 26 5769 107 582 6071 +14564 4 2 709 26 5460 336 430 5102 +14565 4 2 709 26 5630 625 664 4954 +14566 4 2 709 26 162 5980 292 4718 +14567 4 2 709 26 5844 662 696 5629 +14568 4 2 709 26 763 5618 858 4682 +14569 4 2 709 26 4454 994 4389 4599 +14570 4 2 709 26 419 4502 427 4994 +14571 4 2 709 26 366 5745 404 5090 +14572 4 2 709 26 994 4454 4389 5037 +14573 4 2 709 26 5644 794 853 4897 +14574 4 2 709 26 5071 5037 994 4389 +14575 4 2 709 26 887 5897 998 5232 +14576 4 2 709 26 5057 789 826 5568 +14577 4 2 709 26 191 5997 249 5253 +14578 4 2 709 26 5282 902 1007 4312 +14579 4 2 709 26 5857 369 390 5482 +14580 4 2 709 26 4909 572 555 5702 +14581 4 2 709 26 4810 256 274 4720 +14582 4 2 709 26 5830 684 5709 661 +14583 4 2 709 26 48 5521 988 5224 +14584 4 2 709 26 253 5521 48 5224 +14585 4 2 709 26 646 6000 710 5135 +14586 4 2 709 26 77 5169 5462 694 +14587 4 2 709 26 5237 420 4750 5055 +14588 4 2 709 26 460 5909 587 4962 +14589 4 2 709 26 5922 762 866 4739 +14590 4 2 709 26 5512 804 861 5268 +14591 4 2 709 26 5847 371 388 5369 +14592 4 2 709 26 191 5253 284 4911 +14593 4 2 709 26 5174 634 732 4794 +14594 4 2 709 26 690 6031 726 4977 +14595 4 2 709 26 5751 904 1014 4493 +14596 4 2 709 26 750 5486 831 4743 +14597 4 2 709 26 912 978 5320 5781 +14598 4 2 709 26 897 5958 1026 4695 +14599 4 2 709 26 77 5169 396 5462 +14600 4 2 709 26 5721 814 834 4904 +14601 4 2 709 26 5931 846 868 4977 +14602 4 2 709 26 675 6063 641 4758 +14603 4 2 709 26 5402 378 4753 4852 +14604 4 2 709 26 5926 163 295 4723 +14605 4 2 709 26 642 6001 677 5572 +14606 4 2 709 26 603 5990 733 4693 +14607 4 2 709 26 5599 770 816 5428 +14608 4 2 709 26 5721 765 844 4757 +14609 4 2 709 26 941 5751 1014 5158 +14610 4 2 709 26 630 5462 725 4916 +14611 4 2 709 26 314 5749 392 5380 +14612 4 2 709 26 5815 310 378 4753 +14613 4 2 709 26 5324 800 858 4682 +14614 4 2 709 26 5816 698 717 4801 +14615 4 2 709 26 5762 760 4287 4201 +14616 4 2 709 26 428 355 4421 4926 +14617 4 2 709 26 455 6057 537 5322 +14618 4 2 709 26 991 5940 949 5730 +14619 4 2 709 26 776 5387 880 4698 +14620 4 2 709 26 5347 805 850 5025 +14621 4 2 709 26 170 6046 252 4862 +14622 4 2 709 26 5955 651 735 4104 +14623 4 2 709 26 337 5233 442 4657 +14624 4 2 709 26 6059 502 5450 450 +14625 4 2 709 26 486 5909 577 5167 +14626 4 2 709 26 5980 208 212 5215 +14627 4 2 709 26 765 5721 834 4615 +14628 4 2 709 26 5543 348 382 4880 +14629 4 2 709 26 5709 627 684 4995 +14630 4 2 709 26 484 5174 578 4794 +14631 4 2 709 26 308 5234 391 5192 +14632 4 2 709 26 5859 345 415 4692 +14633 4 2 709 26 5790 337 399 4841 +14634 4 2 709 26 5678 257 5812 174 +14635 4 2 709 26 5761 847 861 5512 +14636 4 2 709 26 5814 220 254 5162 +14637 4 2 709 26 948 5000 1007 5386 +14638 4 2 709 26 5029 348 383 5543 +14639 4 2 709 26 5977 357 439 5622 +14640 4 2 709 26 325 5859 415 5821 +14641 4 2 709 26 5965 774 811 4611 +14642 4 2 709 26 355 6029 358 5314 +14643 4 2 709 26 925 5073 968 4677 +14644 4 2 709 26 6012 622 680 5858 +14645 4 2 709 26 5785 322 391 4535 +14646 4 2 709 26 5300 448 553 4680 +14647 4 2 709 26 349 5625 379 5235 +14648 4 2 709 26 621 5911 712 4997 +14649 4 2 709 26 5495 910 4524 4441 +14650 4 2 709 26 5249 340 436 4783 +14651 4 2 709 26 6066 756 836 5160 +14652 4 2 709 26 5969 896 942 5073 +14653 4 2 709 26 517 6020 536 4948 +14654 4 2 709 26 5687 4781 338 434 +14655 4 2 709 26 5564 890 963 4557 +14656 4 2 709 26 311 5827 356 4934 +14657 4 2 709 26 5584 466 545 5173 +14658 4 2 709 26 5727 329 365 4826 +14659 4 2 709 26 632 6031 720 4984 +14660 4 2 709 26 240 5276 4810 274 +14661 4 2 709 26 4293 809 843 5631 +14662 4 2 709 26 5175 4262 4392 509 +14663 4 2 709 26 620 5811 670 5374 +14664 4 2 709 26 4277 818 860 5552 +14665 4 2 709 26 995 5220 6004 1012 +14666 4 2 709 26 5941 189 251 4847 +14667 4 2 709 26 4960 226 5576 182 +14668 4 2 709 26 4280 516 547 5646 +14669 4 2 709 26 614 4520 685 5559 +14670 4 2 709 26 780 5318 873 4933 +14671 4 2 709 26 5857 319 400 4792 +14672 4 2 709 26 905 5944 972 4521 +14673 4 2 709 26 537 6057 561 5480 +14674 4 2 709 26 6046 170 241 5342 +14675 4 2 709 26 485 5249 581 4783 +14676 4 2 709 26 787 5560 825 5357 +14677 4 2 709 26 5552 758 848 5550 +14678 4 2 709 26 290 5364 5961 198 +14679 4 2 709 26 753 5837 824 4698 +14680 4 2 709 26 4677 194 288 4811 +14681 4 2 709 26 4870 629 729 4782 +14682 4 2 709 26 5101 942 995 6004 +14683 4 2 709 26 458 5825 502 4969 +14684 4 2 709 26 4871 761 859 4701 +14685 4 2 709 26 546 5959 574 4495 +14686 4 2 709 26 4558 602 5302 705 +14687 4 2 709 26 89 5631 400 5318 +14688 4 2 709 26 5844 615 702 4691 +14689 4 2 709 26 196 5717 244 5351 +14690 4 2 709 26 912 5000 948 5781 +14691 4 2 709 26 924 5461 967 4850 +14692 4 2 709 26 5631 89 843 5318 +14693 4 2 709 26 621 5524 668 4749 +14694 4 2 709 26 4667 790 823 5157 +14695 4 2 709 26 183 4287 4606 5409 +14696 4 2 709 26 971 5488 4852 5402 +14697 4 2 709 26 757 5096 816 4861 +14698 4 2 709 26 750 5644 853 4754 +14699 4 2 709 26 5510 947 1025 5225 +14700 4 2 709 26 218 4863 6046 241 +14701 4 2 709 26 335 5318 400 4792 +14702 4 2 709 26 5747 183 216 4949 +14703 4 2 709 26 468 5697 559 4450 +14704 4 2 709 26 948 5386 1008 5124 +14705 4 2 709 26 640 5029 679 5597 +14706 4 2 709 26 5734 43 237 5157 +14707 4 2 709 26 5228 489 556 4559 +14708 4 2 709 26 5837 753 821 4791 +14709 4 2 709 26 4441 910 4524 4881 +14710 4 2 709 26 356 5894 426 4934 +14711 4 2 709 26 5625 79 379 6083 +14712 4 2 709 26 182 5276 274 4720 +14713 4 2 709 26 454 5750 551 5003 +14714 4 2 709 26 5910 350 424 5397 +14715 4 2 709 26 4783 60 436 6072 +14716 4 2 709 26 407 5507 428 4421 +14717 4 2 709 26 925 5220 4811 983 +14718 4 2 709 26 5560 787 819 5360 +14719 4 2 709 26 5552 848 860 4512 +14720 4 2 709 26 522 4294 567 5531 +14721 4 2 709 26 4684 492 565 5765 +14722 4 2 709 26 5641 626 663 4938 +14723 4 2 709 26 5799 769 837 5025 +14724 4 2 709 26 5727 365 422 5507 +14725 4 2 709 26 5816 615 719 5526 +14726 4 2 709 26 368 5581 396 5169 +14727 4 2 709 26 475 5833 562 5085 +14728 4 2 709 26 332 5785 391 5234 +14729 4 2 709 26 5556 315 410 4869 +14730 4 2 709 26 149 5137 6073 1020 +14731 4 2 709 26 5696 540 569 4812 +14732 4 2 709 26 5320 939 5798 1001 +14733 4 2 709 26 4371 351 408 5284 +14734 4 2 709 26 5353 653 707 4668 +14735 4 2 709 26 158 5276 259 5127 +14736 4 2 709 26 930 5782 995 5281 +14737 4 2 709 26 775 5197 844 4757 +14738 4 2 709 26 957 5149 991 5862 +14739 4 2 709 26 206 5926 210 5838 +14740 4 2 709 26 5328 796 866 5109 +14741 4 2 709 26 5007 482 580 4817 +14742 4 2 709 26 5793 892 976 5042 +14743 4 2 709 26 310 5815 384 4659 +14744 4 2 709 26 5672 304 395 4692 +14745 4 2 709 26 5857 4528 390 319 +14746 4 2 709 26 610 6058 681 5209 +14747 4 2 709 26 481 5702 4969 502 +14748 4 2 709 26 4862 194 279 4968 +14749 4 2 709 26 470 6020 546 4495 +14750 4 2 709 26 4747 457 586 4717 +14751 4 2 709 26 76 5169 664 4954 +14752 4 2 709 26 5320 978 1001 4892 +14753 4 2 709 26 43 5734 823 5157 +14754 4 2 709 26 464 5531 554 5378 +14755 4 2 709 26 25 5179 663 4938 +14756 4 2 709 26 5311 751 877 4634 +14757 4 2 709 26 5772 892 1031 4805 +14758 4 2 709 26 239 4820 276 4768 +14759 4 2 709 26 59 5249 436 6072 +14760 4 2 709 26 287 192 4983 5521 +14761 4 2 709 26 5517 778 800 4682 +14762 4 2 709 26 5911 621 699 4749 +14763 4 2 709 26 4262 509 5372 4362 +14764 4 2 709 26 4855 144 6075 1018 +14765 4 2 709 26 108 4809 6071 1016 +14766 4 2 709 26 5303 477 519 4921 +14767 4 2 709 26 5432 336 358 4653 +14768 4 2 709 26 5980 162 208 4975 +14769 4 2 709 26 5955 647 651 5900 +14770 4 2 709 26 5135 650 646 5990 +14771 4 2 709 26 5965 811 833 5953 +14772 4 2 709 26 330 5482 369 4589 +14773 4 2 709 26 631 6000 646 4985 +14774 4 2 709 26 161 5351 244 5145 +14775 4 2 709 26 309 5639 394 5176 +14776 4 2 709 26 172 5717 265 4671 +14777 4 2 709 26 993 5386 1007 4312 +14778 4 2 709 26 5169 76 368 4954 +14779 4 2 709 26 634 5049 693 4794 +14780 4 2 709 26 937 5329 1003 4544 +14781 4 2 709 26 692 5830 722 4928 +14782 4 2 709 26 925 4677 1022 4811 +14783 4 2 709 26 913 6036 1009 4319 +14784 4 2 709 26 6001 496 529 5605 +14785 4 2 709 26 900 5781 948 5124 +14786 4 2 709 26 856 799 4410 5718 +14787 4 2 709 26 4742 988 6005 909 +14788 4 2 709 26 5530 636 653 4668 +14789 4 2 709 26 5559 660 693 5633 +14790 4 2 709 26 786 5967 886 4910 +14791 4 2 709 26 5793 951 1000 4681 +14792 4 2 709 26 4443 1004 4972 936 +14793 4 2 709 26 267 4355 198 5961 +14794 4 2 709 26 5878 594 671 5271 +14795 4 2 709 26 167 5829 281 4640 +14796 4 2 709 26 212 5215 266 4413 +14797 4 2 709 26 651 5900 706 4414 +14798 4 2 709 26 5179 25 221 4938 +14799 4 2 709 26 326 5556 410 4486 +14800 4 2 709 26 5470 494 526 4864 +14801 4 2 709 26 700 5229 715 4309 +14802 4 2 709 26 6007 744 796 5109 +14803 4 2 709 26 5825 458 584 4658 +14804 4 2 709 26 5939 742 848 5400 +14805 4 2 709 26 312 5832 380 4657 +14806 4 2 709 26 5977 305 357 5118 +14807 4 2 709 26 4303 329 4982 414 +14808 4 2 709 26 487 5735 529 5200 +14809 4 2 709 26 5400 803 848 4512 +14810 4 2 709 26 168 5433 275 5185 +14811 4 2 709 26 5764 597 670 4574 +14812 4 2 709 26 5232 937 999 4544 +14813 4 2 709 26 374 5219 446 4808 +14814 4 2 709 26 907 5579 973 4454 +14815 4 2 709 26 5861 648 652 5778 +14816 4 2 709 26 5897 938 998 5445 +14817 4 2 709 26 5799 755 854 4489 +14818 4 2 709 26 4303 329 393 5727 +14819 4 2 709 26 892 5793 1000 4805 +14820 4 2 709 26 6000 631 721 5298 +14821 4 2 709 26 6066 803 863 5400 +14822 4 2 709 26 5507 407 422 4816 +14823 4 2 709 26 636 5253 689 4668 +14824 4 2 709 26 6067 573 4402 472 +14825 4 2 709 26 4237 469 538 4909 +14826 4 2 709 26 5628 101 987 4841 +14827 4 2 709 26 161 5145 245 4377 +14828 4 2 709 26 5409 158 261 5127 +14829 4 2 709 26 5603 144 841 4855 +14830 4 2 709 26 615 5844 696 5526 +14831 4 2 709 26 640 5597 672 4775 +14832 4 2 709 26 5861 604 648 4930 +14833 4 2 709 26 963 5282 1007 5000 +14834 4 2 709 26 5628 399 101 4841 +14835 4 2 709 26 915 5329 1000 4681 +14836 4 2 709 26 5785 332 372 4608 +14837 4 2 709 26 6037 771 4606 810 +14838 4 2 709 26 5237 420 429 4750 +14839 4 2 709 26 321 5051 417 4653 +14840 4 2 709 26 149 5137 869 6073 +14841 4 2 709 26 5904 521 593 4362 +14842 4 2 709 26 190 5753 4905 205 +14843 4 2 709 26 239 5433 271 6050 +14844 4 2 709 26 554 5531 567 4423 +14845 4 2 709 26 6005 909 976 4856 +14846 4 2 709 26 5150 321 397 4653 +14847 4 2 709 26 5448 889 980 4599 +14848 4 2 709 26 336 5460 397 4653 +14849 4 2 709 26 862 5512 5719 804 +14850 4 2 709 26 626 5641 686 5144 +14851 4 2 709 26 199 5405 237 5157 +14852 4 2 709 26 5791 195 255 4888 +14853 4 2 709 26 764 5953 841 4736 +14854 4 2 709 26 960 5329 937 5714 +14855 4 2 709 26 781 5734 6010 823 +14856 4 2 709 26 750 5965 833 5644 +14857 4 2 709 26 144 5603 982 4855 +14858 4 2 709 26 5450 450 555 4595 +14859 4 2 709 26 779 5950 820 5311 +14860 4 2 709 26 5945 180 258 4654 +14861 4 2 709 26 647 5577 697 5030 +14862 4 2 709 26 4289 807 5629 839 +14863 4 2 709 26 570 5085 5236 475 +14864 4 2 709 26 5808 889 951 5448 +14865 4 2 709 26 629 5526 696 4782 +14866 4 2 709 26 996 5999 5104 940 +14867 4 2 709 26 5977 359 418 4408 +14868 4 2 709 26 642 5572 674 4752 +14869 4 2 709 26 5551 311 385 4934 +14870 4 2 709 26 5542 485 550 4783 +14871 4 2 709 26 5920 1006 979 5648 +14872 4 2 709 26 429 403 4783 6021 +14873 4 2 709 26 5577 647 720 4984 +14874 4 2 709 26 5594 919 975 5161 +14875 4 2 709 26 5052 470 557 4945 +14876 4 2 709 26 468 5835 552 5697 +14877 4 2 709 26 4614 770 5458 838 +14878 4 2 709 26 5092 825 5732 782 +14879 4 2 709 26 195 5791 208 4975 +14880 4 2 709 26 222 4515 253 5224 +14881 4 2 709 26 328 5672 4665 421 +14882 4 2 709 26 927 5225 986 4809 +14883 4 2 709 26 5635 548 108 4809 +14884 4 2 709 26 858 5611 5618 783 +14885 4 2 709 26 5276 158 240 4620 +14886 4 2 709 26 5635 108 986 4809 +14887 4 2 709 26 1032 4623 902 5983 +14888 4 2 709 26 619 5712 5189 711 +14889 4 2 709 26 4934 339 385 4688 +14890 4 2 709 26 488 5460 583 5102 +14891 4 2 709 26 776 5137 840 4745 +14892 4 2 709 26 5541 228 259 5127 +14893 4 2 709 26 5342 170 269 4862 +14894 4 2 709 26 5584 518 537 5322 +14895 4 2 709 26 767 5925 817 5761 +14896 4 2 709 26 5387 776 801 4745 +14897 4 2 709 26 795 4701 868 5092 +14898 4 2 709 26 5881 497 563 4551 +14899 4 2 709 26 5441 773 809 4589 +14900 4 2 709 26 622 6012 716 5712 +14901 4 2 709 26 5871 906 984 4638 +14902 4 2 709 26 991 5940 5149 904 +14903 4 2 709 26 5111 175 267 4849 +14904 4 2 709 26 5118 305 419 5022 +14905 4 2 709 26 504 5914 508 5106 +14906 4 2 709 26 481 4503 5702 572 +14907 4 2 709 26 808 5288 4949 771 +14908 4 2 709 26 4701 795 859 5171 +14909 4 2 709 26 357 5118 419 4994 +14910 4 2 709 26 5931 761 832 4871 +14911 4 2 709 26 4935 754 881 4656 +14912 4 2 709 26 270 259 5021 5921 +14913 4 2 709 26 5590 217 173 5997 +14914 4 2 709 26 5921 270 275 4304 +14915 4 2 709 26 5230 408 4371 317 +14916 4 2 709 26 4422 939 5564 1010 +14917 4 2 709 26 4855 779 841 4736 +14918 4 2 709 26 5402 341 437 5001 +14919 4 2 709 26 184 5321 221 4938 +14920 4 2 709 26 5772 5493 972 892 +14921 4 2 709 26 493 5706 532 4880 +14922 4 2 709 26 504 5106 557 4945 +14923 4 2 709 26 894 5481 973 4879 +14924 4 2 709 26 484 5667 586 4717 +14925 4 2 709 26 603 5990 4985 646 +14926 4 2 709 26 782 5092 868 4977 +14927 4 2 709 26 938 4522 1002 5445 +14928 4 2 709 26 5427 474 541 4572 +14929 4 2 709 26 220 5814 245 4914 +14930 4 2 709 26 5438 835 852 4827 +14931 4 2 709 26 5131 506 571 4449 +14932 4 2 709 26 5562 453 560 4917 +14933 4 2 709 26 5461 776 824 4698 +14934 4 2 709 26 479 5535 520 4608 +14935 4 2 709 26 5740 199 44 5157 +14936 4 2 709 26 4905 164 294 4675 +14937 4 2 709 26 743 5952 837 4980 +14938 4 2 709 26 917 5493 953 4605 +14939 4 2 709 26 4870 131 6082 822 +14940 4 2 709 26 191 5997 4785 173 +14941 4 2 709 26 5173 484 545 4794 +14942 4 2 709 26 5757 179 215 5478 +14943 4 2 709 26 200 5291 238 5172 +14944 4 2 709 26 5958 940 944 5104 +14945 4 2 709 26 5442 362 410 5380 +14946 4 2 709 26 4800 600 685 4995 +14947 4 2 709 26 4660 412 309 5639 +14948 4 2 709 26 155 5215 257 4820 +14949 4 2 709 26 5606 300 4828 156 +14950 4 2 709 26 176 5814 254 4505 +14951 4 2 709 26 918 5645 954 4921 +14952 4 2 709 26 5750 512 551 4553 +14953 4 2 709 26 5518 935 968 5172 +14954 4 2 709 26 4688 339 433 5197 +14955 4 2 709 26 499 5480 561 5372 +14956 4 2 709 26 451 6052 542 5256 +14957 4 2 709 26 474 5372 561 4572 +14958 4 2 709 26 5782 891 995 5101 +14959 4 2 709 26 656 5271 718 4513 +14960 4 2 709 26 4287 6037 183 4606 +14961 4 2 709 26 489 5323 533 4559 +14962 4 2 709 26 5761 757 847 4861 +14963 4 2 709 26 5958 897 940 4978 +14964 4 2 709 26 754 5568 822 4656 +14965 4 2 709 26 5925 745 817 4819 +14966 4 2 709 26 753 5828 796 5328 +14967 4 2 709 26 495 5502 531 4683 +14968 4 2 709 26 162 5585 232 4975 +14969 4 2 709 26 5829 167 268 5398 +14970 4 2 709 26 5442 410 425 4869 +14971 4 2 709 26 230 153 4592 5275 +14972 4 2 709 26 4614 770 806 5599 +14973 4 2 709 26 667 5671 723 4241 +14974 4 2 709 26 604 6014 674 5572 +14975 4 2 709 26 979 5648 888 4865 +14976 4 2 709 26 4995 600 684 4322 +14977 4 2 709 26 389 4502 5349 4932 +14978 4 2 709 26 5576 182 256 4720 +14979 4 2 709 26 6026 748 851 4491 +14980 4 2 709 26 4981 648 722 4930 +14981 4 2 709 26 414 314 5397 4303 +14982 4 2 709 26 5397 350 414 4982 +14983 4 2 709 26 4945 470 574 4495 +14984 4 2 709 26 5551 349 379 5235 +14985 4 2 709 26 5466 335 359 4792 +14986 4 2 709 26 338 5525 402 4781 +14987 4 2 709 26 5443 161 263 4377 +14988 4 2 709 26 202 5057 232 5585 +14989 4 2 709 26 793 5595 832 4871 +14990 4 2 709 26 603 5597 679 4985 +14991 4 2 709 26 897 5602 970 4978 +14992 4 2 709 26 6049 448 554 4799 +14993 4 2 709 26 5127 228 261 4440 +14994 4 2 709 26 320 5525 428 5507 +14995 4 2 709 26 638 5632 687 4579 +14996 4 2 709 26 196 5351 281 4828 +14997 4 2 709 26 5656 515 551 5003 +14998 4 2 709 26 5969 942 947 5101 +14999 4 2 709 26 658 4285 691 5621 +15000 4 2 709 26 5488 899 967 4850 +15001 4 2 709 26 608 6012 724 4637 +15002 4 2 709 26 509 4262 4392 4362 +15003 4 2 709 26 5719 767 804 5268 +15004 4 2 709 26 5042 917 959 4912 +15005 4 2 709 26 4955 773 814 4904 +15006 4 2 709 26 355 407 4421 4816 +15007 4 2 709 26 5370 775 799 4757 +15008 4 2 709 26 132 5629 839 4782 +15009 4 2 709 26 6066 768 803 5038 +15010 4 2 709 26 598 5301 699 4749 +15011 4 2 709 26 6035 129 6063 641 +15012 4 2 709 26 456 4354 552 5535 +15013 4 2 709 26 4849 246 198 5872 +15014 4 2 709 26 6052 508 558 4368 +15015 4 2 709 26 5629 132 696 4782 +15016 4 2 709 26 5408 926 945 4638 +15017 4 2 709 26 5006 656 704 4513 +15018 4 2 709 26 5049 650 708 4412 +15019 4 2 709 26 331 5581 368 4954 +15020 4 2 709 26 4991 5734 188 237 +15021 4 2 709 26 5549 193 211 4671 +15022 4 2 709 26 306 5482 5780 390 +15023 4 2 709 26 519 4237 538 5303 +15024 4 2 709 26 463 5427 541 4996 +15025 4 2 709 26 594 5878 734 4690 +15026 4 2 709 26 5667 484 506 5173 +15027 4 2 709 26 5706 493 525 4775 +15028 4 2 709 26 156 5606 269 5547 +15029 4 2 709 26 5448 915 951 4681 +15030 4 2 709 26 5909 460 530 5605 +15031 4 2 709 26 5780 306 446 4808 +15032 4 2 709 26 650 5135 708 4412 +15033 4 2 709 26 5765 492 535 5377 +15034 4 2 709 26 6054 798 743 5324 +15035 4 2 709 26 5433 271 4336 168 +15036 4 2 709 26 5404 602 682 5302 +15037 4 2 709 26 5892 665 4874 618 +15038 4 2 709 26 207 5547 279 4968 +15039 4 2 709 26 5109 806 866 5922 +15040 4 2 709 26 314 4303 393 5749 +15041 4 2 709 26 4286 958 987 5628 +15042 4 2 709 26 5470 584 458 4658 +15043 4 2 709 26 5860 596 698 4801 +15044 4 2 709 26 192 253 4515 5521 +15045 4 2 709 26 214 5185 275 4304 +15046 4 2 709 26 933 5488 967 4784 +15047 4 2 709 26 4558 602 688 5632 +15048 4 2 709 26 955 5871 984 5177 +15049 4 2 709 26 5288 747 827 4457 +15050 4 2 709 26 5377 454 5015 592 +15051 4 2 709 26 5384 309 343 5176 +15052 4 2 709 26 5894 318 426 4496 +15053 4 2 709 26 5838 154 256 5576 +15054 4 2 709 26 151 5461 824 4784 +15055 4 2 709 26 5161 895 975 4476 +15056 4 2 709 26 5021 214 270 4304 +15057 4 2 709 26 329 4982 375 4826 +15058 4 2 709 26 938 5897 993 4312 +15059 4 2 709 26 4384 302 417 5314 +15060 4 2 709 26 5461 151 967 4784 +15061 4 2 709 26 5329 960 1000 4805 +15062 4 2 709 26 5342 204 264 4891 +15063 4 2 709 26 5568 754 826 4935 +15064 4 2 709 26 4918 395 413 5608 +15065 4 2 709 26 156 265 4828 5317 +15066 4 2 709 26 335 5466 439 4659 +15067 4 2 709 26 480 5322 518 4603 +15068 4 2 709 26 5791 255 278 5678 +15069 4 2 709 26 920 5999 940 4978 +15070 4 2 709 26 5625 643 673 5479 +15071 4 2 709 26 190 5753 280 5167 +15072 4 2 709 26 6049 554 567 4423 +15073 4 2 709 26 472 6067 534 4190 +15074 4 2 709 26 808 5288 827 5642 +15075 4 2 709 26 635 6014 736 4516 +15076 4 2 709 26 338 5978 383 4926 +15077 4 2 709 26 612 5229 700 4576 +15078 4 2 709 26 5545 786 834 4615 +15079 4 2 709 26 118 6001 529 5735 +15080 4 2 709 26 744 5464 838 4614 +15081 4 2 709 26 343 4875 416 4540 +15082 4 2 709 26 681 5379 714 5209 +15083 4 2 709 26 849 4501 5700 867 +15084 4 2 709 26 179 5757 264 4891 +15085 4 2 709 26 301 5910 424 5014 +15086 4 2 709 26 5314 358 417 4653 +15087 4 2 709 26 4861 792 847 4428 +15088 4 2 709 26 5892 712 4154 644 +15089 4 2 709 26 4785 266 4413 212 +15090 4 2 709 26 5872 247 198 5364 +15091 4 2 709 26 630 4104 651 4854 +15092 4 2 709 26 5478 5275 260 215 +15093 4 2 709 26 5764 639 708 5414 +15094 4 2 709 26 4862 194 4811 252 +15095 4 2 709 26 5678 257 278 4405 +15096 4 2 709 26 5601 53 252 4811 +15097 4 2 709 26 5176 315 4869 394 +15098 4 2 709 26 5811 620 704 4310 +15099 4 2 709 26 4785 191 292 4718 +15100 4 2 709 26 625 5404 658 4587 +15101 4 2 709 26 327 5426 394 4647 +15102 4 2 709 26 934 4766 4959 964 +15103 4 2 709 26 5990 650 733 4693 +15104 4 2 709 26 53 5601 983 4811 +15105 4 2 709 26 4562 828 5993 749 +15106 4 2 709 26 4451 466 537 5584 +15107 4 2 709 26 6001 118 677 5735 +15108 4 2 709 26 464 4339 523 5804 +15109 4 2 709 26 6036 913 962 4931 +15110 4 2 709 26 4633 4745 857 766 +15111 4 2 709 26 5605 496 530 5143 +15112 4 2 709 26 166 5364 4848 290 +15113 4 2 709 26 915 5448 980 4265 +15114 4 2 709 26 5687 631 679 4985 +15115 4 2 709 26 959 6005 976 5042 +15116 4 2 709 26 171 5941 221 5204 +15117 4 2 709 26 5264 392 411 4644 +15118 4 2 709 26 5808 909 946 4742 +15119 4 2 709 26 5323 456 533 4883 +15120 4 2 709 26 4690 644 4154 734 +15121 4 2 709 26 6052 451 508 5106 +15122 4 2 709 26 615 5816 669 4691 +15123 4 2 709 26 5301 618 699 5911 +15124 4 2 709 26 681 5379 4824 599 +15125 4 2 709 26 5858 669 717 5816 +15126 4 2 709 26 6050 155 239 4820 +15127 4 2 709 26 4685 762 829 5922 +15128 4 2 709 26 619 5712 655 4625 +15129 4 2 709 26 5736 326 352 5264 +15130 4 2 709 26 5590 184 217 4596 +15131 4 2 709 26 229 5829 268 5478 +15132 4 2 709 26 963 5983 902 5282 +15133 4 2 709 26 476 5881 540 5696 +15134 4 2 709 26 5454 746 818 4591 +15135 4 2 709 26 5790 323 337 5233 +15136 4 2 709 26 506 5173 571 4449 +15137 4 2 709 26 5838 5111 210 267 +15138 4 2 709 26 5090 330 366 4955 +15139 4 2 709 26 5645 910 985 4881 +15140 4 2 709 26 72 5621 691 4781 +15141 4 2 709 26 5471 706 723 4241 +15142 4 2 709 26 5621 72 402 4781 +15143 4 2 709 26 926 5001 984 4638 +15144 4 2 709 26 326 5380 392 5264 +15145 4 2 709 26 4742 988 923 5521 +15146 4 2 709 26 6050 197 266 4523 +15147 4 2 709 26 5838 267 154 5961 +15148 4 2 709 26 4832 885 4457 827 +15149 4 2 709 26 5174 484 525 4717 +15150 4 2 709 26 183 5747 240 5409 +15151 4 2 709 26 986 908 4281 5225 +15152 4 2 709 26 5317 211 265 4671 +15153 4 2 709 26 461 4392 524 4894 +15154 4 2 709 26 230 178 4394 5021 +15155 4 2 709 26 4329 619 713 4625 +15156 4 2 709 26 5891 203 225 5398 +15157 4 2 709 26 4281 956 986 5635 +15158 4 2 709 26 448 5300 554 4799 +15159 4 2 709 26 4611 952 5579 916 +15160 4 2 709 26 4457 747 885 4748 +15161 4 2 709 26 450 4812 540 4595 +15162 4 2 709 26 361 4407 5821 415 +15163 4 2 709 26 5215 208 257 4405 +15164 4 2 709 26 5581 331 387 4853 +15165 4 2 709 26 457 5706 525 4717 +15166 4 2 709 26 748 5096 6026 816 +15167 4 2 709 26 1004 4627 5879 900 +15168 4 2 709 26 5542 468 505 4450 +15169 4 2 709 26 5340 201 236 4752 +15170 4 2 709 26 333 5369 371 4602 +15171 4 2 709 26 4692 316 395 5608 +15172 4 2 709 26 5526 629 719 4929 +15173 4 2 709 26 5507 5813 405 320 +15174 4 2 709 26 896 5518 968 5073 +15175 4 2 709 26 4354 511 552 5697 +15176 4 2 709 26 5602 932 970 5080 +15177 4 2 709 26 620 5374 705 4558 +15178 4 2 709 26 4968 194 238 4677 +15179 4 2 709 26 964 5116 898 4766 +15180 4 2 709 26 29 5634 689 5253 +15181 4 2 709 26 5993 783 828 5618 +15182 4 2 709 26 5380 326 410 4486 +15183 4 2 709 26 5558 409 413 4527 +15184 4 2 709 26 5887 752 819 5560 +15185 4 2 709 26 267 4355 4849 198 +15186 4 2 709 26 449 5904 556 5131 +15187 4 2 709 26 790 5740 44 5157 +15188 4 2 709 26 4362 461 593 4894 +15189 4 2 709 26 491 4909 555 4595 +15190 4 2 709 26 894 5730 961 4573 +15191 4 2 709 26 5184 337 380 4657 +15192 4 2 709 26 5486 750 836 4754 +15193 4 2 709 26 5706 457 532 4747 +15194 4 2 709 26 899 5158 924 4850 +15195 4 2 709 26 5861 652 736 4516 +15196 4 2 709 26 4736 877 5311 779 +15197 4 2 709 26 910 5645 4524 4881 +15198 4 2 709 26 453 5562 538 4447 +15199 4 2 709 26 4104 630 735 4694 +15200 4 2 709 26 324 5177 401 4502 +15201 4 2 709 26 4626 837 5799 755 +15202 4 2 709 26 595 5900 647 5030 +15203 4 2 709 26 655 5878 671 4625 +15204 4 2 709 26 5562 477 538 5303 +15205 4 2 709 26 249 5634 29 5253 +15206 4 2 709 26 645 5374 670 4574 +15207 4 2 709 26 5427 463 553 4383 +15208 4 2 709 26 5284 351 409 4527 +15209 4 2 709 26 4579 616 706 4414 +15210 4 2 709 26 36 5616 255 4888 +15211 4 2 709 26 981 4319 1009 5782 +15212 4 2 709 26 254 5167 280 4505 +15213 4 2 709 26 4869 363 425 4430 +15214 4 2 709 26 4237 519 549 5094 +15215 4 2 709 26 41 5156 842 4989 +15216 4 2 709 26 248 5156 41 4989 +15217 4 2 709 26 5300 553 562 4383 +15218 4 2 709 26 5736 303 376 5055 +15219 4 2 709 26 746 5454 864 5214 +15220 4 2 709 26 5616 36 845 4888 +15221 4 2 709 26 6022 494 4864 57 +15222 4 2 709 26 4538 262 5204 171 +15223 4 2 709 26 755 5719 862 4489 +15224 4 2 709 26 5757 247 264 4714 +15225 4 2 709 26 5532 455 536 4664 +15226 4 2 709 26 597 5764 708 5135 +15227 4 2 709 26 4671 193 250 4817 +15228 4 2 709 26 5719 767 5438 835 +15229 4 2 709 26 785 4633 831 5486 +15230 4 2 709 26 5833 475 498 4339 +15231 4 2 709 26 5731 479 513 4944 +15232 4 2 709 26 5323 489 524 4894 +15233 4 2 709 26 5606 300 229 5829 +15234 4 2 709 26 5559 627 660 4603 +15235 4 2 709 26 598 5778 648 4981 +15236 4 2 709 26 5349 327 412 4647 +15237 4 2 709 26 201 5340 235 5143 +15238 4 2 709 26 4249 312 442 4657 +15239 4 2 709 26 178 4960 273 4394 +15240 4 2 709 26 607 5671 671 4369 +15241 4 2 709 26 949 5940 1006 4771 +15242 4 2 709 26 5104 4557 996 890 +15243 4 2 709 26 490 5532 536 5052 +15244 4 2 709 26 748 5441 829 4491 +15245 4 2 709 26 596 5353 707 4890 +15246 4 2 709 26 832 5595 852 4562 +15247 4 2 709 26 890 5564 1010 5104 +15248 4 2 709 26 638 5471 723 4908 +15249 4 2 709 26 5525 4926 338 428 +15250 4 2 709 26 775 5887 819 4688 +15251 4 2 709 26 895 5077 975 4476 +15252 4 2 709 26 4783 60 6072 581 +15253 4 2 709 26 6067 573 548 4809 +15254 4 2 709 26 639 4520 708 5414 +15255 4 2 709 26 5553 186 244 5145 +15256 4 2 709 26 5384 343 388 4540 +15257 4 2 709 26 5922 806 829 5483 +15258 4 2 709 26 5008 157 209 4218 +15259 4 2 709 26 5778 598 668 4749 +15260 4 2 709 26 9 4683 5069 495 +15261 4 2 709 26 5475 921 1026 4695 +15262 4 2 709 26 223 4287 255 5616 +15263 4 2 709 26 4201 5347 830 850 +15264 4 2 709 26 5204 243 291 4314 +15265 4 2 709 26 142 5950 964 4959 +15266 4 2 709 26 829 5483 851 4491 +15267 4 2 709 26 5427 553 509 4680 +15268 4 2 709 26 190 5797 235 4709 +15269 4 2 709 26 793 5171 745 5925 +15270 4 2 709 26 820 5950 142 4959 +15271 4 2 709 26 4930 633 722 4928 +15272 4 2 709 26 700 4981 722 4576 +15273 4 2 709 26 627 5559 685 4995 +15274 4 2 709 26 488 4747 501 5181 +15275 4 2 709 26 624 5844 702 5417 +15276 4 2 709 26 5298 631 691 4781 +15277 4 2 709 26 314 362 5397 5380 +15278 4 2 709 26 798 5517 800 5324 +15279 4 2 709 26 9 4683 200 5069 +15280 4 2 709 26 610 5577 720 4500 +15281 4 2 709 26 4510 488 575 5181 +15282 4 2 709 26 6035 129 789 6063 +15283 4 2 709 26 628 4309 5301 700 +15284 4 2 709 26 4817 12 5646 547 +15285 4 2 709 26 632 4686 678 5732 +15286 4 2 709 26 768 4277 860 5038 +15287 4 2 709 26 5101 891 997 4802 +15288 4 2 709 26 5941 171 189 4538 +15289 4 2 709 26 5479 605 673 4694 +15290 4 2 709 26 5229 684 715 4322 +15291 4 2 709 26 341 357 4994 5622 +15292 4 2 709 26 4315 1032 893 5495 +15293 4 2 709 26 921 5475 944 4726 +15294 4 2 709 26 5585 162 234 4718 +15295 4 2 709 26 281 5829 300 4828 +15296 4 2 709 26 169 4397 256 4810 +15297 4 2 709 26 5671 667 713 4833 +15298 4 2 709 26 305 5977 418 5118 +15299 4 2 709 26 815 885 4748 5263 +15300 4 2 709 26 342 4384 417 5051 +15301 4 2 709 26 972 905 4521 5772 +15302 4 2 709 26 180 5443 227 4654 +15303 4 2 709 26 5813 331 373 4587 +15304 4 2 709 26 752 4251 795 5092 +15305 4 2 709 26 5634 659 689 5571 +15306 4 2 709 26 5602 897 965 4695 +15307 4 2 709 26 932 5602 965 4779 +15308 4 2 709 26 328 5672 395 4918 +15309 4 2 709 26 49 5224 959 4912 +15310 4 2 709 26 757 5967 786 5096 +15311 4 2 709 26 340 5249 381 4732 +15312 4 2 709 26 5471 638 706 4579 +15313 4 2 709 26 914 4972 961 4771 +15314 4 2 709 26 524 5881 476 4886 +15315 4 2 709 26 262 5204 291 4313 +15316 4 2 709 26 5644 794 4399 833 +15317 4 2 709 26 964 5116 5950 922 +15318 4 2 709 26 5718 856 886 4910 +15319 4 2 709 26 5398 260 268 4424 +15320 4 2 709 26 990 4315 4524 4444 +15321 4 2 709 26 763 4289 4682 839 +15322 4 2 709 26 608 4154 734 4461 +15323 4 2 709 26 364 5017 406 4665 +15324 4 2 709 26 260 5478 268 4424 +15325 4 2 709 26 563 4551 568 5350 +15326 4 2 709 26 601 5208 683 5144 +15327 4 2 709 26 6014 635 674 4847 +15328 4 2 709 26 5094 112 954 4921 +15329 4 2 709 26 5156 40 808 4949 +15330 4 2 709 26 5037 943 922 5116 +15331 4 2 709 26 605 5479 678 4984 +15332 4 2 709 26 5953 764 833 4399 +15333 4 2 709 26 5462 78 725 4916 +15334 4 2 709 26 4510 488 5460 543 +15335 4 2 709 26 5731 513 543 5150 +15336 4 2 709 26 355 302 4816 5314 +15337 4 2 709 26 5313 895 978 4892 +15338 4 2 709 26 5656 471 544 4760 +15339 4 2 709 26 4598 281 4640 225 +15340 4 2 709 26 5590 173 242 4523 +15341 4 2 709 26 112 5094 519 4921 +15342 4 2 709 26 4520 614 708 5049 +15343 4 2 709 26 957 5149 5142 904 +15344 4 2 709 26 5749 342 392 5308 +15345 4 2 709 26 990 4612 4444 4524 +15346 4 2 709 26 625 4738 5630 687 +15347 4 2 709 26 756 6066 863 4390 +15348 4 2 709 26 775 4688 870 5197 +15349 4 2 709 26 632 4686 4984 678 +15350 4 2 709 26 5705 854 862 4489 +15351 4 2 709 26 40 5156 216 4949 +15352 4 2 709 26 5340 164 235 4905 +15353 4 2 709 26 4817 12 250 5646 +15354 4 2 709 26 649 5860 719 4929 +15355 4 2 709 26 6001 117 496 5053 +15356 4 2 709 26 762 4293 843 4739 +15357 4 2 709 26 448 5175 509 4680 +15358 4 2 709 26 60 5637 550 4783 +15359 4 2 709 26 500 4190 560 4917 +15360 4 2 709 26 403 5637 60 4783 +15361 4 2 709 26 5462 435 78 4916 +15362 4 2 709 26 748 5096 786 5545 +15363 4 2 709 26 5224 49 222 4912 +15364 4 2 709 26 534 5562 560 4190 +15365 4 2 709 26 5200 5605 529 460 +15366 4 2 709 26 849 4501 759 4832 +15367 4 2 709 26 5160 756 838 5458 +15368 4 2 709 26 5068 473 539 4917 +15369 4 2 709 26 469 4237 549 4503 +15370 4 2 709 26 172 5646 219 5553 +15371 4 2 709 26 351 4918 413 4527 +15372 4 2 709 26 4443 5386 1008 887 +15373 4 2 709 26 4848 166 226 4394 +15374 4 2 709 26 158 5409 240 4620 +15375 4 2 709 26 303 5736 420 5055 +15376 4 2 709 26 326 5736 376 5556 +15377 4 2 709 26 318 5745 398 4496 +15378 4 2 709 26 191 4911 234 4718 +15379 4 2 709 26 803 5038 860 4512 +15380 4 2 709 26 5055 416 447 4875 +15381 4 2 709 26 4905 190 235 4709 +15382 4 2 709 26 989 5137 1014 4493 +15383 4 2 709 26 4675 189 294 4538 +15384 4 2 709 26 68 6069 493 4880 +15385 4 2 709 26 4282 936 999 4443 +15386 4 2 709 26 448 6049 568 4551 +15387 4 2 709 26 481 4503 549 4998 +15388 4 2 709 26 812 4956 831 5752 +15389 4 2 709 26 5626 454 5377 535 +15390 4 2 709 26 4611 145 811 5603 +15391 4 2 709 26 202 5585 234 4778 +15392 4 2 709 26 5626 478 516 4600 +15393 4 2 709 26 4728 798 4935 777 +15394 4 2 709 26 4897 818 768 4277 +15395 4 2 709 26 4339 464 498 5378 +15396 4 2 709 26 668 5524 703 4943 +15397 4 2 709 26 471 5656 551 4553 +15398 4 2 709 26 763 4289 807 5618 +15399 4 2 709 26 4241 595 667 4833 +15400 4 2 709 26 778 5517 881 4870 +15401 4 2 709 26 822 4870 881 4656 +15402 4 2 709 26 906 5077 1005 4638 +15403 4 2 709 26 923 5533 946 4742 +15404 4 2 709 26 671 5671 713 4625 +15405 4 2 709 26 465 5731 543 4510 +15406 4 2 709 26 464 5804 522 5531 +15407 4 2 709 26 4758 606 675 4929 +15408 4 2 709 26 506 5131 586 5667 +15409 4 2 709 26 4933 335 384 4659 +15410 4 2 709 26 963 5983 4557 931 +15411 4 2 709 26 186 5553 219 4600 +15412 4 2 709 26 485 5542 505 5341 +15413 4 2 709 26 5308 342 386 5051 +15414 4 2 709 26 785 5486 836 5160 +15415 4 2 709 26 4285 611 691 5298 +15416 4 2 709 26 531 5561 482 5007 +15417 4 2 709 26 311 5551 379 4652 +15418 4 2 709 26 4233 772 813 4958 +15419 4 2 709 26 5405 163 237 4991 +15420 4 2 709 26 4832 784 849 4591 +15421 4 2 709 26 117 642 5053 6001 +15422 4 2 709 26 5631 87 369 4589 +15423 4 2 709 26 204 5606 229 4891 +15424 4 2 709 26 4897 768 853 4754 +15425 4 2 709 26 997 908 4382 5420 +15426 4 2 709 26 24 4847 5179 251 +15427 4 2 709 26 78 4916 379 6083 +15428 4 2 709 26 4688 82 385 5360 +15429 4 2 709 26 213 4780 271 4336 +15430 4 2 709 26 5920 1006 4771 914 +15431 4 2 709 26 4401 575 501 5181 +15432 4 2 709 26 5364 166 5757 247 +15433 4 2 709 26 5860 5816 698 719 +15434 4 2 709 26 5812 174 228 4440 +15435 4 2 709 26 780 5328 866 4739 +15436 4 2 709 26 501 5131 556 4401 +15437 4 2 709 26 4675 164 236 5340 +15438 4 2 709 26 4690 644 594 5892 +15439 4 2 709 26 82 4688 819 5360 +15440 4 2 709 26 467 5765 535 4280 +15441 4 2 709 26 912 5320 963 5000 +15442 4 2 709 26 899 5488 971 4703 +15443 4 2 709 26 653 5860 5353 596 +15444 4 2 709 26 911 4286 987 4726 +15445 4 2 709 26 4808 328 374 4918 +15446 4 2 709 26 5521 287 47 4983 +15447 4 2 709 26 346 57 6022 4864 +15448 4 2 709 26 69 6069 348 5029 +15449 4 2 709 26 5402 437 95 5001 +15450 4 2 709 26 5651 894 961 4573 +15451 4 2 709 26 536 5322 4664 455 +15452 4 2 709 26 4535 322 420 4750 +15453 4 2 709 26 145 4611 952 5603 +15454 4 2 709 26 69 640 6069 5029 +15455 4 2 709 26 4538 262 209 5008 +15456 4 2 709 26 466 4451 571 5173 +15457 4 2 709 26 5632 638 688 4908 +15458 4 2 709 26 5750 454 512 5236 +15459 4 2 709 26 4956 774 831 4743 +15460 4 2 709 26 597 5135 710 4574 +15461 4 2 709 26 4441 931 996 4557 +15462 4 2 709 26 104 6022 932 4779 +15463 4 2 709 26 920 4881 1013 5999 +15464 4 2 709 26 611 4459 710 5298 +15465 4 2 709 26 382 4666 313 5543 +15466 4 2 709 26 24 4847 695 5179 +15467 4 2 709 26 449 5131 571 4590 +15468 4 2 709 26 5237 4783 429 340 +15469 4 2 709 26 4841 921 987 4726 +15470 4 2 709 26 5098 441 334 4916 +15471 4 2 709 26 5517 798 881 4935 +15472 4 2 709 26 308 4644 5192 411 +15473 4 2 709 26 510 6049 567 5068 +15474 4 2 709 26 348 6069 68 4880 +15475 4 2 709 26 947 5101 997 4382 +15476 4 2 709 26 365 4543 405 5507 +15477 4 2 709 26 765 4615 856 4410 +15478 4 2 709 26 913 4319 1002 4522 +15479 4 2 709 26 969 4663 1023 4983 +15480 4 2 709 26 5291 165 238 4968 +15481 4 2 709 26 889 5808 946 5071 +15482 4 2 709 26 5532 490 541 4996 +15483 4 2 709 26 167 4640 225 5398 +15484 4 2 709 26 5887 4251 878 752 +15485 4 2 709 26 4736 864 5214 802 +15486 4 2 709 26 6061 601 703 4376 +15487 4 2 709 26 5904 449 521 4590 +15488 4 2 709 26 5543 313 383 4926 +15489 4 2 709 26 798 4728 6054 865 +15490 4 2 709 26 336 5432 443 5102 +15491 4 2 709 26 87 5631 809 4589 +15492 4 2 709 26 599 4478 701 5379 +15493 4 2 709 26 617 5789 695 4516 +15494 4 2 709 26 4382 908 947 5225 +15495 4 2 709 26 323 4540 416 4409 +15496 4 2 709 26 5618 807 828 4588 +15497 4 2 709 26 686 4943 703 4376 +15498 4 2 709 26 951 5793 976 4856 +15499 4 2 709 26 5872 247 4714 160 +15500 4 2 709 26 4890 717 5858 680 +15501 4 2 709 26 382 4666 5102 443 +15502 4 2 709 26 331 5813 405 4853 +15503 4 2 709 26 921 5184 965 4695 +15504 4 2 709 26 488 5102 532 4747 +15505 4 2 709 26 4087 665 718 4990 +15506 4 2 709 26 221 5321 243 5204 +15507 4 2 709 26 359 4792 418 4408 +15508 4 2 709 26 5271 656 671 4369 +15509 4 2 709 26 5633 125 693 4794 +15510 4 2 709 26 645 4459 682 5302 +15511 4 2 709 26 4827 749 852 4562 +15512 4 2 709 26 218 4863 185 4605 +15513 4 2 709 26 5740 141 934 4959 +15514 4 2 709 26 626 5571 659 4596 +15515 4 2 709 26 4559 465 575 4510 +15516 4 2 709 26 4897 818 5454 794 +15517 4 2 709 26 951 4856 909 5808 +15518 4 2 709 26 5006 620 688 4558 +15519 4 2 709 26 6031 690 720 4500 +15520 4 2 709 26 161 5443 225 4598 +15521 4 2 709 26 5426 327 423 5230 +15522 4 2 709 26 808 5642 842 5156 +15523 4 2 709 26 5109 806 4614 744 +15524 4 2 709 26 898 5116 1023 4663 +15525 4 2 709 26 163 5926 206 4991 +15526 4 2 709 26 4930 5735 677 633 +15527 4 2 709 26 616 4854 651 4414 +15528 4 2 709 26 620 5006 704 4310 +15529 4 2 709 26 889 5071 994 4599 +15530 4 2 709 26 467 4280 547 4678 +15531 4 2 709 26 308 5308 386 4466 +15532 4 2 709 26 778 4782 839 4682 +15533 4 2 709 26 4562 772 832 4233 +15534 4 2 709 26 391 4535 411 5192 +15535 4 2 709 26 516 4280 535 5626 +15536 4 2 709 26 604 5572 677 4930 +15537 4 2 709 26 168 213 4336 5185 +15538 4 2 709 26 4285 658 682 5404 +15539 4 2 709 26 744 6007 801 5464 +15540 4 2 709 26 4871 793 4348 859 +15541 4 2 709 26 1003 999 4544 4769 +15542 4 2 709 26 451 5256 557 5106 +15543 4 2 709 26 4218 205 294 4905 +15544 4 2 709 26 5219 377 5230 317 +15545 4 2 709 26 793 5171 4348 859 +15546 4 2 709 26 5603 952 982 5579 +15547 4 2 709 26 790 141 5740 4959 +15548 4 2 709 26 499 5372 521 4590 +15549 4 2 709 26 5671 607 723 4908 +15550 4 2 709 26 156 5547 207 5317 +15551 4 2 709 26 4925 573 503 4402 +15552 4 2 709 26 113 5094 985 4998 +15553 4 2 709 26 747 4201 850 4748 +15554 4 2 709 26 4847 189 236 4675 +15555 4 2 709 26 908 950 4444 5420 +15556 4 2 709 26 549 5094 113 4998 +15557 4 2 709 26 5633 545 125 4794 +15558 4 2 709 26 5428 792 816 4861 +15559 4 2 709 26 5166 136 657 4958 +15560 4 2 709 26 342 6023 4642 393 +15561 4 2 709 26 5606 204 269 5342 +15562 4 2 709 26 531 5561 4670 585 +15563 4 2 709 26 4294 473 567 5068 +15564 4 2 709 26 5318 780 843 4739 +15565 4 2 709 26 136 5166 813 4958 +15566 4 2 709 26 904 5142 989 4493 +15567 4 2 709 26 5147 756 863 4390 +15568 4 2 709 26 478 5003 515 4914 +15569 4 2 709 26 919 5594 955 4936 +15570 4 2 709 26 4387 305 5022 377 +15571 4 2 709 26 5571 626 683 5144 +15572 4 2 709 26 499 4451 537 5480 +15573 4 2 709 26 5189 619 701 4329 +15574 4 2 709 26 4633 5464 785 857 +15575 4 2 709 26 930 5772 1031 5188 +15576 4 2 709 26 5167 17 544 5162 +15577 4 2 709 26 5176 315 343 6060 +15578 4 2 709 26 153 5275 260 4731 +15579 4 2 709 26 4696 34 826 5057 +15580 4 2 709 26 5167 254 17 5162 +15581 4 2 709 26 6061 621 666 4997 +15582 4 2 709 26 330 306 5482 5090 +15583 4 2 709 26 193 5549 296 5007 +15584 4 2 709 26 4696 34 5057 232 +15585 4 2 709 26 4929 629 675 4870 +15586 4 2 709 26 855 756 5147 5458 +15587 4 2 709 26 5691 350 4982 375 +15588 4 2 709 26 5460 66 583 5102 +15589 4 2 709 26 634 5174 672 4693 +15590 4 2 709 26 5579 916 973 4879 +15591 4 2 709 26 810 5616 845 4287 +15592 4 2 709 26 5888 5417 624 681 +15593 4 2 709 26 301 4430 5014 425 +15594 4 2 709 26 5402 95 1017 5001 +15595 4 2 709 26 342 5749 393 4642 +15596 4 2 709 26 4315 1032 4623 962 +15597 4 2 709 26 5502 459 531 4670 +15598 4 2 709 26 4817 482 547 4678 +15599 4 2 709 26 4870 131 675 6082 +15600 4 2 709 26 613 4374 707 4668 +15601 4 2 709 26 172 5646 4671 250 +15602 4 2 709 26 5621 74 658 4587 +15603 4 2 709 26 459 4925 585 4670 +15604 4 2 709 26 472 4190 566 4402 +15605 4 2 709 26 4890 717 596 4801 +15606 4 2 709 26 888 5112 1005 4865 +15607 4 2 709 26 51 5601 4605 953 +15608 4 2 709 26 5236 454 523 5015 +15609 4 2 709 26 5150 64 367 4944 +15610 4 2 709 26 5952 783 837 4626 +15611 4 2 709 26 4792 4528 319 418 +15612 4 2 709 26 5525 373 402 5621 +15613 4 2 709 26 614 5559 693 5049 +15614 4 2 709 26 5441 748 773 4904 +15615 4 2 709 26 5814 176 245 4901 +15616 4 2 709 26 51 5601 218 4605 +15617 4 2 709 26 74 5621 373 4587 +15618 4 2 709 26 312 5237 340 4732 +15619 4 2 709 26 304 4407 415 4692 +15620 4 2 709 26 900 928 5313 5879 +15621 4 2 709 26 341 5402 378 4753 +15622 4 2 709 26 325 5581 387 4554 +15623 4 2 709 26 386 308 4466 5234 +15624 4 2 709 26 4652 441 4916 379 +15625 4 2 709 26 926 5408 1027 5402 +15626 4 2 709 26 758 5552 818 5263 +15627 4 2 709 26 5642 759 842 4501 +15628 4 2 709 26 5398 203 260 4731 +15629 4 2 709 26 406 5672 421 4665 +15630 4 2 709 26 5900 595 706 4241 +15631 4 2 709 26 5291 200 233 4683 +15632 4 2 709 26 4478 622 701 5189 +15633 4 2 709 26 5397 362 424 5014 +15634 4 2 709 26 4685 762 4293 829 +15635 4 2 709 26 58 5249 526 4864 +15636 4 2 709 26 570 5085 542 4507 +15637 4 2 709 26 103 5184 380 4779 +15638 4 2 709 26 5249 58 381 4864 +15639 4 2 709 26 5687 434 72 4781 +15640 4 2 709 26 536 5322 480 4948 +15641 4 2 709 26 634 4693 650 5049 +15642 4 2 709 26 801 4745 857 4416 +15643 4 2 709 26 5184 103 965 4779 +15644 4 2 709 26 996 4881 5999 1013 +15645 4 2 709 26 398 5197 426 4496 +15646 4 2 709 26 4535 352 411 5264 +15647 4 2 709 26 971 5402 1027 4703 +15648 4 2 709 26 4451 499 571 4590 +15649 4 2 709 26 4598 281 161 5351 +15650 4 2 709 26 5007 233 10 4683 +15651 4 2 709 26 4684 452 522 4900 +15652 4 2 709 26 152 4852 933 4784 +15653 4 2 709 26 6060 376 447 5055 +15654 4 2 709 26 929 4454 973 5481 +15655 4 2 709 26 5862 916 957 4956 +15656 4 2 709 26 5158 899 1027 4703 +15657 4 2 709 26 5161 919 958 4602 +15658 4 2 709 26 4677 55 238 5172 +15659 4 2 709 26 4287 174 255 5678 +15660 4 2 709 26 55 4677 968 5172 +15661 4 2 709 26 601 6061 724 5208 +15662 4 2 709 26 5014 362 425 5442 +15663 4 2 709 26 5022 353 419 4370 +15664 4 2 709 26 308 4644 392 5308 +15665 4 2 709 26 5007 10 531 4683 +15666 4 2 709 26 5329 915 1003 4265 +15667 4 2 709 26 5797 19 235 5143 +15668 4 2 709 26 601 5144 686 4376 +15669 4 2 709 26 64 5150 513 4944 +15670 4 2 709 26 742 5705 862 5512 +15671 4 2 709 26 809 4293 829 5441 +15672 4 2 709 26 653 5860 649 5530 +15673 4 2 709 26 5460 430 66 5102 +15674 4 2 709 26 159 5459 271 4780 +15675 4 2 709 26 913 4522 962 4931 +15676 4 2 709 26 4401 575 4559 556 +15677 4 2 709 26 245 4901 263 4377 +15678 4 2 709 26 163 5405 231 4723 +15679 4 2 709 26 4941 307 375 4826 +15680 4 2 709 26 5197 84 844 5164 +15681 4 2 709 26 377 4222 5230 327 +15682 4 2 709 26 316 4941 375 5691 +15683 4 2 709 26 4888 777 845 4728 +15684 4 2 709 26 5719 755 835 4626 +15685 4 2 709 26 4368 471 558 4553 +15686 4 2 709 26 627 5709 661 4948 +15687 4 2 709 26 4660 412 5349 389 +15688 4 2 709 26 4422 944 1010 5104 +15689 4 2 709 26 5965 750 774 4743 +15690 4 2 709 26 920 4881 4998 985 +15691 4 2 709 26 528 4998 4969 481 +15692 4 2 709 26 5197 398 84 5164 +15693 4 2 709 26 5597 603 672 4693 +15694 4 2 709 26 799 745 5171 5718 +15695 4 2 709 26 5301 618 4874 628 +15696 4 2 709 26 5858 622 669 4478 +15697 4 2 709 26 5874 595 697 5030 +15698 4 2 709 26 19 5797 530 5143 +15699 4 2 709 26 312 4249 354 5237 +15700 4 2 709 26 4785 266 173 4523 +15701 4 2 709 26 542 6052 570 4507 +15702 4 2 709 26 4870 729 131 4782 +15703 4 2 709 26 4849 222 246 4239 +15704 4 2 709 26 137 4977 726 5732 +15705 4 2 709 26 867 4989 842 4501 +15706 4 2 709 26 5249 485 584 5341 +15707 4 2 709 26 5521 47 1015 4983 +15708 4 2 709 26 4960 226 273 4394 +15709 4 2 709 26 4928 120 579 5735 +15710 4 2 709 26 5780 344 390 4528 +15711 4 2 709 26 786 4910 856 4615 +15712 4 2 709 26 1004 4627 900 5124 +15713 4 2 709 26 4551 497 448 5175 +15714 4 2 709 26 5560 825 5092 752 +15715 4 2 709 26 769 4748 850 5025 +15716 4 2 709 26 6069 640 128 4775 +15717 4 2 709 26 4847 635 695 4516 +15718 4 2 709 26 4459 645 710 4574 +15719 4 2 709 26 5633 123 518 4603 +15720 4 2 709 26 186 4914 245 5145 +15721 4 2 709 26 970 4978 4998 920 +15722 4 2 709 26 452 4684 565 5195 +15723 4 2 709 26 4757 765 799 4410 +15724 4 2 709 26 185 4239 222 4912 +15725 4 2 709 26 6069 128 493 4775 +15726 4 2 709 26 4769 901 961 5651 +15727 4 2 709 26 5736 352 420 4535 +15728 4 2 709 26 305 4387 5118 418 +15729 4 2 709 26 123 5633 660 4603 +15730 4 2 709 26 327 5349 353 5022 +15731 4 2 709 26 4332 654 709 4800 +15732 4 2 709 26 917 892 5493 5042 +15733 4 2 709 26 6052 558 570 4553 +15734 4 2 709 26 950 6036 962 4315 +15735 4 2 709 26 5006 607 656 4369 +15736 4 2 709 26 4775 127 525 5174 +15737 4 2 709 26 599 5417 702 4478 +15738 4 2 709 26 5581 325 396 4519 +15739 4 2 709 26 4775 127 5174 672 +15740 4 2 709 26 233 5007 296 4646 +15741 4 2 709 26 5197 83 4688 870 +15742 4 2 709 26 5478 179 229 4891 +15743 4 2 709 26 607 5006 688 4908 +15744 4 2 709 26 995 5220 905 4417 +15745 4 2 709 26 377 4222 327 5022 +15746 4 2 709 26 5417 599 681 4824 +15747 4 2 709 26 939 5564 963 5320 +15748 4 2 709 26 224 214 4592 5185 +15749 4 2 709 26 4668 5571 689 613 +15750 4 2 709 26 5525 373 5813 320 +15751 4 2 709 26 92 347 4852 4795 +15752 4 2 709 26 5700 797 867 4634 +15753 4 2 709 26 6049 510 568 5350 +15754 4 2 709 26 4860 177 258 5945 +15755 4 2 709 26 6012 680 724 4890 +15756 4 2 709 26 894 5651 929 5481 +15757 4 2 709 26 4689 459 495 5502 +15758 4 2 709 26 5859 325 387 4554 +15759 4 2 709 26 905 930 5281 5772 +15760 4 2 709 26 546 5141 120 4928 +15761 4 2 709 26 5357 5732 139 678 +15762 4 2 709 26 956 4444 4281 908 +15763 4 2 709 26 104 346 6022 4779 +15764 4 2 709 26 5357 5732 825 139 +15765 4 2 709 26 4977 137 690 5166 +15766 4 2 709 26 795 799 5171 4251 +15767 4 2 709 26 234 4911 31 4778 +15768 4 2 709 26 5691 350 316 5558 +15769 4 2 709 26 928 979 4865 5879 +15770 4 2 709 26 528 4969 5470 458 +15771 4 2 709 26 867 6010 4634 781 +15772 4 2 709 26 4983 192 231 4723 +15773 4 2 709 26 494 5470 528 5080 +15774 4 2 709 26 78 4916 6083 673 +15775 4 2 709 26 490 5052 557 4356 +15776 4 2 709 26 31 4911 676 4778 +15777 4 2 709 26 1004 5124 1008 4443 +15778 4 2 709 26 6066 768 4754 836 +15779 4 2 709 26 192 5926 295 4723 +15780 4 2 709 26 5256 490 557 4356 +15781 4 2 709 26 813 5931 832 4233 +15782 4 2 709 26 4319 903 1002 5445 +15783 4 2 709 26 610 4500 690 6058 +15784 4 2 709 26 122 5141 517 4948 +15785 4 2 709 26 630 4916 673 4694 +15786 4 2 709 26 365 4543 4826 307 +15787 4 2 709 26 5769 966 1025 4942 +15788 4 2 709 26 477 5562 534 4612 +15789 4 2 709 26 4849 222 4515 175 +15790 4 2 709 26 867 4989 6010 781 +15791 4 2 709 26 4592 5021 214 230 +15792 4 2 709 26 5533 923 1023 4983 +15793 4 2 709 26 637 4890 707 4374 +15794 4 2 709 26 5518 896 966 4942 +15795 4 2 709 26 187 5008 262 4313 +15796 4 2 709 26 318 5894 406 5017 +15797 4 2 709 26 5804 492 522 4684 +15798 4 2 709 26 5017 306 404 5090 +15799 4 2 709 26 165 5291 233 4646 +15800 4 2 709 26 65 5460 543 5150 +15801 4 2 709 26 309 5369 333 4660 +15802 4 2 709 26 939 5798 977 4534 +15803 4 2 709 26 157 4316 258 4654 +15804 4 2 709 26 625 4738 602 5404 +15805 4 2 709 26 4407 356 361 5827 +15806 4 2 709 26 4691 669 702 4478 +15807 4 2 709 26 307 405 4543 4853 +15808 4 2 709 26 5846 455 541 5532 +15809 4 2 709 26 334 5462 396 4519 +15810 4 2 709 26 5464 801 857 4416 +15811 4 2 709 26 4714 241 264 5342 +15812 4 2 709 26 4422 944 4726 1010 +15813 4 2 709 26 4283 907 5579 982 +15814 4 2 709 26 636 5530 739 4911 +15815 4 2 709 26 5645 918 974 4524 +15816 4 2 709 26 611 4285 682 4459 +15817 4 2 709 26 192 5926 5111 210 +15818 4 2 709 26 32 641 6035 4778 +15819 4 2 709 26 5276 182 259 4960 +15820 4 2 709 26 490 5256 542 4996 +15821 4 2 709 26 310 5622 341 4753 +15822 4 2 709 26 227 4901 176 6056 +15823 4 2 709 26 6054 743 837 4980 +15824 4 2 709 26 4383 542 562 5085 +15825 4 2 709 26 4706 115 528 5080 +15826 4 2 709 26 771 5288 4606 830 +15827 4 2 709 26 928 4388 1005 5077 +15828 4 2 709 26 565 5195 4678 507 +15829 4 2 709 26 905 995 4417 5281 +15830 4 2 709 26 120 5141 692 4928 +15831 4 2 709 26 6067 514 534 4612 +15832 4 2 709 26 753 5328 780 4791 +15833 4 2 709 26 4706 115 5080 970 +15834 4 2 709 26 246 185 4722 4239 +15835 4 2 709 26 4553 512 570 5236 +15836 4 2 709 26 961 949 4771 5730 +15837 4 2 709 26 5233 323 360 4409 +15838 4 2 709 26 623 4329 713 4833 +15839 4 2 709 26 4977 137 5166 846 +15840 4 2 709 26 166 4729 5757 215 +15841 4 2 709 26 5874 697 714 5209 +15842 4 2 709 26 780 4933 821 4791 +15843 4 2 709 26 333 4936 389 4660 +15844 4 2 709 26 996 4881 910 4441 +15845 4 2 709 26 922 5037 4855 982 +15846 4 2 709 26 4371 317 374 5219 +15847 4 2 709 26 5164 85 814 4955 +15848 4 2 709 26 459 4689 527 4925 +15849 4 2 709 26 122 5141 4948 661 +15850 4 2 709 26 5626 454 478 5003 +15851 4 2 709 26 62 5637 372 4608 +15852 4 2 709 26 85 5164 366 4955 +15853 4 2 709 26 5637 62 520 4608 +15854 4 2 709 26 628 4309 715 4023 +15855 4 2 709 26 4811 54 4677 1022 +15856 4 2 709 26 5687 72 730 4781 +15857 4 2 709 26 928 4388 4865 1005 +15858 4 2 709 26 301 4430 363 5770 +15859 4 2 709 26 99 5628 958 4602 +15860 4 2 709 26 5797 17 577 5167 +15861 4 2 709 26 4562 828 772 4588 +15862 4 2 709 26 5628 99 371 4602 +15863 4 2 709 26 5405 199 231 4699 +15864 4 2 709 26 5821 334 5098 361 +15865 4 2 709 26 934 4766 898 4699 +15866 4 2 709 26 709 5414 639 4332 +15867 4 2 709 26 797 5214 877 4634 +15868 4 2 709 26 4443 5232 887 999 +15869 4 2 709 26 4190 500 566 4900 +15870 4 2 709 26 969 4663 4699 898 +15871 4 2 709 26 769 5799 854 4001 +15872 4 2 709 26 907 4454 994 5037 +15873 4 2 709 26 152 788 4852 4784 +15874 4 2 709 26 32 6035 202 4778 +15875 4 2 709 26 5318 90 873 4933 +15876 4 2 709 26 5137 149 840 5142 +15877 4 2 709 26 788 92 4852 4795 +15878 4 2 709 26 5195 503 566 4402 +15879 4 2 709 26 4805 903 5714 960 +15880 4 2 709 26 929 980 4599 5651 +15881 4 2 709 26 4154 666 712 4997 +15882 4 2 709 26 980 4769 1003 4265 +15883 4 2 709 26 5751 941 992 5112 +15884 4 2 709 26 11 5007 580 4817 +15885 4 2 709 26 227 5443 263 4901 +15886 4 2 709 26 4929 606 739 4650 +15887 4 2 709 26 283 5007 11 4817 +15888 4 2 709 26 4992 197 4523 242 +15889 4 2 709 26 5318 431 90 4933 +15890 4 2 709 26 4748 769 815 4001 +15891 4 2 709 26 941 5408 5158 1027 +15892 4 2 709 26 5460 65 397 5150 +15893 4 2 709 26 4780 187 4860 213 +15894 4 2 709 26 70 5029 383 5687 +15895 4 2 709 26 5137 149 5142 989 +15896 4 2 709 26 654 4023 4874 628 +15897 4 2 709 26 5029 70 679 5687 +15898 4 2 709 26 990 4315 4444 950 +15899 4 2 709 26 540 5881 563 5350 +15900 4 2 709 26 4637 666 608 4154 +15901 4 2 709 26 5811 609 670 5764 +15902 4 2 709 26 941 5408 945 5112 +15903 4 2 709 26 4596 26 626 4938 +15904 4 2 709 26 4870 131 872 4782 +15905 4 2 709 26 784 5263 818 4591 +15906 4 2 709 26 178 5021 259 4960 +15907 4 2 709 26 893 5495 974 4524 +15908 4 2 709 26 4534 911 1010 4726 +15909 4 2 709 26 4811 54 288 4677 +15910 4 2 709 26 527 4925 5769 483 +15911 4 2 709 26 4596 26 4938 184 +15912 4 2 709 26 5311 790 4959 820 +15913 4 2 709 26 5197 339 426 4934 +15914 4 2 709 26 209 4218 294 4538 +15915 4 2 709 26 837 6054 5025 805 +15916 4 2 709 26 4283 907 982 5037 +15917 4 2 709 26 5197 83 433 4688 +15918 4 2 709 26 14 4600 219 5646 +15919 4 2 709 26 5055 360 416 4409 +15920 4 2 709 26 5426 363 394 4869 +15921 4 2 709 26 14 5646 516 4600 +15922 4 2 709 26 471 5406 4368 508 +15923 4 2 709 26 4736 877 802 5214 +15924 4 2 709 26 888 5648 992 5112 +15925 4 2 709 26 676 4650 606 4778 +15926 4 2 709 26 4626 783 835 4827 +15927 4 2 709 26 980 901 4769 5651 +15928 4 2 709 26 981 5188 903 4319 +15929 4 2 709 26 751 4667 823 4634 +15930 4 2 709 26 5195 507 585 5561 +15931 4 2 709 26 155 4351 266 5215 +15932 4 2 709 26 4522 902 4312 938 +15933 4 2 709 26 5301 598 700 4981 +15934 4 2 709 26 4692 316 4941 345 +15935 4 2 709 26 600 4023 715 4322 +15936 4 2 709 26 5219 377 344 4387 +15937 4 2 709 26 4888 232 4975 195 +15938 4 2 709 26 4665 328 364 4808 +15939 4 2 709 26 342 6023 302 4384 +15940 4 2 709 26 486 5167 544 4760 +15941 4 2 709 26 4329 623 701 5379 +15942 4 2 709 26 5530 649 739 4929 +15943 4 2 709 26 456 524 4354 5323 +15944 4 2 709 26 4528 344 418 4387 +15945 4 2 709 26 5102 67 532 4880 +15946 4 2 709 26 21 4752 201 5053 +15947 4 2 709 26 4827 783 749 5993 +15948 4 2 709 26 4282 936 4769 999 +15949 4 2 709 26 347 5815 378 4852 +15950 4 2 709 26 5311 790 751 4667 +15951 4 2 709 26 4968 165 296 4646 +15952 4 2 709 26 676 4650 4911 739 +15953 4 2 709 26 595 5874 623 4833 +15954 4 2 709 26 4722 241 4863 185 +15955 4 2 709 26 5634 27 659 4596 +15956 4 2 709 26 668 617 4345 4943 +15957 4 2 709 26 27 5634 217 4596 +15958 4 2 709 26 6010 781 823 4634 +15959 4 2 709 26 791 5705 742 5939 +15960 4 2 709 26 45 4699 5740 934 +15961 4 2 709 26 654 4023 600 4800 +15962 4 2 709 26 452 5195 566 4900 +15963 4 2 709 26 5577 610 697 5209 +15964 4 2 709 26 4689 935 966 5518 +15965 4 2 709 26 184 5590 242 4992 +15966 4 2 709 26 4722 241 160 4714 +15967 4 2 709 26 4383 463 542 4996 +15968 4 2 709 26 785 838 5464 5160 +15969 4 2 709 26 125 4794 578 5174 +15970 4 2 709 26 5102 382 67 4880 +15971 4 2 709 26 21 4752 5053 642 +15972 4 2 709 26 169 5923 248 4397 +15973 4 2 709 26 4587 75 625 4954 +15974 4 2 709 26 524 5881 4392 497 +15975 4 2 709 26 4941 387 5859 345 +15976 4 2 709 26 4941 387 307 4853 +15977 4 2 709 26 306 5017 364 4808 +15978 4 2 709 26 594 4087 718 5271 +15979 4 2 709 26 5549 207 296 4968 +15980 4 2 709 26 206 4397 277 4991 +15981 4 2 709 26 5131 501 586 4747 +15982 4 2 709 26 5797 289 17 5167 +15983 4 2 709 26 4422 939 1010 4534 +15984 4 2 709 26 981 5188 5782 930 +15985 4 2 709 26 758 815 4437 5263 +15986 4 2 709 26 815 758 4437 5550 +15987 4 2 709 26 207 5549 211 5317 +15988 4 2 709 26 4805 903 1031 5188 +15989 4 2 709 26 4454 929 994 4599 +15990 4 2 709 26 760 5347 830 4201 +15991 4 2 709 26 5214 797 849 5700 +15992 4 2 709 26 4983 231 46 4699 +15993 4 2 709 26 5470 584 5249 526 +15994 4 2 709 26 35 4696 4888 232 +15995 4 2 709 26 641 606 4758 4778 +15996 4 2 709 26 4847 236 23 4752 +15997 4 2 709 26 5162 16 515 4914 +15998 4 2 709 26 4847 23 674 4752 +15999 4 2 709 26 106 5769 4689 966 +16000 4 2 709 26 473 4900 4294 522 +16001 4 2 709 26 155 6050 266 4351 +16002 4 2 709 26 5321 159 243 4314 +16003 4 2 709 26 125 4794 5174 732 +16004 4 2 709 26 5071 5037 943 994 +16005 4 2 709 26 943 5533 1023 5116 +16006 4 2 709 26 685 4520 709 4800 +16007 4 2 709 26 911 4286 4534 958 +16008 4 2 709 26 401 341 4502 5001 +16009 4 2 709 26 924 5158 1014 5137 +16010 4 2 709 26 4983 46 969 4699 +16011 4 2 709 26 5111 175 4515 192 +16012 4 2 709 26 321 5150 386 5051 +16013 4 2 709 26 652 617 4516 5778 +16014 4 2 709 26 4706 114 970 4998 +16015 4 2 709 26 187 4860 258 4316 +16016 4 2 709 26 5844 624 662 4588 +16017 4 2 709 26 928 895 5313 5077 +16018 4 2 709 26 4989 277 248 4397 +16019 4 2 709 26 4989 277 4991 188 +16020 4 2 709 26 5185 4860 224 213 +16021 4 2 709 26 637 5208 724 4890 +16022 4 2 709 26 594 5892 665 4087 +16023 4 2 709 26 747 830 4201 5288 +16024 4 2 709 26 4928 120 5735 731 +16025 4 2 709 26 16 5162 220 4914 +16026 4 2 709 26 4502 427 4994 341 +16027 4 2 709 26 4706 114 4998 528 +16028 4 2 709 26 474 509 5372 5427 +16029 4 2 709 26 956 4444 990 4612 +16030 4 2 709 26 4522 902 962 4623 +16031 4 2 709 26 4343 157 227 4654 +16032 4 2 709 26 351 4371 374 4918 +16033 4 2 709 26 75 331 4954 4587 +16034 4 2 709 26 4860 224 177 4475 +16035 4 2 709 26 35 4696 826 4888 +16036 4 2 709 26 4912 51 4605 917 +16037 4 2 709 26 206 4397 5838 256 +16038 4 2 709 26 471 5406 486 4760 +16039 4 2 709 26 4992 197 159 5459 +16040 4 2 709 26 106 5769 527 4689 +16041 4 2 709 26 479 5731 533 4883 +16042 4 2 709 26 137 4977 5732 875 +16043 4 2 709 26 617 668 4345 5778 +16044 4 2 709 26 4637 666 4604 724 +16045 4 2 709 26 6061 666 724 4604 +16046 4 2 709 26 370 5177 389 4936 +16047 4 2 709 26 45 4699 199 5740 +16048 4 2 709 26 5705 791 854 4001 +16049 4 2 709 26 166 4729 215 4394 +16050 4 2 709 26 60 59 436 6072 +16051 4 2 709 26 709 5414 4520 639 +16052 4 2 709 26 187 5008 4316 157 +16053 4 2 709 26 4394 215 230 5275 +16054 4 2 709 26 5821 334 325 4519 +16055 4 2 709 26 491 4072 538 4909 +16056 4 2 709 26 5177 97 5001 984 +16057 4 2 709 26 4780 291 159 4314 +16058 4 2 709 26 4912 51 185 4605 +16059 4 2 709 26 5177 97 401 5001 +16060 4 2 709 26 791 815 4001 5550 +16061 4 2 709 26 174 4287 261 4440 +16062 4 2 709 26 6037 38 183 4949 +16063 4 2 709 26 4933 91 821 4795 +16064 4 2 709 26 4933 384 91 4795 +16065 4 2 709 26 29 30 6076 727 +16066 4 2 709 26 609 665 4332 4990 +16067 4 2 709 26 332 5995 5234 386 +16068 4 2 709 26 5495 910 4441 931 +16069 4 2 709 26 4589 86 330 4955 +16070 4 2 709 26 143 871 144 6075 +16071 4 2 709 26 958 4534 977 5161 +16072 4 2 709 26 149 869 150 6073 +16073 4 2 709 26 4956 146 774 4611 +16074 4 2 709 26 41 42 6070 876 +16075 4 2 709 26 101 432 102 6074 +16076 4 2 709 26 4603 122 480 4948 +16077 4 2 709 26 6037 771 38 4949 +16078 4 2 709 26 356 4407 406 5894 +16079 4 2 709 26 5225 1025 5769 927 +16080 4 2 709 26 777 4888 826 4935 +16081 4 2 709 26 332 5995 386 4944 +16082 4 2 709 26 5764 609 639 4332 +16083 4 2 709 26 503 5195 585 4925 +16084 4 2 709 26 4072 453 538 4447 +16085 4 2 709 26 5071 943 5533 946 +16086 4 2 709 26 3 33 298 6081 +16087 4 2 709 26 332 62 4608 4944 +16088 4 2 709 26 6077 2 117 591 +16089 4 2 709 26 6078 57 5 589 +16090 4 2 709 26 2 21 299 6077 +16091 4 2 709 26 590 1 105 6084 +16092 4 2 709 26 6078 104 1029 5 +16093 4 2 709 26 6084 1 105 1030 +16094 4 2 709 26 20 2 299 6077 +16095 4 2 709 26 1 9 297 6084 +16096 4 2 709 26 20 2 6077 591 +16097 4 2 709 26 6084 590 1 9 +16098 4 2 709 26 86 773 4955 4589 +16099 4 2 709 26 134 4958 772 4588 +16100 4 2 709 26 6079 4 45 1024 +16101 4 2 709 26 1 297 56 6084 +16102 4 2 709 26 293 4 45 6079 +16103 4 2 709 26 5 6078 116 1029 +16104 4 2 709 26 5 589 116 6078 +16105 4 2 709 26 1 6084 56 1030 +16106 4 2 709 26 141 4 6079 1024 +16107 4 2 709 26 32 3 298 6081 +16108 4 2 709 26 62 4944 479 4608 +16109 4 2 709 26 6079 44 293 4 +16110 4 2 709 26 122 627 4948 4603 +16111 4 2 709 26 473 4900 500 4917 +16112 4 2 709 26 60 59 6072 581 +16113 4 2 709 26 134 5629 662 4588 +16114 4 2 709 26 511 524 4886 4354 +16115 4 2 709 26 5112 945 1005 4638 +16116 4 2 709 26 5629 134 807 4588 +16117 4 2 709 26 655 5712 711 716 +16118 4 2 709 26 147 5142 4956 812 +16119 4 2 709 26 147 5142 957 4956 +16120 4 2 709 26 5069 106 495 4689 +16121 4 2 709 26 304 5672 406 4407 +16122 4 2 709 26 159 5321 184 4992 +16123 4 2 709 26 4249 354 5055 360 +16124 4 2 709 26 4343 157 4218 227 +16125 4 2 709 26 456 5535 479 4883 +16126 4 2 709 26 4925 573 4809 483 +16127 4 2 709 26 4728 760 845 4287 +16128 4 2 709 26 5635 110 514 4612 +16129 4 2 709 26 110 5635 956 4612 +16130 4 2 709 26 4956 146 4611 916 +16131 4 2 709 26 6071 107 108 1016 +16132 4 2 709 26 15 4600 478 4914 +16133 4 2 709 26 582 107 108 6071 +16134 4 2 709 26 453 4072 539 4917 +16135 4 2 709 26 29 30 284 6076 +16136 4 2 709 26 5350 510 539 5068 +16137 4 2 709 26 5177 97 955 4936 +16138 4 2 709 26 186 15 4914 4600 +16139 4 2 709 26 143 6075 144 1018 +16140 4 2 709 26 149 6073 150 1020 +16141 4 2 709 26 4780 291 4313 187 +16142 4 2 709 26 4218 6056 227 205 +16143 4 2 709 26 936 4769 961 4972 +16144 4 2 709 26 4374 613 683 5571 +16145 4 2 709 26 5488 933 971 4852 +16146 4 2 709 26 101 6074 102 1019 +16147 4 2 709 26 41 42 282 6070 +16148 4 2 709 26 746 5214 849 4591 +16149 4 2 709 26 665 654 4332 4874 +16150 4 2 709 26 830 4287 4606 810 +16151 4 2 709 26 97 5177 370 4936 +16152 4 2 709 26 153 224 4592 4731 +16153 4 2 709 26 637 4374 683 5208 +16154 4 2 709 26 5069 106 4689 935 +16155 4 2 709 26 5350 491 540 4595 +16156 4 2 709 26 509 497 4392 5175 +16157 4 2 709 26 612 5229 684 715 +16158 4 2 709 26 451 6052 558 570 +16159 4 2 709 26 367 5150 4944 386 +16160 4 2 709 26 224 203 4475 4731 +16161 4 2 709 26 110 477 4612 4921 +16162 4 2 709 26 353 4502 419 4370 +16163 4 2 709 26 98 4602 919 4936 +16164 4 2 709 26 624 134 4588 4958 +16165 4 2 709 26 333 98 4936 4602 +16166 4 2 709 26 5237 354 420 5055 +16167 4 2 709 26 7 80 6080 741 +16168 4 2 709 26 7 80 445 6080 +16169 4 2 709 26 7 140 741 6080 +16170 4 2 709 26 81 7 445 6080 +16171 4 2 709 26 7 140 6080 882 +16172 4 2 709 26 81 7 6080 882 +16173 4 2 709 26 32 3 6081 738 +16174 4 2 709 26 6000 646 710 721 +16175 4 2 709 26 491 5350 539 4072 +16176 4 2 709 26 6081 129 738 3 +16177 4 2 709 26 918 110 4612 4921 +16178 4 2 709 26 5495 910 974 4524 +16179 4 2 709 26 5462 77 694 725 +16180 4 2 709 26 4810 169 240 274 +16181 4 2 709 26 740 2 117 6077 +16182 4 2 709 26 2 21 6077 740 +16183 4 2 709 26 6078 57 438 5 +16184 4 2 709 26 6078 104 5 438 +16185 4 2 709 26 830 4287 760 4201 +16186 4 2 709 26 180 5945 258 272 +16187 4 2 709 26 6081 129 3 883 +16188 4 2 709 26 6012 608 680 716 +16189 4 2 709 26 89 5318 400 431 +16190 4 2 709 26 77 5462 396 435 +16191 4 2 709 26 4287 183 261 5409 +16192 4 2 709 26 3 33 6081 883 +16193 4 2 709 26 5318 89 843 873 +16194 4 2 709 26 607 5671 667 713 +16195 4 2 709 26 450 4812 559 569 +16196 4 2 709 26 362 5442 410 425 +16197 4 2 709 26 389 4502 5177 324 +16198 4 2 709 26 96 5001 984 1017 +16199 4 2 709 26 5911 618 699 712 +16200 4 2 709 26 509 521 5372 4362 +16201 4 2 709 26 357 4994 419 427 +16202 4 2 709 26 910 5645 974 4524 +16203 4 2 709 26 171 5204 243 291 +16204 4 2 709 26 630 5462 694 725 +16205 4 2 709 26 5521 48 988 1015 +16206 4 2 709 26 94 5402 971 4852 +16207 4 2 709 26 5402 94 378 4852 +16208 4 2 709 26 5945 177 258 272 +16209 4 2 709 26 504 4945 557 574 +16210 4 2 709 26 923 5521 988 1015 +16211 4 2 709 26 302 6023 393 422 +16212 4 2 709 26 884 4 6079 141 +16213 4 2 709 26 6079 44 4 884 +16214 4 2 709 26 638 5471 706 723 +16215 4 2 709 26 5001 926 984 1017 +16216 4 2 709 26 5189 622 701 711 +16217 4 2 709 26 181 5921 270 275 +16218 4 2 709 26 4782 778 839 872 +16219 4 2 709 26 892 5793 976 1000 +16220 4 2 709 26 48 5521 253 287 +16221 4 2 709 26 389 4502 353 5349 +16222 4 2 709 26 4841 101 987 1019 +16223 4 2 709 26 18 5797 235 289 +16224 4 2 709 26 119 5735 529 579 +16225 4 2 709 26 337 5233 360 442 +16226 4 2 709 26 5085 475 542 562 +16227 4 2 709 26 5751 904 992 1014 +16228 4 2 709 26 502 5702 555 572 +16229 4 2 709 26 322 6021 403 429 +16230 4 2 709 26 5001 96 401 437 +16231 4 2 709 26 921 4841 987 1019 +16232 4 2 709 26 5735 487 529 579 +16233 4 2 709 26 5797 190 235 289 +16234 4 2 709 26 42 5734 237 282 +16235 4 2 709 26 5761 757 817 861 +16236 4 2 709 26 5318 335 400 431 +16237 4 2 709 26 5879 900 979 1004 +16238 4 2 709 26 487 5959 546 579 +16239 4 2 709 26 4809 483 548 582 +16240 4 2 709 26 5608 316 395 413 +16241 4 2 709 26 5253 636 689 727 +16242 4 2 709 26 181 5921 259 270 +16243 4 2 709 26 5829 167 229 268 +16244 4 2 709 26 4828 196 265 300 +16245 4 2 709 26 5950 143 964 1018 +16246 4 2 709 26 990 4315 893 4524 +16247 4 2 709 26 5727 329 393 422 +16248 4 2 709 26 5923 169 216 240 +16249 4 2 709 26 745 5718 856 886 +16250 4 2 709 26 476 5696 540 569 +16251 4 2 709 26 5460 336 397 430 +16252 4 2 709 26 914 5920 979 1004 +16253 4 2 709 26 5734 188 237 282 +16254 4 2 709 26 922 5950 964 1018 +16255 4 2 709 26 610 6058 657 681 +16256 4 2 709 26 770 5458 838 855 +16257 4 2 709 26 5541 181 228 276 +16258 4 2 709 26 6004 942 995 1012 +16259 4 2 709 26 782 4977 846 875 +16260 4 2 709 26 779 4855 841 871 +16261 4 2 709 26 5909 486 530 587 +16262 4 2 709 26 5462 334 396 435 +16263 4 2 709 26 5253 29 249 284 +16264 4 2 709 26 5204 171 262 291 +16265 4 2 709 26 356 5894 406 426 +16266 4 2 709 26 950 5420 997 1009 +16267 4 2 709 26 5460 65 543 583 +16268 4 2 709 26 414 5397 314 424 +16269 4 2 709 26 891 5782 981 1009 +16270 4 2 709 26 767 5438 835 852 +16271 4 2 709 26 4287 183 6037 223 +16272 4 2 709 26 5512 804 847 861 +16273 4 2 709 26 5959 487 546 574 +16274 4 2 709 26 101 4841 399 432 +16275 4 2 709 26 5999 940 996 1013 +16276 4 2 709 26 482 4817 547 580 +16277 4 2 709 26 5844 615 662 702 +16278 4 2 709 26 761 5931 846 868 +16279 4 2 709 26 5891 180 225 272 +16280 4 2 709 26 108 4809 548 582 +16281 4 2 709 26 924 5137 989 1020 +16282 4 2 709 26 4841 337 399 432 +16283 4 2 709 26 6026 748 816 851 +16284 4 2 709 26 150 5461 967 1020 +16285 4 2 709 26 4928 633 692 731 +16286 4 2 709 26 455 5846 541 561 +16287 4 2 709 26 168 5433 239 275 +16288 4 2 709 26 5458 756 838 855 +16289 4 2 709 26 913 6036 950 1009 +16290 4 2 709 26 5697 511 559 569 +16291 4 2 709 26 4817 193 250 283 +16292 4 2 709 26 65 5460 397 430 +16293 4 2 709 26 461 509 4392 4362 +16294 4 2 709 26 29 5253 689 727 +16295 4 2 709 26 4909 572 469 555 +16296 4 2 709 26 5769 927 966 1016 +16297 4 2 709 26 918 4612 990 4524 +16298 4 2 709 26 5524 621 668 703 +16299 4 2 709 26 253 192 287 5521 +16300 4 2 709 26 949 5940 992 1006 +16301 4 2 709 26 207 5547 269 279 +16302 4 2 709 26 304 5672 395 421 +16303 4 2 709 26 941 5751 992 1014 +16304 4 2 709 26 191 5253 249 284 +16305 4 2 709 26 5220 905 983 1012 +16306 4 2 709 26 4862 170 269 279 +16307 4 2 709 26 615 5526 696 719 +16308 4 2 709 26 5770 363 408 423 +16309 4 2 709 26 326 5556 376 410 +16310 4 2 709 26 5745 318 366 404 +16311 4 2 709 26 72 4781 691 730 +16312 4 2 709 26 769 5799 837 854 +16313 4 2 709 26 4785 191 212 292 +16314 4 2 709 26 621 5911 699 712 +16315 4 2 709 26 5772 892 972 1031 +16316 4 2 709 26 484 5174 525 578 +16317 4 2 709 26 488 5460 543 583 +16318 4 2 709 26 936 4443 1004 1008 +16319 4 2 709 26 5282 902 963 1007 +16320 4 2 709 26 5797 18 530 577 +16321 4 2 709 26 464 5531 522 567 +16322 4 2 709 26 716 4461 608 734 +16323 4 2 709 26 132 4782 839 872 +16324 4 2 709 26 486 5909 530 577 +16325 4 2 709 26 6031 632 690 726 +16326 4 2 709 26 188 4989 248 282 +16327 4 2 709 26 4983 923 969 1015 +16328 4 2 709 26 6057 455 537 561 +16329 4 2 709 26 5811 620 670 704 +16330 4 2 709 26 4781 631 691 730 +16331 4 2 709 26 4513 656 704 718 +16332 4 2 709 26 194 4811 252 288 +16333 4 2 709 26 792 5147 855 863 +16334 4 2 709 26 5561 482 507 585 +16335 4 2 709 26 6020 470 517 536 +16336 4 2 709 26 570 5085 475 542 +16337 4 2 709 26 4816 302 407 422 +16338 4 2 709 26 485 5249 526 581 +16339 4 2 709 26 4817 12 547 580 +16340 4 2 709 26 5556 315 376 410 +16341 4 2 709 26 340 5237 354 429 +16342 4 2 709 26 655 4461 716 734 +16343 4 2 709 26 4809 108 986 1016 +16344 4 2 709 26 12 4817 250 283 +16345 4 2 709 26 316 5558 409 413 +16346 4 2 709 26 339 5197 398 433 +16347 4 2 709 26 5904 449 556 593 +16348 4 2 709 26 5816 615 698 719 +16349 4 2 709 26 5812 228 257 276 +16350 4 2 709 26 467 4678 507 565 +16351 4 2 709 26 5386 948 993 1007 +16352 4 2 709 26 903 5445 998 1002 +16353 4 2 709 26 5830 612 661 692 +16354 4 2 709 26 5461 924 967 1020 +16355 4 2 709 26 780 5318 843 873 +16356 4 2 709 26 193 5549 211 296 +16357 4 2 709 26 320 5525 402 428 +16358 4 2 709 26 632 6031 690 720 +16359 4 2 709 26 4811 53 252 288 +16360 4 2 709 26 5696 476 511 569 +16361 4 2 709 26 302 5314 358 417 +16362 4 2 709 26 925 5220 983 1012 +16363 4 2 709 26 5174 126 525 578 +16364 4 2 709 26 190 5167 254 289 +16365 4 2 709 26 778 5517 800 881 +16366 4 2 709 26 4875 343 416 447 +16367 4 2 709 26 764 4736 802 864 +16368 4 2 709 26 484 5667 506 586 +16369 4 2 709 26 757 5967 817 886 +16370 4 2 709 26 5184 921 965 1019 +16371 4 2 709 26 4782 132 696 729 +16372 4 2 709 26 6058 610 657 690 +16373 4 2 709 26 166 4394 230 273 +16374 4 2 709 26 4781 72 402 434 +16375 4 2 709 26 4701 761 859 868 +16376 4 2 709 26 755 5719 804 862 +16377 4 2 709 26 5229 612 700 715 +16378 4 2 709 26 6007 796 801 880 +16379 4 2 709 26 5731 465 513 533 +16380 4 2 709 26 594 5878 655 734 +16381 4 2 709 26 669 5816 698 717 +16382 4 2 709 26 916 5862 957 991 +16383 4 2 709 26 5302 602 682 705 +16384 4 2 709 26 743 5324 800 858 +16385 4 2 709 26 340 4783 403 436 +16386 4 2 709 26 4989 41 248 282 +16387 4 2 709 26 636 5530 653 739 +16388 4 2 709 26 315 6060 376 447 +16389 4 2 709 26 5830 612 692 722 +16390 4 2 709 26 5858 622 680 717 +16391 4 2 709 26 634 4794 693 732 +16392 4 2 709 26 53 4811 983 1022 +16393 4 2 709 26 895 5798 977 1001 +16394 4 2 709 26 609 5811 670 704 +16395 4 2 709 26 5478 179 215 268 +16396 4 2 709 26 4677 194 238 288 +16397 4 2 709 26 5475 921 944 1026 +16398 4 2 709 26 596 5353 653 707 +16399 4 2 709 26 681 5379 599 714 +16400 4 2 709 26 450 6059 505 559 +16401 4 2 709 26 926 5402 971 1017 +16402 4 2 709 26 5830 684 661 612 +16403 4 2 709 26 485 5341 505 584 +16404 4 2 709 26 102 5184 965 1019 +16405 4 2 709 26 4682 763 800 858 +16406 4 2 709 26 172 5717 196 265 +16407 4 2 709 26 195 208 5791 278 +16408 4 2 709 26 782 5092 795 868 +16409 4 2 709 26 750 5644 833 853 +16410 4 2 709 26 4502 324 419 427 +16411 4 2 709 26 5552 758 818 860 +16412 4 2 709 26 4977 782 846 868 +16413 4 2 709 26 770 5599 816 851 +16414 4 2 709 26 5814 176 220 245 +16415 4 2 709 26 4811 925 983 1022 +16416 4 2 709 26 4768 181 239 275 +16417 4 2 709 26 775 5370 799 878 +16418 4 2 709 26 926 5408 945 1027 +16419 4 2 709 26 54 4677 238 288 +16420 4 2 709 26 481 5702 502 572 +16421 4 2 709 26 5230 408 317 423 +16422 4 2 709 26 49 5224 253 48 +16423 4 2 709 26 5616 36 37 845 +16424 4 2 709 26 623 5874 697 714 +16425 4 2 709 26 18 5797 19 235 +16426 4 2 709 26 619 5189 701 711 +16427 4 2 709 26 486 5406 508 587 +16428 4 2 709 26 757 5761 847 861 +16429 4 2 709 26 5816 615 669 698 +16430 4 2 709 26 907 5579 952 973 +16431 4 2 709 26 181 4768 239 276 +16432 4 2 709 26 322 6021 372 403 +16433 4 2 709 26 761 5931 813 846 +16434 4 2 709 26 925 4677 968 1022 +16435 4 2 709 26 776 5387 801 880 +16436 4 2 709 26 5961 154 226 290 +16437 4 2 709 26 4677 54 968 1022 +16438 4 2 709 26 5828 753 796 880 +16439 4 2 709 26 341 5001 401 437 +16440 4 2 709 26 4750 322 420 429 +16441 4 2 709 26 49 5224 48 988 +16442 4 2 709 26 193 5007 233 283 +16443 4 2 709 26 5230 317 377 423 +16444 4 2 709 26 107 5769 966 1016 +16445 4 2 709 26 169 4810 256 274 +16446 4 2 709 26 365 5507 407 422 +16447 4 2 709 26 620 5374 645 705 +16448 4 2 709 26 631 5687 679 730 +16449 4 2 709 26 5347 760 805 865 +16450 4 2 709 26 4855 144 841 871 +16451 4 2 709 26 5732 782 825 875 +16452 4 2 709 26 6067 573 472 548 +16453 4 2 709 26 41 4989 842 876 +16454 4 2 709 26 5025 769 805 850 +16455 4 2 709 26 767 5761 817 861 +16456 4 2 709 26 5922 762 806 866 +16457 4 2 709 26 169 5923 216 248 +16458 4 2 709 26 5073 925 942 1012 +16459 4 2 709 26 5780 306 390 446 +16460 4 2 709 26 622 6012 680 716 +16461 4 2 709 26 155 4820 257 276 +16462 4 2 709 26 5249 59 526 581 +16463 4 2 709 26 335 5466 359 439 +16464 4 2 709 26 24 5179 25 251 +16465 4 2 709 26 5426 327 363 423 +16466 4 2 709 26 633 4928 692 722 +16467 4 2 709 26 5712 622 711 716 +16468 4 2 709 26 5888 624 657 681 +16469 4 2 709 26 619 4625 671 713 +16470 4 2 709 26 338 4926 355 428 +16471 4 2 709 26 4855 922 982 1018 +16472 4 2 709 26 487 5200 504 574 +16473 4 2 709 26 5799 755 837 854 +16474 4 2 709 26 5137 776 840 869 +16475 4 2 709 26 5428 770 792 855 +16476 4 2 709 26 5730 894 949 991 +16477 4 2 709 26 327 4647 394 412 +16478 4 2 709 26 5925 767 793 852 +16479 4 2 709 26 489 5228 556 593 +16480 4 2 709 26 617 5789 663 695 +16481 4 2 709 26 4888 195 255 285 +16482 4 2 709 26 144 4855 982 1018 +16483 4 2 709 26 474 5427 541 564 +16484 4 2 709 26 632 5732 678 726 +16485 4 2 709 26 633 5735 677 731 +16486 4 2 709 26 483 5769 527 582 +16487 4 2 709 26 777 4888 845 874 +16488 4 2 709 26 5789 617 663 686 +16489 4 2 709 26 5687 338 383 434 +16490 4 2 709 26 5769 107 527 582 +16491 4 2 709 26 5531 464 554 567 +16492 4 2 709 26 468 5835 520 552 +16493 4 2 709 26 6056 176 227 280 +16494 4 2 709 26 167 5398 260 268 +16495 4 2 709 26 498 5300 553 562 +16496 4 2 709 26 4930 633 648 722 +16497 4 2 709 26 329 5727 365 422 +16498 4 2 709 26 196 4828 281 300 +16499 4 2 709 26 170 6046 218 252 +16500 4 2 709 26 5171 745 795 859 +16501 4 2 709 26 4802 891 997 1009 +16502 4 2 709 26 913 4319 981 1002 +16503 4 2 709 26 4783 485 550 581 +16504 4 2 709 26 4960 226 182 273 +16505 4 2 709 26 909 6005 959 988 +16506 4 2 709 26 5236 475 512 570 +16507 4 2 709 26 5342 170 204 269 +16508 4 2 709 26 5224 49 959 988 +16509 4 2 709 26 167 5829 229 300 +16510 4 2 709 26 5785 322 372 391 +16511 4 2 709 26 5137 149 989 1020 +16512 4 2 709 26 36 5616 37 255 +16513 4 2 709 26 6067 472 514 548 +16514 4 2 709 26 905 5944 953 972 +16515 4 2 709 26 4736 877 779 802 +16516 4 2 709 26 5577 647 697 720 +16517 4 2 709 26 764 5953 811 841 +16518 4 2 709 26 4989 781 842 876 +16519 4 2 709 26 30 4911 234 284 +16520 4 2 709 26 4794 484 545 578 +16521 4 2 709 26 781 5734 823 876 +16522 4 2 709 26 5709 627 661 684 +16523 4 2 709 26 5635 109 956 986 +16524 4 2 709 26 156 5317 211 265 +16525 4 2 709 26 316 5558 350 409 +16526 4 2 709 26 4911 191 234 284 +16527 4 2 709 26 194 4968 207 279 +16528 4 2 709 26 927 4809 986 1016 +16529 4 2 709 26 24 5179 695 25 +16530 4 2 709 26 5526 629 696 719 +16531 4 2 709 26 5021 214 178 270 +16532 4 2 709 26 5628 100 958 987 +16533 4 2 709 26 5402 95 971 1017 +16534 4 2 709 26 4783 60 403 436 +16535 4 2 709 26 910 5645 954 974 +16536 4 2 709 26 5999 920 940 1013 +16537 4 2 709 26 464 5804 523 592 +16538 4 2 709 26 5887 775 819 878 +16539 4 2 709 26 13 5646 219 250 +16540 4 2 709 26 616 5654 664 694 +16541 4 2 709 26 5507 320 407 428 +16542 4 2 709 26 153 5275 215 260 +16543 4 2 709 26 4847 189 251 286 +16544 4 2 709 26 5857 319 369 400 +16545 4 2 709 26 318 5017 364 404 +16546 4 2 709 26 5825 502 505 584 +16547 4 2 709 26 603 5990 646 733 +16548 4 2 709 26 49 5224 222 253 +16549 4 2 709 26 124 5633 518 545 +16550 4 2 709 26 5507 320 365 407 +16551 4 2 709 26 5914 504 508 587 +16552 4 2 709 26 208 5980 212 292 +16553 4 2 709 26 47 4983 969 1015 +16554 4 2 709 26 5197 775 844 870 +16555 4 2 709 26 5225 927 947 1025 +16556 4 2 709 26 5827 356 361 441 +16557 4 2 709 26 903 5714 937 998 +16558 4 2 709 26 625 5630 664 687 +16559 4 2 709 26 4982 329 350 414 +16560 4 2 709 26 5603 144 145 841 +16561 4 2 709 26 481 4998 549 576 +16562 4 2 709 26 758 5552 848 860 +16563 4 2 709 26 5639 309 394 412 +16564 4 2 709 26 471 5656 515 551 +16565 4 2 709 26 5320 912 939 1001 +16566 4 2 709 26 906 5871 955 975 +16567 4 2 709 26 5654 616 664 687 +16568 4 2 709 26 746 5454 794 864 +16569 4 2 709 26 323 5847 371 388 +16570 4 2 709 26 915 5329 960 1000 +16571 4 2 709 26 766 5752 812 831 +16572 4 2 709 26 5944 905 953 983 +16573 4 2 709 26 635 6014 674 736 +16574 4 2 709 26 942 5969 947 1025 +16575 4 2 709 26 745 5718 799 856 +16576 4 2 709 26 5599 770 806 851 +16577 4 2 709 26 629 4782 696 729 +16578 4 2 709 26 33 5057 202 298 +16579 4 2 709 26 912 5320 978 1001 +16580 4 2 709 26 940 5958 944 1026 +16581 4 2 709 26 5678 257 174 278 +16582 4 2 709 26 765 5721 814 834 +16583 4 2 709 26 179 5757 247 264 +16584 4 2 709 26 5635 108 109 986 +16585 4 2 709 26 5143 20 201 299 +16586 4 2 709 26 5827 311 356 441 +16587 4 2 709 26 336 5432 358 443 +16588 4 2 709 26 5215 155 212 266 +16589 4 2 709 26 325 5581 368 387 +16590 4 2 709 26 61 5637 520 550 +16591 4 2 709 26 4981 648 700 722 +16592 4 2 709 26 5533 923 946 1023 +16593 4 2 709 26 158 5276 240 274 +16594 4 2 709 26 758 5550 791 848 +16595 4 2 709 26 5813 320 373 405 +16596 4 2 709 26 4812 450 540 569 +16597 4 2 709 26 449 5131 506 571 +16598 4 2 709 26 60 4783 550 581 +16599 4 2 709 26 5977 357 359 439 +16600 4 2 709 26 924 5158 941 1014 +16601 4 2 709 26 621 6061 666 703 +16602 4 2 709 26 170 4862 252 279 +16603 4 2 709 26 71 5687 383 434 +16604 4 2 709 26 6000 631 646 721 +16605 4 2 709 26 902 4312 993 1007 +16606 4 2 709 26 5732 138 678 726 +16607 4 2 709 26 647 5955 651 735 +16608 4 2 709 26 195 5791 255 278 +16609 4 2 709 26 795 4701 859 868 +16610 4 2 709 26 5735 119 677 731 +16611 4 2 709 26 5172 56 200 297 +16612 4 2 709 26 469 4503 549 572 +16613 4 2 709 26 5847 323 371 399 +16614 4 2 709 26 4847 236 189 286 +16615 4 2 709 26 5914 460 504 587 +16616 4 2 709 26 5734 42 823 876 +16617 4 2 709 26 161 4377 245 263 +16618 4 2 709 26 5752 766 812 840 +16619 4 2 709 26 5461 150 824 869 +16620 4 2 709 26 5825 458 502 584 +16621 4 2 709 26 4668 613 653 707 +16622 4 2 709 26 907 5037 994 1011 +16623 4 2 709 26 5721 765 814 844 +16624 4 2 709 26 791 5705 854 862 +16625 4 2 709 26 896 5969 942 1025 +16626 4 2 709 26 646 5990 650 733 +16627 4 2 709 26 56 5172 935 1030 +16628 4 2 709 26 6046 170 218 241 +16629 4 2 709 26 604 5861 648 736 +16630 4 2 709 26 890 5564 939 1010 +16631 4 2 709 26 4998 920 985 1021 +16632 4 2 709 26 629 4929 649 719 +16633 4 2 709 26 4972 914 936 1004 +16634 4 2 709 26 5687 71 679 730 +16635 4 2 709 26 138 5732 825 875 +16636 4 2 709 26 100 5628 101 987 +16637 4 2 709 26 5634 28 217 249 +16638 4 2 709 26 174 5812 228 257 +16639 4 2 709 26 609 4990 704 718 +16640 4 2 709 26 5920 1006 914 979 +16641 4 2 709 26 5926 206 210 295 +16642 4 2 709 26 995 5220 1012 905 +16643 4 2 709 26 5080 116 494 589 +16644 4 2 709 26 470 6020 517 546 +16645 4 2 709 26 143 5950 820 871 +16646 4 2 709 26 462 5350 563 568 +16647 4 2 709 26 900 5124 948 1008 +16648 4 2 709 26 892 4805 960 1031 +16649 4 2 709 26 5940 904 949 992 +16650 4 2 709 26 190 5753 205 280 +16651 4 2 709 26 779 5311 820 877 +16652 4 2 709 26 5329 915 937 1003 +16653 4 2 709 26 42 5734 43 237 +16654 4 2 709 26 472 4402 566 573 +16655 4 2 709 26 5622 310 357 439 +16656 4 2 709 26 162 5980 208 292 +16657 4 2 709 26 116 5080 932 1029 +16658 4 2 709 26 611 5298 710 721 +16659 4 2 709 26 5173 466 506 571 +16660 4 2 709 26 5450 450 502 555 +16661 4 2 709 26 605 5955 647 735 +16662 4 2 709 26 5648 888 992 1006 +16663 4 2 709 26 144 5603 145 982 +16664 4 2 709 26 4918 328 351 413 +16665 4 2 709 26 5700 797 849 867 +16666 4 2 709 26 5900 595 651 706 +16667 4 2 709 26 759 5642 808 827 +16668 4 2 709 26 318 5745 366 398 +16669 4 2 709 26 5631 88 89 400 +16670 4 2 709 26 25 5179 221 251 +16671 4 2 709 26 618 5892 644 712 +16672 4 2 709 26 355 407 428 4421 +16673 4 2 709 26 912 948 5000 1007 +16674 4 2 709 26 4917 473 539 560 +16675 4 2 709 26 454 5750 512 551 +16676 4 2 709 26 5621 73 373 402 +16677 4 2 709 26 20 5143 496 591 +16678 4 2 709 26 648 5861 652 736 +16679 4 2 709 26 88 5631 89 843 +16680 4 2 709 26 5629 133 662 696 +16681 4 2 709 26 5135 597 650 708 +16682 4 2 709 26 133 5629 807 839 +16683 4 2 709 26 5628 100 101 399 +16684 4 2 709 26 5495 893 974 1032 +16685 4 2 709 26 37 6037 38 223 +16686 4 2 709 26 16 5162 515 544 +16687 4 2 709 26 328 5672 421 395 +16688 4 2 709 26 5603 145 811 841 +16689 4 2 709 26 5007 11 233 283 +16690 4 2 709 26 79 78 6083 673 +16691 4 2 709 26 73 5621 658 691 +16692 4 2 709 26 897 5958 940 1026 +16693 4 2 709 26 776 5461 824 869 +16694 4 2 709 26 354 5237 420 429 +16695 4 2 709 26 128 6069 6 737 +16696 4 2 709 26 181 5541 228 259 +16697 4 2 709 26 5111 175 210 267 +16698 4 2 709 26 5311 751 820 877 +16699 4 2 709 26 5606 300 156 229 +16700 4 2 709 26 756 6066 803 863 +16701 4 2 709 26 6 68 444 6069 +16702 4 2 709 26 5169 76 664 694 +16703 4 2 709 26 6054 798 865 743 +16704 4 2 709 26 5797 18 19 530 +16705 4 2 709 26 173 5997 217 249 +16706 4 2 709 26 6029 355 358 443 +16707 4 2 709 26 5835 468 520 550 +16708 4 2 709 26 338 4781 402 434 +16709 4 2 709 26 5646 13 516 547 +16710 4 2 709 26 5219 317 374 446 +16711 4 2 709 26 5631 88 809 843 +16712 4 2 709 26 6029 313 355 443 +16713 4 2 709 26 614 5049 650 708 +16714 4 2 709 26 5179 25 663 695 +16715 4 2 709 26 5637 61 372 403 +16716 4 2 709 26 5094 112 113 985 +16717 4 2 709 26 448 6049 510 568 +16718 4 2 709 26 4897 768 794 853 +16719 4 2 709 26 5184 102 380 432 +16720 4 2 709 26 5941 171 221 251 +16721 4 2 709 26 100 5628 371 399 +16722 4 2 709 26 88 5631 369 400 +16723 4 2 709 26 4848 166 290 226 +16724 4 2 709 26 76 5169 368 396 +16725 4 2 709 26 483 4809 548 573 +16726 4 2 709 26 4871 761 793 859 +16727 4 2 709 26 5445 938 998 1002 +16728 4 2 709 26 4925 573 483 503 +16729 4 2 709 26 180 5443 225 263 +16730 4 2 709 26 126 5174 672 732 +16731 4 2 709 26 5633 124 660 693 +16732 4 2 709 26 4551 497 563 568 +16733 4 2 709 26 5832 312 346 381 +16734 4 2 709 26 5629 132 133 696 +16735 4 2 709 26 451 6052 508 558 +16736 4 2 709 26 79 78 379 6083 +16737 4 2 709 26 108 5635 109 548 +16738 4 2 709 26 5525 338 402 428 +16739 4 2 709 26 112 5094 113 549 +16740 4 2 709 26 176 4505 254 280 +16741 4 2 709 26 5584 466 518 545 +16742 4 2 709 26 753 4698 824 880 +16743 4 2 709 26 4819 745 817 886 +16744 4 2 709 26 5837 753 788 821 +16745 4 2 709 26 4854 616 630 694 +16746 4 2 709 26 339 4934 356 426 +16747 4 2 709 26 5568 754 789 826 +16748 4 2 709 26 5162 16 17 544 +16749 4 2 709 26 5551 311 349 385 +16750 4 2 709 26 468 5697 511 559 +16751 4 2 709 26 5871 906 955 984 +16752 4 2 709 26 6014 604 674 736 +16753 4 2 709 26 5815 310 347 378 +16754 4 2 709 26 132 5629 133 839 +16755 4 2 709 26 957 5149 904 991 +16756 4 2 709 26 5645 910 954 985 +16757 4 2 709 26 4911 30 676 727 +16758 4 2 709 26 635 4847 695 728 +16759 4 2 709 26 157 5008 209 262 +16760 4 2 709 26 5427 463 541 564 +16761 4 2 709 26 743 6054 805 865 +16762 4 2 709 26 28 5634 659 689 +16763 4 2 709 26 120 4928 692 731 +16764 4 2 709 26 4638 906 945 1005 +16765 4 2 709 26 4653 321 358 417 +16766 4 2 709 26 52 5601 53 252 +16767 4 2 709 26 172 5553 219 244 +16768 4 2 709 26 979 888 5648 1006 +16769 4 2 709 26 460 5909 530 587 +16770 4 2 709 26 76 5169 77 694 +16771 4 2 709 26 5185 168 214 275 +16772 4 2 709 26 131 130 6082 822 +16773 4 2 709 26 5547 156 207 269 +16774 4 2 709 26 5601 52 53 983 +16775 4 2 709 26 305 5977 359 418 +16776 4 2 709 26 4984 632 647 720 +16777 4 2 709 26 5037 943 994 1011 +16778 4 2 709 26 5535 479 520 552 +16779 4 2 709 26 121 5141 661 692 +16780 4 2 709 26 6069 444 6 69 +16781 4 2 709 26 6049 448 510 554 +16782 4 2 709 26 752 5887 819 878 +16783 4 2 709 26 149 5137 840 869 +16784 4 2 709 26 778 4870 822 872 +16785 4 2 709 26 930 5772 972 1031 +16786 4 2 709 26 5268 767 804 861 +16787 4 2 709 26 510 6049 554 567 +16788 4 2 709 26 626 5641 663 686 +16789 4 2 709 26 5671 607 667 723 +16790 4 2 709 26 6069 69 6 737 +16791 4 2 709 26 636 4911 676 727 +16792 4 2 709 26 171 5941 189 251 +16793 4 2 709 26 5169 76 77 396 +16794 4 2 709 26 476 5881 497 563 +16795 4 2 709 26 5616 37 810 845 +16796 4 2 709 26 615 5844 662 696 +16797 4 2 709 26 5351 161 196 281 +16798 4 2 709 26 6052 451 542 570 +16799 4 2 709 26 4977 137 846 875 +16800 4 2 709 26 4720 182 256 274 +16801 4 2 709 26 6037 37 38 810 +16802 4 2 709 26 465 4510 543 575 +16803 4 2 709 26 4892 895 978 1001 +16804 4 2 709 26 597 5135 646 710 +16805 4 2 709 26 306 4808 374 446 +16806 4 2 709 26 4319 913 981 1009 +16807 4 2 709 26 270 5021 259 178 +16808 4 2 709 26 131 130 675 6082 +16809 4 2 709 26 4104 630 651 735 +16810 4 2 709 26 1003 4544 999 937 +16811 4 2 709 26 183 5747 216 240 +16812 4 2 709 26 125 4794 545 578 +16813 4 2 709 26 5007 482 531 580 +16814 4 2 709 26 766 4745 776 840 +16815 4 2 709 26 5543 313 348 383 +16816 4 2 709 26 4794 125 693 732 +16817 4 2 709 26 5735 118 119 529 +16818 4 2 709 26 619 5712 711 655 +16819 4 2 709 26 337 5184 380 432 +16820 4 2 709 26 5167 486 544 577 +16821 4 2 709 26 5678 174 255 278 +16822 4 2 709 26 4881 910 985 1013 +16823 4 2 709 26 136 5166 657 690 +16824 4 2 709 26 350 5397 414 424 +16825 4 2 709 26 5950 143 142 964 +16826 4 2 709 26 5821 325 361 415 +16827 4 2 709 26 5894 318 406 426 +16828 4 2 709 26 5166 136 813 846 +16829 4 2 709 26 70 5687 71 679 +16830 4 2 709 26 603 5597 640 679 +16831 4 2 709 26 4870 131 822 872 +16832 4 2 709 26 5478 215 260 268 +16833 4 2 709 26 303 5736 352 420 +16834 4 2 709 26 5562 453 534 560 +16835 4 2 709 26 341 357 427 4994 +16836 4 2 709 26 605 5479 643 678 +16837 4 2 709 26 4983 47 231 287 +16838 4 2 709 26 779 5950 871 820 +16839 4 2 709 26 239 271 5433 168 +16840 4 2 709 26 11 5007 531 580 +16841 4 2 709 26 470 4495 546 574 +16842 4 2 709 26 5249 340 381 436 +16843 4 2 709 26 16 5162 17 254 +16844 4 2 709 26 329 4303 393 414 +16845 4 2 709 26 5101 995 942 891 +16846 4 2 709 26 138 5732 139 825 +16847 4 2 709 26 145 5603 952 982 +16848 4 2 709 26 324 5177 370 401 +16849 4 2 709 26 613 5571 659 683 +16850 4 2 709 26 5734 42 43 823 +16851 4 2 709 26 5263 758 815 885 +16852 4 2 709 26 192 4983 231 287 +16853 4 2 709 26 610 5209 681 714 +16854 4 2 709 26 5150 321 367 397 +16855 4 2 709 26 5174 634 672 732 +16856 4 2 709 26 5717 172 196 244 +16857 4 2 709 26 5400 742 803 863 +16858 4 2 709 26 4801 596 698 717 +16859 4 2 709 26 5829 167 281 300 +16860 4 2 709 26 112 5094 954 985 +16861 4 2 709 26 5098 334 441 361 +16862 4 2 709 26 5687 70 71 383 +16863 4 2 709 26 901 4769 999 1003 +16864 4 2 709 26 52 5601 953 983 +16865 4 2 709 26 5601 52 218 252 +16866 4 2 709 26 4891 179 204 264 +16867 4 2 709 26 5162 16 220 254 +16868 4 2 709 26 742 5512 804 847 +16869 4 2 709 26 604 5572 642 677 +16870 4 2 709 26 5094 112 519 549 +16871 4 2 709 26 5621 72 73 402 +16872 4 2 709 26 4945 470 557 574 +16873 4 2 709 26 5377 454 592 535 +16874 4 2 709 26 5197 84 398 433 +16875 4 2 709 26 5732 138 139 678 +16876 4 2 709 26 326 5264 392 411 +16877 4 2 709 26 230 4394 178 273 +16878 4 2 709 26 203 5891 225 272 +16879 4 2 709 26 480 4948 517 536 +16880 4 2 709 26 4745 766 801 857 +16881 4 2 709 26 610 5577 697 720 +16882 4 2 709 26 5780 390 344 446 +16883 4 2 709 26 4998 481 528 576 +16884 4 2 709 26 5782 891 930 995 +16885 4 2 709 26 312 4657 380 442 +16886 4 2 709 26 4303 314 393 414 +16887 4 2 709 26 191 5997 173 249 +16888 4 2 709 26 5141 121 517 546 +16889 4 2 709 26 488 5181 501 575 +16890 4 2 709 26 890 5104 940 996 +16891 4 2 709 26 109 5635 514 548 +16892 4 2 709 26 319 5857 369 390 +16893 4 2 709 26 622 5858 669 717 +16894 4 2 709 26 5953 764 811 833 +16895 4 2 709 26 5264 326 352 411 +16896 4 2 709 26 308 5192 391 411 +16897 4 2 709 26 6005 909 959 976 +16898 4 2 709 26 4665 328 421 364 +16899 4 2 709 26 5778 598 652 668 +16900 4 2 709 26 5581 331 368 387 +16901 4 2 709 26 72 5621 73 691 +16902 4 2 709 26 176 5814 220 254 +16903 4 2 709 26 765 4757 775 844 +16904 4 2 709 26 5560 752 787 825 +16905 4 2 709 26 5671 607 671 713 +16906 4 2 709 26 4748 747 815 850 +16907 4 2 709 26 5017 318 364 406 +16908 4 2 709 26 744 6007 796 801 +16909 4 2 709 26 5697 468 511 552 +16910 4 2 709 26 150 5461 151 967 +16911 4 2 709 26 462 5350 540 563 +16912 4 2 709 26 5321 184 221 243 +16913 4 2 709 26 301 5910 350 424 +16914 4 2 709 26 449 5904 521 593 +16915 4 2 709 26 5015 454 523 592 +16916 4 2 709 26 920 4998 970 1021 +16917 4 2 709 26 4237 469 519 538 +16918 4 2 709 26 5594 919 955 975 +16919 4 2 709 26 429 4783 403 340 +16920 4 2 709 26 5364 166 247 290 +16921 4 2 709 26 774 5965 811 833 +16922 4 2 709 26 849 4501 867 759 +16923 4 2 709 26 4805 892 960 1000 +16924 4 2 709 26 4698 776 824 880 +16925 4 2 709 26 4869 315 410 425 +16926 4 2 709 26 911 4726 944 1010 +16927 4 2 709 26 466 5584 518 537 +16928 4 2 709 26 4457 747 827 885 +16929 4 2 709 26 40 5156 808 842 +16930 4 2 709 26 5369 333 371 388 +16931 4 2 709 26 334 4916 379 435 +16932 4 2 709 26 991 5940 904 949 +16933 4 2 709 26 4590 449 499 571 +16934 4 2 709 26 4588 772 807 828 +16935 4 2 709 26 59 5249 381 436 +16936 4 2 709 26 64 5150 367 397 +16937 4 2 709 26 472 6067 514 534 +16938 4 2 709 26 305 5022 353 419 +16939 4 2 709 26 460 5200 487 529 +16940 4 2 709 26 887 5386 948 993 +16941 4 2 709 26 5656 471 515 544 +16942 4 2 709 26 4251 795 799 878 +16943 4 2 709 26 4572 474 541 561 +16944 4 2 709 26 321 4653 336 397 +16945 4 2 709 26 310 4659 384 439 +16946 4 2 709 26 773 5441 809 829 +16947 4 2 709 26 452 4684 492 565 +16948 4 2 709 26 320 5507 365 405 +16949 4 2 709 26 328 4918 395 413 +16950 4 2 709 26 5632 602 638 687 +16951 4 2 709 26 4681 915 951 1000 +16952 4 2 709 26 5347 805 830 850 +16953 4 2 709 26 1032 902 4623 962 +16954 4 2 709 26 466 5173 484 545 +16955 4 2 709 26 5378 464 498 554 +16956 4 2 709 26 5461 150 151 824 +16957 4 2 709 26 747 4748 815 885 +16958 4 2 709 26 5482 330 369 390 +16959 4 2 709 26 5910 301 350 409 +16960 4 2 709 26 5644 794 833 853 +16961 4 2 709 26 330 5090 366 404 +16962 4 2 709 26 4938 25 26 663 +16963 4 2 709 26 118 5735 119 677 +16964 4 2 709 26 5926 163 206 295 +16965 4 2 709 26 912 5000 963 1007 +16966 4 2 709 26 332 5785 372 391 +16967 4 2 709 26 759 4832 784 849 +16968 4 2 709 26 5559 614 660 685 +16969 4 2 709 26 171 5204 221 243 +16970 4 2 709 26 25 4938 26 221 +16971 4 2 709 26 5092 825 782 752 +16972 4 2 709 26 4904 773 814 834 +16973 4 2 709 26 5950 143 820 142 +16974 4 2 709 26 4383 463 553 562 +16975 4 2 709 26 158 5127 228 261 +16976 4 2 709 26 5377 492 535 592 +16977 4 2 709 26 613 4668 636 689 +16978 4 2 709 26 12 5646 13 250 +16979 4 2 709 26 5298 611 691 721 +16980 4 2 709 26 4405 208 257 278 +16981 4 2 709 26 4558 602 705 688 +16982 4 2 709 26 866 744 5109 796 +16983 4 2 709 26 645 5302 682 705 +16984 4 2 709 26 468 5542 485 550 +16985 4 2 709 26 5878 594 655 671 +16986 4 2 709 26 597 5764 639 708 +16987 4 2 709 26 6061 601 666 703 +16988 4 2 709 26 156 4828 265 300 +16989 4 2 709 26 748 5545 786 834 +16990 4 2 709 26 188 4991 206 277 +16991 4 2 709 26 4820 155 239 276 +16992 4 2 709 26 4304 214 270 275 +16993 4 2 709 26 4870 629 675 729 +16994 4 2 709 26 5275 153 215 230 +16995 4 2 709 26 598 4981 648 700 +16996 4 2 709 26 4832 885 827 784 +16997 4 2 709 26 303 5055 416 447 +16998 4 2 709 26 4501 759 842 867 +16999 4 2 709 26 4671 172 211 265 +17000 4 2 709 26 161 5351 196 244 +17001 4 2 709 26 5073 896 925 968 +17002 4 2 709 26 5380 326 362 410 +17003 4 2 709 26 37 5616 223 255 +17004 4 2 709 26 85 5164 814 844 +17005 4 2 709 26 4736 764 779 841 +17006 4 2 709 26 5581 325 368 396 +17007 4 2 709 26 336 5102 382 430 +17008 4 2 709 26 762 4293 809 843 +17009 4 2 709 26 156 5606 204 269 +17010 4 2 709 26 621 4749 668 699 +17011 4 2 709 26 5137 924 989 1014 +17012 4 2 709 26 5049 614 634 693 +17013 4 2 709 26 614 5559 660 693 +17014 4 2 709 26 5646 12 13 547 +17015 4 2 709 26 5102 488 532 583 +17016 4 2 709 26 319 4792 335 400 +17017 4 2 709 26 84 5197 844 870 +17018 4 2 709 26 5402 341 378 437 +17019 4 2 709 26 60 5637 61 550 +17020 4 2 709 26 5342 204 241 264 +17021 4 2 709 26 4450 468 505 559 +17022 4 2 709 26 5590 173 217 242 +17023 4 2 709 26 75 4954 76 664 +17024 4 2 709 26 311 4934 339 385 +17025 4 2 709 26 77 5462 435 78 +17026 4 2 709 26 457 4717 525 586 +17027 4 2 709 26 5595 793 832 852 +17028 4 2 709 26 5470 584 526 458 +17029 4 2 709 26 4512 803 848 860 +17030 4 2 709 26 304 4407 361 415 +17031 4 2 709 26 5493 917 953 972 +17032 4 2 709 26 609 4332 654 709 +17033 4 2 709 26 93 4852 933 1028 +17034 4 2 709 26 742 5400 803 848 +17035 4 2 709 26 477 5303 519 538 +17036 4 2 709 26 608 6012 680 724 +17037 4 2 709 26 5579 916 952 973 +17038 4 2 709 26 4954 75 76 368 +17039 4 2 709 26 453 4917 539 560 +17040 4 2 709 26 167 5398 203 260 +17041 4 2 709 26 764 4736 779 802 +17042 4 2 709 26 5156 40 216 248 +17043 4 2 709 26 95 5402 378 437 +17044 4 2 709 26 5637 60 61 403 +17045 4 2 709 26 36 4888 255 285 +17046 4 2 709 26 5881 476 540 563 +17047 4 2 709 26 4754 750 836 853 +17048 4 2 709 26 939 5798 1001 977 +17049 4 2 709 26 4827 749 835 852 +17050 4 2 709 26 5225 908 927 986 +17051 4 2 709 26 335 4933 384 431 +17052 4 2 709 26 4928 120 546 579 +17053 4 2 709 26 301 5284 351 409 +17054 4 2 709 26 4399 764 794 864 +17055 4 2 709 26 4862 194 252 279 +17056 4 2 709 26 793 5171 859 745 +17057 4 2 709 26 168 5185 214 224 +17058 4 2 709 26 743 5324 798 800 +17059 4 2 709 26 474 5372 499 561 +17060 4 2 709 26 5142 148 957 989 +17061 4 2 709 26 649 5860 698 719 +17062 4 2 709 26 5443 180 227 263 +17063 4 2 709 26 463 5427 553 564 +17064 4 2 709 26 128 6069 588 6 +17065 4 2 709 26 4975 162 195 232 +17066 4 2 709 26 4559 465 489 556 +17067 4 2 709 26 499 5480 537 561 +17068 4 2 709 26 184 5590 217 242 +17069 4 2 709 26 4909 469 491 555 +17070 4 2 709 26 131 4870 675 729 +17071 4 2 709 26 479 5731 513 533 +17072 4 2 709 26 5164 85 366 398 +17073 4 2 709 26 5631 87 88 369 +17074 4 2 709 26 5517 798 800 881 +17075 4 2 709 26 5860 596 649 698 +17076 4 2 709 26 331 5813 373 405 +17077 4 2 709 26 198 5364 247 290 +17078 4 2 709 26 4717 484 525 586 +17079 4 2 709 26 768 4277 818 860 +17080 4 2 709 26 323 5790 337 399 +17081 4 2 709 26 754 4656 822 881 +17082 4 2 709 26 5118 305 357 419 +17083 4 2 709 26 178 4960 182 273 +17084 4 2 709 26 309 5384 343 388 +17085 4 2 709 26 753 5837 788 824 +17086 4 2 709 26 148 5142 812 840 +17087 4 2 709 26 87 5631 88 809 +17088 4 2 709 26 312 5832 346 380 +17089 4 2 709 26 5838 267 210 154 +17090 4 2 709 26 5633 124 125 545 +17091 4 2 709 26 5323 456 489 533 +17092 4 2 709 26 189 4538 209 294 +17093 4 2 709 26 6 68 6069 588 +17094 4 2 709 26 4785 266 212 173 +17095 4 2 709 26 754 5568 789 822 +17096 4 2 709 26 448 5300 498 554 +17097 4 2 709 26 186 4914 220 245 +17098 4 2 709 26 887 5232 937 999 +17099 4 2 709 26 28 5634 29 249 +17100 4 2 709 26 612 4576 700 722 +17101 4 2 709 26 760 4728 777 865 +17102 4 2 709 26 4538 262 171 209 +17103 4 2 709 26 931 5495 974 1032 +17104 4 2 709 26 137 4977 690 726 +17105 4 2 709 26 5939 742 791 848 +17106 4 2 709 26 457 4747 488 532 +17107 4 2 709 26 105 5069 495 590 +17108 4 2 709 26 5512 742 804 862 +17109 4 2 709 26 4688 339 385 433 +17110 4 2 709 26 4657 337 380 442 +17111 4 2 709 26 5284 301 351 408 +17112 4 2 709 26 4935 754 798 881 +17113 4 2 709 26 960 937 5329 915 +17114 4 2 709 26 4675 189 236 294 +17115 4 2 709 26 5052 470 490 557 +17116 4 2 709 26 4718 162 234 292 +17117 4 2 709 26 620 5006 656 704 +17118 4 2 709 26 310 5815 347 384 +17119 4 2 709 26 314 5397 362 424 +17120 4 2 709 26 5197 339 398 426 +17121 4 2 709 26 4984 605 632 678 +17122 4 2 709 26 301 5770 363 408 +17123 4 2 709 26 355 302 407 4816 +17124 4 2 709 26 155 5215 208 257 +17125 4 2 709 26 461 4894 489 593 +17126 4 2 709 26 5232 887 937 998 +17127 4 2 709 26 528 4969 458 481 +17128 4 2 709 26 899 4850 924 967 +17129 4 2 709 26 4218 205 209 294 +17130 4 2 709 26 4728 798 777 865 +17131 4 2 709 26 5214 746 802 864 +17132 4 2 709 26 5931 761 813 832 +17133 4 2 709 26 5634 28 29 689 +17134 4 2 709 26 124 5633 125 693 +17135 4 2 709 26 313 5543 348 382 +17136 4 2 709 26 4362 461 521 593 +17137 4 2 709 26 5127 158 228 259 +17138 4 2 709 26 4397 169 256 277 +17139 4 2 709 26 5386 887 948 1008 +17140 4 2 709 26 175 4849 198 267 +17141 4 2 709 26 449 5131 501 506 +17142 4 2 709 26 780 5328 796 866 +17143 4 2 709 26 467 4280 516 547 +17144 4 2 709 26 481 4503 572 549 +17145 4 2 709 26 4695 897 965 1026 +17146 4 2 709 26 5104 890 944 1010 +17147 4 2 709 26 467 4678 482 507 +17148 4 2 709 26 170 5342 204 241 +17149 4 2 709 26 475 5833 498 562 +17150 4 2 709 26 5897 887 938 993 +17151 4 2 709 26 4516 635 652 736 +17152 4 2 709 26 6056 205 280 227 +17153 4 2 709 26 761 4871 793 832 +17154 4 2 709 26 179 5478 229 268 +17155 4 2 709 26 5131 449 501 556 +17156 4 2 709 26 4985 603 631 679 +17157 4 2 709 26 5322 480 518 537 +17158 4 2 709 26 4653 321 336 358 +17159 4 2 709 26 4916 78 379 435 +17160 4 2 709 26 4660 412 389 309 +17161 4 2 709 26 887 5897 938 998 +17162 4 2 709 26 767 5925 793 817 +17163 4 2 709 26 4745 766 776 801 +17164 4 2 709 26 6066 768 836 803 +17165 4 2 709 26 364 4665 406 421 +17166 4 2 709 26 160 5872 198 246 +17167 4 2 709 26 4888 36 845 874 +17168 4 2 709 26 4933 780 821 873 +17169 4 2 709 26 752 5560 787 819 +17170 4 2 709 26 4249 354 360 442 +17171 4 2 709 26 616 4854 630 651 +17172 4 2 709 26 4668 613 636 653 +17173 4 2 709 26 177 4475 203 272 +17174 4 2 709 26 980 901 1003 4769 +17175 4 2 709 26 54 4677 55 238 +17176 4 2 709 26 5092 752 782 795 +17177 4 2 709 26 5167 190 254 280 +17178 4 2 709 26 4677 54 55 968 +17179 4 2 709 26 4968 165 194 207 +17180 4 2 709 26 595 5030 647 697 +17181 4 2 709 26 5215 155 208 212 +17182 4 2 709 26 66 5102 532 583 +17183 4 2 709 26 4933 90 384 431 +17184 4 2 709 26 751 4634 797 877 +17185 4 2 709 26 197 6050 239 271 +17186 4 2 709 26 324 4502 401 427 +17187 4 2 709 26 5131 501 506 586 +17188 4 2 709 26 164 4905 190 235 +17189 4 2 709 26 5135 646 650 597 +17190 4 2 709 26 191 4718 234 292 +17191 4 2 709 26 5038 768 803 860 +17192 4 2 709 26 614 5049 634 650 +17193 4 2 709 26 5483 806 829 851 +17194 4 2 709 26 906 4638 926 984 +17195 4 2 709 26 90 4933 821 873 +17196 4 2 709 26 5106 451 504 557 +17197 4 2 709 26 5055 303 376 447 +17198 4 2 709 26 4694 605 673 735 +17199 4 2 709 26 4978 897 920 970 +17200 4 2 709 26 173 4785 191 212 +17201 4 2 709 26 305 5977 357 359 +17202 4 2 709 26 917 5042 959 976 +17203 4 2 709 26 155 6050 197 266 +17204 4 2 709 26 4402 503 566 573 +17205 4 2 709 26 5597 603 640 672 +17206 4 2 709 26 5173 466 484 506 +17207 4 2 709 26 4294 473 522 567 +17208 4 2 709 26 5572 604 642 674 +17209 4 2 709 26 5200 460 487 504 +17210 4 2 709 26 326 5380 362 392 +17211 4 2 709 26 624 5844 662 702 +17212 4 2 709 26 475 5236 512 523 +17213 4 2 709 26 887 4443 936 1008 +17214 4 2 709 26 600 4800 685 709 +17215 4 2 709 26 4949 39 40 808 +17216 4 2 709 26 83 4688 385 433 +17217 4 2 709 26 896 5073 925 942 +17218 4 2 709 26 4515 175 222 253 +17219 4 2 709 26 192 5926 210 295 +17220 4 2 709 26 628 4309 700 715 +17221 4 2 709 26 313 4926 338 383 +17222 4 2 709 26 4682 763 778 800 +17223 4 2 709 26 531 5561 585 482 +17224 4 2 709 26 77 5462 78 725 +17225 4 2 709 26 317 4371 351 408 +17226 4 2 709 26 4522 913 938 1002 +17227 4 2 709 26 808 5288 771 827 +17228 4 2 709 26 5793 951 976 1000 +17229 4 2 709 26 5781 900 948 978 +17230 4 2 709 26 760 5347 805 830 +17231 4 2 709 26 5719 755 804 835 +17232 4 2 709 26 908 5225 927 947 +17233 4 2 709 26 898 5116 922 943 +17234 4 2 709 26 465 5731 513 543 +17235 4 2 709 26 751 4667 790 823 +17236 4 2 709 26 763 5618 807 828 +17237 4 2 709 26 465 4559 489 533 +17238 4 2 709 26 5003 478 515 551 +17239 4 2 709 26 4251 752 795 878 +17240 4 2 709 26 5195 452 507 565 +17241 4 2 709 26 4558 620 688 705 +17242 4 2 709 26 6059 502 450 505 +17243 4 2 709 26 5300 448 498 553 +17244 4 2 709 26 749 4562 832 852 +17245 4 2 709 26 5479 605 643 673 +17246 4 2 709 26 5102 66 382 430 +17247 4 2 709 26 456 4354 511 552 +17248 4 2 709 26 5271 594 656 718 +17249 4 2 709 26 5156 40 41 842 +17250 4 2 709 26 39 4949 40 216 +17251 4 2 709 26 4742 988 909 923 +17252 4 2 709 26 5778 598 648 652 +17253 4 2 709 26 4926 313 338 355 +17254 4 2 709 26 5404 625 658 682 +17255 4 2 709 26 5349 327 353 412 +17256 4 2 709 26 4523 173 197 266 +17257 4 2 709 26 912 5781 948 978 +17258 4 2 709 26 172 4671 193 250 +17259 4 2 709 26 315 4869 363 425 +17260 4 2 709 26 4921 111 112 954 +17261 4 2 709 26 964 5116 922 898 +17262 4 2 709 26 471 4553 512 558 +17263 4 2 709 26 5838 154 206 256 +17264 4 2 709 26 619 4625 655 671 +17265 4 2 709 26 4688 83 819 870 +17266 4 2 709 26 605 4984 632 647 +17267 4 2 709 26 904 5142 957 989 +17268 4 2 709 26 165 4968 194 238 +17269 4 2 709 26 4934 311 339 356 +17270 4 2 709 26 111 4921 112 519 +17271 4 2 709 26 5380 314 362 392 +17272 4 2 709 26 758 5263 784 885 +17273 4 2 709 26 459 4925 483 503 +17274 4 2 709 26 40 5156 41 248 +17275 4 2 709 26 757 4861 792 847 +17276 4 2 709 26 4929 606 629 649 +17277 4 2 709 26 6066 756 803 836 +17278 4 2 709 26 604 4930 633 648 +17279 4 2 709 26 6036 913 950 962 +17280 4 2 709 26 4638 906 926 945 +17281 4 2 709 26 5967 757 786 886 +17282 4 2 709 26 902 5983 931 1032 +17283 4 2 709 26 4749 598 668 699 +17284 4 2 709 26 330 5482 306 390 +17285 4 2 709 26 5645 918 954 974 +17286 4 2 709 26 5925 745 793 817 +17287 4 2 709 26 5740 44 199 293 +17288 4 2 709 26 4652 441 379 311 +17289 4 2 709 26 762 5922 806 829 +17290 4 2 709 26 317 5219 344 446 +17291 4 2 709 26 748 4491 829 851 +17292 4 2 709 26 4853 307 331 387 +17293 4 2 709 26 914 4771 949 1006 +17294 4 2 709 26 164 4675 236 294 +17295 4 2 709 26 4285 611 658 691 +17296 4 2 709 26 742 5845 792 863 +17297 4 2 709 26 606 4929 629 675 +17298 4 2 709 26 5420 908 950 997 +17299 4 2 709 26 5233 323 337 360 +17300 4 2 709 26 5714 903 937 960 +17301 4 2 709 26 302 5314 355 358 +17302 4 2 709 26 923 4983 969 1023 +17303 4 2 709 26 5102 336 382 443 +17304 4 2 709 26 4969 458 481 502 +17305 4 2 709 26 770 5428 792 816 +17306 4 2 709 26 473 5068 510 567 +17307 4 2 709 26 904 4493 989 1014 +17308 4 2 709 26 6069 68 493 588 +17309 4 2 709 26 5101 891 947 997 +17310 4 2 709 26 311 5551 349 379 +17311 4 2 709 26 4989 277 188 248 +17312 4 2 709 26 5104 890 940 944 +17313 4 2 709 26 5845 742 792 847 +17314 4 2 709 26 602 5632 638 688 +17315 4 2 709 26 5301 598 628 700 +17316 4 2 709 26 4930 604 633 677 +17317 4 2 709 26 4916 630 673 725 +17318 4 2 709 26 763 4289 839 807 +17319 4 2 709 26 627 5559 660 685 +17320 4 2 709 26 500 4190 534 560 +17321 4 2 709 26 4510 488 543 575 +17322 4 2 709 26 611 4459 645 710 +17323 4 2 709 26 5553 186 219 244 +17324 4 2 709 26 326 5736 352 376 +17325 4 2 709 26 4671 172 193 211 +17326 4 2 709 26 4870 778 822 881 +17327 4 2 709 26 5672 304 406 421 +17328 4 2 709 26 5736 303 352 376 +17329 4 2 709 26 615 4691 669 702 +17330 4 2 709 26 914 4972 936 961 +17331 4 2 709 26 172 5646 250 219 +17332 4 2 709 26 5177 97 370 401 +17333 4 2 709 26 5606 156 204 229 +17334 4 2 709 26 4792 319 359 418 +17335 4 2 709 26 598 5301 628 699 +17336 4 2 709 26 5167 17 254 289 +17337 4 2 709 26 4394 166 226 273 +17338 4 2 709 26 4690 644 734 594 +17339 4 2 709 26 128 6069 493 588 +17340 4 2 709 26 163 4991 188 237 +17341 4 2 709 26 4489 755 854 862 +17342 4 2 709 26 4905 164 190 205 +17343 4 2 709 26 162 4975 195 208 +17344 4 2 709 26 4912 49 50 959 +17345 4 2 709 26 4935 754 777 798 +17346 4 2 709 26 4714 160 247 264 +17347 4 2 709 26 4339 475 498 523 +17348 4 2 709 26 5765 467 492 565 +17349 4 2 709 26 4659 335 384 439 +17350 4 2 709 26 4847 635 674 728 +17351 4 2 709 26 4557 890 931 996 +17352 4 2 709 26 5374 620 645 670 +17353 4 2 709 26 51 5601 52 218 +17354 4 2 709 26 4792 319 335 359 +17355 4 2 709 26 747 4201 830 850 +17356 4 2 709 26 603 4985 631 646 +17357 4 2 709 26 4847 23 236 286 +17358 4 2 709 26 120 5141 121 692 +17359 4 2 709 26 4998 113 549 576 +17360 4 2 709 26 51 5601 953 52 +17361 4 2 709 26 5298 691 631 721 +17362 4 2 709 26 163 4723 231 295 +17363 4 2 709 26 195 4888 232 285 +17364 4 2 709 26 113 4998 985 1021 +17365 4 2 709 26 5141 120 121 546 +17366 4 2 709 26 448 4680 509 553 +17367 4 2 709 26 17 5167 544 577 +17368 4 2 709 26 4315 1032 962 893 +17369 4 2 709 26 969 4663 898 1023 +17370 4 2 709 26 4832 759 784 827 +17371 4 2 709 26 187 4313 262 291 +17372 4 2 709 26 4943 617 686 703 +17373 4 2 709 26 5069 105 935 1030 +17374 4 2 709 26 4942 896 966 1025 +17375 4 2 709 26 78 4916 673 725 +17376 4 2 709 26 5101 891 942 947 +17377 4 2 709 26 5719 767 835 804 +17378 4 2 709 26 509 474 564 5427 +17379 4 2 709 26 5158 899 924 941 +17380 4 2 709 26 4910 786 856 886 +17381 4 2 709 26 5176 309 343 394 +17382 4 2 709 26 4747 457 488 501 +17383 4 2 709 26 175 4515 192 253 +17384 4 2 709 26 665 4990 609 718 +17385 4 2 709 26 4995 600 627 684 +17386 4 2 709 26 4904 748 773 834 +17387 4 2 709 26 5443 161 225 263 +17388 4 2 709 26 4849 198 246 175 +17389 4 2 709 26 4757 765 775 799 +17390 4 2 709 26 4728 760 777 845 +17391 4 2 709 26 5621 73 74 373 +17392 4 2 709 26 4905 164 205 294 +17393 4 2 709 26 109 5635 110 514 +17394 4 2 709 26 5622 310 341 357 +17395 4 2 709 26 4944 63 64 367 +17396 4 2 709 26 758 815 791 5550 +17397 4 2 709 26 754 4935 777 826 +17398 4 2 709 26 18 5797 17 577 +17399 4 2 709 26 5804 464 492 592 +17400 4 2 709 26 168 213 271 4336 +17401 4 2 709 26 49 4912 50 222 +17402 4 2 709 26 6022 494 57 589 +17403 4 2 709 26 5017 306 364 404 +17404 4 2 709 26 921 4695 965 1026 +17405 4 2 709 26 6022 104 932 1029 +17406 4 2 709 26 641 4758 606 675 +17407 4 2 709 26 5628 99 100 371 +17408 4 2 709 26 6060 315 343 447 +17409 4 2 709 26 775 4688 819 870 +17410 4 2 709 26 5402 926 971 1027 +17411 4 2 709 26 5166 136 137 690 +17412 4 2 709 26 915 5448 951 980 +17413 4 2 709 26 136 5166 137 846 +17414 4 2 709 26 5069 9 495 590 +17415 4 2 709 26 5961 154 198 267 +17416 4 2 709 26 4527 351 409 413 +17417 4 2 709 26 307 4853 331 405 +17418 4 2 709 26 5184 102 103 380 +17419 4 2 709 26 478 5626 516 535 +17420 4 2 709 26 5195 452 503 507 +17421 4 2 709 26 73 5621 74 658 +17422 4 2 709 26 5372 474 499 521 +17423 4 2 709 26 4956 774 812 831 +17424 4 2 709 26 157 4218 205 209 +17425 4 2 709 26 897 5602 932 970 +17426 4 2 709 26 4574 597 645 710 +17427 4 2 709 26 891 5782 930 981 +17428 4 2 709 26 469 4237 519 549 +17429 4 2 709 26 308 5234 332 391 +17430 4 2 709 26 162 5585 202 232 +17431 4 2 709 26 472 4190 500 566 +17432 4 2 709 26 634 4693 672 733 +17433 4 2 709 26 5291 165 200 238 +17434 4 2 709 26 94 5402 95 971 +17435 4 2 709 26 763 4682 778 839 +17436 4 2 709 26 102 5184 103 965 +17437 4 2 709 26 5900 595 647 651 +17438 4 2 709 26 5605 460 496 529 +17439 4 2 709 26 5369 309 333 388 +17440 4 2 709 26 896 5518 935 968 +17441 4 2 709 26 4890 717 680 596 +17442 4 2 709 26 230 153 214 4592 +17443 4 2 709 26 5706 457 493 532 +17444 4 2 709 26 5635 109 110 956 +17445 4 2 709 26 180 4654 227 258 +17446 4 2 709 26 595 4241 667 723 +17447 4 2 709 26 312 4732 340 381 +17448 4 2 709 26 894 4879 916 991 +17449 4 2 709 26 897 4978 920 940 +17450 4 2 709 26 888 5112 945 1005 +17451 4 2 709 26 5109 806 744 866 +17452 4 2 709 26 4553 471 512 551 +17453 4 2 709 26 476 4886 511 524 +17454 4 2 709 26 4401 575 556 501 +17455 4 2 709 26 4190 472 500 534 +17456 4 2 709 26 179 5757 215 247 +17457 4 2 709 26 4991 163 188 206 +17458 4 2 709 26 5571 613 659 689 +17459 4 2 709 26 5161 895 919 975 +17460 4 2 709 26 5405 163 199 237 +17461 4 2 709 26 599 4478 669 701 +17462 4 2 709 26 5214 746 797 802 +17463 4 2 709 26 927 5769 966 1025 +17464 4 2 709 26 750 5965 774 833 +17465 4 2 709 26 5237 312 340 354 +17466 4 2 709 26 616 4414 651 706 +17467 4 2 709 26 470 5052 490 536 +17468 4 2 709 26 4900 452 500 566 +17469 4 2 709 26 469 4909 491 538 +17470 4 2 709 26 138 137 726 5732 +17471 4 2 709 26 251 4847 286 24 +17472 4 2 709 26 608 4154 644 734 +17473 4 2 709 26 4640 167 225 281 +17474 4 2 709 26 5340 164 201 235 +17475 4 2 709 26 99 5628 100 958 +17476 4 2 709 26 4916 334 379 441 +17477 4 2 709 26 769 5025 805 837 +17478 4 2 709 26 154 5961 198 290 +17479 4 2 709 26 5006 620 656 688 +17480 4 2 709 26 5735 119 120 579 +17481 4 2 709 26 5454 746 794 818 +17482 4 2 709 26 5488 899 933 967 +17483 4 2 709 26 750 5486 785 831 +17484 4 2 709 26 4678 467 482 547 +17485 4 2 709 26 768 4754 836 853 +17486 4 2 709 26 63 4944 64 513 +17487 4 2 709 26 5409 158 183 261 +17488 4 2 709 26 4826 329 365 375 +17489 4 2 709 26 4692 304 345 415 +17490 4 2 709 26 453 5562 477 538 +17491 4 2 709 26 4559 465 556 575 +17492 4 2 709 26 855 5147 756 863 +17493 4 2 709 26 451 5106 504 508 +17494 4 2 709 26 5402 94 95 378 +17495 4 2 709 26 909 5808 946 951 +17496 4 2 709 26 4538 171 189 209 +17497 4 2 709 26 5564 890 939 963 +17498 4 2 709 26 5007 193 233 296 +17499 4 2 709 26 218 4863 241 185 +17500 4 2 709 26 4382 947 908 997 +17501 4 2 709 26 329 4982 350 375 +17502 4 2 709 26 594 5271 656 671 +17503 4 2 709 26 84 5164 85 844 +17504 4 2 709 26 763 5618 783 858 +17505 4 2 709 26 5053 117 496 591 +17506 4 2 709 26 318 4496 398 426 +17507 4 2 709 26 5633 123 124 518 +17508 4 2 709 26 382 4666 443 313 +17509 4 2 709 26 18 5797 289 17 +17510 4 2 709 26 5164 84 85 398 +17511 4 2 709 26 4440 174 228 261 +17512 4 2 709 26 5535 456 479 552 +17513 4 2 709 26 4747 457 501 586 +17514 4 2 709 26 308 4644 411 392 +17515 4 2 709 26 902 4312 938 993 +17516 4 2 709 26 4890 596 637 707 +17517 4 2 709 26 5174 126 127 525 +17518 4 2 709 26 5562 453 477 534 +17519 4 2 709 26 762 4739 780 866 +17520 4 2 709 26 899 4703 971 1027 +17521 4 2 709 26 906 5077 928 1005 +17522 4 2 709 26 451 5256 490 557 +17523 4 2 709 26 323 4540 343 416 +17524 4 2 709 26 4958 135 136 657 +17525 4 2 709 26 911 4726 921 944 +17526 4 2 709 26 749 5993 783 828 +17527 4 2 709 26 459 4925 503 585 +17528 4 2 709 26 4911 30 31 676 +17529 4 2 709 26 5001 96 95 1017 +17530 4 2 709 26 126 5174 127 672 +17531 4 2 709 26 908 4444 950 990 +17532 4 2 709 26 4614 770 838 806 +17533 4 2 709 26 179 4891 204 229 +17534 4 2 709 26 21 5053 201 299 +17535 4 2 709 26 135 4958 136 813 +17536 4 2 709 26 5208 601 637 724 +17537 4 2 709 26 895 5161 919 977 +17538 4 2 709 26 5158 899 941 1027 +17539 4 2 709 26 4599 889 929 994 +17540 4 2 709 26 5571 626 659 683 +17541 4 2 709 26 5234 308 332 386 +17542 4 2 709 26 653 5860 596 649 +17543 4 2 709 26 5808 889 946 951 +17544 4 2 709 26 4726 911 921 987 +17545 4 2 709 26 4579 616 638 706 +17546 4 2 709 26 4637 666 724 608 +17547 4 2 709 26 5542 468 485 505 +17548 4 2 709 26 65 5460 66 583 +17549 4 2 709 26 4535 322 352 420 +17550 4 2 709 26 751 4634 781 797 +17551 4 2 709 26 123 5633 124 660 +17552 4 2 709 26 4249 312 354 442 +17553 4 2 709 26 5642 759 808 842 +17554 4 2 709 26 452 5195 503 566 +17555 4 2 709 26 306 5090 330 404 +17556 4 2 709 26 920 4881 985 1013 +17557 4 2 709 26 4879 894 916 973 +17558 4 2 709 26 766 4633 785 857 +17559 4 2 709 26 4996 463 490 541 +17560 4 2 709 26 5150 64 513 543 +17561 4 2 709 26 71 5687 434 72 +17562 4 2 709 26 58 5249 59 526 +17563 4 2 709 26 5322 455 480 537 +17564 4 2 709 26 5071 943 889 994 +17565 4 2 709 26 154 5838 206 210 +17566 4 2 709 26 4739 762 780 843 +17567 4 2 709 26 911 4286 958 987 +17568 4 2 709 26 934 4766 964 898 +17569 4 2 709 26 4911 30 234 31 +17570 4 2 709 26 5740 934 141 1024 +17571 4 2 709 26 665 618 654 4874 +17572 4 2 709 26 5301 618 628 699 +17573 4 2 709 26 4611 145 146 811 +17574 4 2 709 26 600 4995 627 685 +17575 4 2 709 26 327 5022 353 377 +17576 4 2 709 26 5003 454 478 551 +17577 4 2 709 26 4688 82 83 385 +17578 4 2 709 26 599 5379 623 714 +17579 4 2 709 26 322 4535 352 391 +17580 4 2 709 26 915 4265 980 1003 +17581 4 2 709 26 4562 772 749 832 +17582 4 2 709 26 5470 458 494 528 +17583 4 2 709 26 45 5740 199 293 +17584 4 2 709 26 4516 617 635 695 +17585 4 2 709 26 5288 747 771 827 +17586 4 2 709 26 321 5051 342 417 +17587 4 2 709 26 764 4399 794 833 +17588 4 2 709 26 909 4742 923 946 +17589 4 2 709 26 4478 599 669 702 +17590 4 2 709 26 82 4688 83 819 +17591 4 2 709 26 4322 600 684 715 +17592 4 2 709 26 5249 485 526 584 +17593 4 2 709 26 48 5521 287 47 +17594 4 2 709 26 4281 956 908 986 +17595 4 2 709 26 601 6061 666 724 +17596 4 2 709 26 327 5426 363 394 +17597 4 2 709 26 6035 32 202 298 +17598 4 2 709 26 5249 58 59 381 +17599 4 2 709 26 5001 96 437 95 +17600 4 2 709 26 213 159 271 4780 +17601 4 2 709 26 5872 247 160 198 +17602 4 2 709 26 956 4444 908 990 +17603 4 2 709 26 611 4285 658 682 +17604 4 2 709 26 898 5116 943 1023 +17605 4 2 709 26 748 5441 773 829 +17606 4 2 709 26 122 5141 121 517 +17607 4 2 709 26 536 5322 455 480 +17608 4 2 709 26 867 4989 781 842 +17609 4 2 709 26 5276 158 182 274 +17610 4 2 709 26 5328 753 780 796 +17611 4 2 709 26 4670 459 531 585 +17612 4 2 709 26 158 5409 183 240 +17613 4 2 709 26 305 4387 418 344 +17614 4 2 709 26 5080 115 116 932 +17615 4 2 709 26 5629 133 134 662 +17616 4 2 709 26 5427 509 553 564 +17617 4 2 709 26 450 4595 491 555 +17618 4 2 709 26 213 168 224 5185 +17619 4 2 709 26 4241 595 706 723 +17620 4 2 709 26 731 119 120 5735 +17621 4 2 709 26 115 5080 116 494 +17622 4 2 709 26 160 4714 241 264 +17623 4 2 709 26 616 4579 638 687 +17624 4 2 709 26 4443 887 936 999 +17625 4 2 709 26 307 365 375 4826 +17626 4 2 709 26 464 4339 498 523 +17627 4 2 709 26 43 5157 44 199 +17628 4 2 709 26 599 5417 624 702 +17629 4 2 709 26 594 5892 644 665 +17630 4 2 709 26 5579 907 952 982 +17631 4 2 709 26 328 4918 351 374 +17632 4 2 709 26 145 4611 146 952 +17633 4 2 709 26 5530 649 653 739 +17634 4 2 709 26 748 5096 816 786 +17635 4 2 709 26 467 5765 492 535 +17636 4 2 709 26 333 4936 370 389 +17637 4 2 709 26 133 5629 134 807 +17638 4 2 709 26 905 930 995 5281 +17639 4 2 709 26 122 5141 661 121 +17640 4 2 709 26 5022 305 353 377 +17641 4 2 709 26 5772 905 930 972 +17642 4 2 709 26 996 4881 1013 910 +17643 4 2 709 26 5357 140 787 882 +17644 4 2 709 26 769 4748 815 850 +17645 4 2 709 26 138 137 5732 875 +17646 4 2 709 26 156 5317 207 211 +17647 4 2 709 26 4553 512 558 570 +17648 4 2 709 26 5144 601 626 683 +17649 4 2 709 26 4833 623 667 713 +17650 4 2 709 26 5349 353 389 412 +17651 4 2 709 26 4280 467 516 535 +17652 4 2 709 26 5757 166 215 247 +17653 4 2 709 26 140 5357 643 741 +17654 4 2 709 26 5525 373 320 402 +17655 4 2 709 26 765 4615 786 856 +17656 4 2 709 26 5740 45 934 1024 +17657 4 2 709 26 5532 455 490 536 +17658 4 2 709 26 5057 33 789 883 +17659 4 2 709 26 165 4646 233 296 +17660 4 2 709 26 617 635 652 4516 +17661 4 2 709 26 4591 746 784 849 +17662 4 2 709 26 744 5464 801 857 +17663 4 2 709 26 177 4860 187 213 +17664 4 2 709 26 5021 178 214 230 +17665 4 2 709 26 23 4847 674 728 +17666 4 2 709 26 308 5308 342 386 +17667 4 2 709 26 4860 224 213 177 +17668 4 2 709 26 33 5057 34 202 +17669 4 2 709 26 919 5161 958 977 +17670 4 2 709 26 5124 900 1004 1008 +17671 4 2 709 26 894 5481 929 973 +17672 4 2 709 26 4723 192 231 295 +17673 4 2 709 26 4535 352 391 411 +17674 4 2 709 26 894 5730 949 961 +17675 4 2 709 26 892 5042 917 976 +17676 4 2 709 26 6001 117 118 496 +17677 4 2 709 26 6001 118 642 677 +17678 4 2 709 26 917 5493 892 972 +17679 4 2 709 26 4693 603 672 733 +17680 4 2 709 26 4890 637 680 724 +17681 4 2 709 26 114 4998 528 576 +17682 4 2 709 26 4614 744 806 838 +17683 4 2 709 26 81 5360 787 882 +17684 4 2 709 26 5236 454 512 523 +17685 4 2 709 26 58 4864 346 381 +17686 4 2 709 26 19 5143 20 201 +17687 4 2 709 26 610 690 4500 720 +17688 4 2 709 26 5360 81 349 445 +17689 4 2 709 26 4897 818 794 768 +17690 4 2 709 26 644 4154 666 712 +17691 4 2 709 26 899 5488 933 971 +17692 4 2 709 26 118 6001 496 529 +17693 4 2 709 26 4998 114 970 1021 +17694 4 2 709 26 457 5706 493 525 +17695 4 2 709 26 5502 459 495 531 +17696 4 2 709 26 5585 162 202 234 +17697 4 2 709 26 4410 765 799 856 +17698 4 2 709 26 34 5057 789 826 +17699 4 2 709 26 9 4683 10 200 +17700 4 2 709 26 5057 34 202 232 +17701 4 2 709 26 4784 151 788 824 +17702 4 2 709 26 4880 67 348 382 +17703 4 2 709 26 4949 39 183 216 +17704 4 2 709 26 5464 744 785 857 +17705 4 2 709 26 4654 157 227 258 +17706 4 2 709 26 4293 762 809 829 +17707 4 2 709 26 597 4574 645 670 +17708 4 2 709 26 4968 165 207 296 +17709 4 2 709 26 4540 323 343 388 +17710 4 2 709 26 4795 91 347 384 +17711 4 2 709 26 601 5144 626 686 +17712 4 2 709 26 55 5172 200 238 +17713 4 2 709 26 325 5859 345 415 +17714 4 2 709 26 164 5340 201 236 +17715 4 2 709 26 19 5143 201 235 +17716 4 2 709 26 142 4959 790 820 +17717 4 2 709 26 630 4694 673 735 +17718 4 2 709 26 4520 614 639 708 +17719 4 2 709 26 151 4784 933 967 +17720 4 2 709 26 888 5112 941 945 +17721 4 2 709 26 173 4523 197 242 +17722 4 2 709 26 91 4795 788 821 +17723 4 2 709 26 4598 281 225 161 +17724 4 2 709 26 5172 55 935 968 +17725 4 2 709 26 4997 621 666 712 +17726 4 2 709 26 5145 161 186 244 +17727 4 2 709 26 139 5357 787 825 +17728 4 2 709 26 65 5460 430 66 +17729 4 2 709 26 617 4943 668 703 +17730 4 2 709 26 4911 636 676 739 +17731 4 2 709 26 456 5323 489 524 +17732 4 2 709 26 80 5625 349 445 +17733 4 2 709 26 82 5360 349 385 +17734 4 2 709 26 5360 82 787 819 +17735 4 2 709 26 5625 79 349 379 +17736 4 2 709 26 4478 622 669 701 +17737 4 2 709 26 127 4775 640 672 +17738 4 2 709 26 5618 763 783 828 +17739 4 2 709 26 4865 888 928 1005 +17740 4 2 709 26 332 386 367 4944 +17741 4 2 709 26 5357 139 643 678 +17742 4 2 709 26 4562 828 749 772 +17743 4 2 709 26 4287 174 223 255 +17744 4 2 709 26 5037 922 943 1011 +17745 4 2 709 26 4849 222 175 246 +17746 4 2 709 26 111 4921 918 954 +17747 4 2 709 26 4743 750 774 831 +17748 4 2 709 26 5602 897 932 965 +17749 4 2 709 26 4921 111 477 519 +17750 4 2 709 26 5077 906 928 975 +17751 4 2 709 26 115 5080 494 528 +17752 4 2 709 26 11 5007 233 10 +17753 4 2 709 26 9 5069 200 297 +17754 4 2 709 26 57 4864 58 494 +17755 4 2 709 26 327 5230 377 423 +17756 4 2 709 26 38 6037 183 223 +17757 4 2 709 26 5879 900 928 979 +17758 4 2 709 26 161 5145 186 245 +17759 4 2 709 26 460 5605 496 530 +17760 4 2 709 26 990 4315 950 893 +17761 4 2 709 26 4329 619 623 713 +17762 4 2 709 26 314 5749 342 392 +17763 4 2 709 26 449 4590 499 521 +17764 4 2 709 26 5080 115 932 970 +17765 4 2 709 26 900 5313 928 978 +17766 4 2 709 26 67 4880 493 532 +17767 4 2 709 26 830 771 810 4606 +17768 4 2 709 26 4861 757 792 816 +17769 4 2 709 26 625 4738 687 602 +17770 4 2 709 26 5157 43 790 823 +17771 4 2 709 26 4551 448 497 568 +17772 4 2 709 26 5486 750 785 836 +17773 4 2 709 26 912 5320 939 963 +17774 4 2 709 26 458 5470 494 526 +17775 4 2 709 26 5398 167 203 225 +17776 4 2 709 26 11 5007 10 531 +17777 4 2 709 26 50 4912 185 222 +17778 4 2 709 26 4779 103 346 380 +17779 4 2 709 26 5749 314 342 393 +17780 4 2 709 26 71 5687 72 730 +17781 4 2 709 26 9 4683 495 10 +17782 4 2 709 26 5176 315 394 343 +17783 4 2 709 26 5892 618 644 665 +17784 4 2 709 26 4459 611 645 682 +17785 4 2 709 26 153 224 214 4592 +17786 4 2 709 26 4847 23 286 24 +17787 4 2 709 26 5014 301 362 424 +17788 4 2 709 26 4778 31 641 676 +17789 4 2 709 26 4948 122 480 517 +17790 4 2 709 26 55 5172 56 200 +17791 4 2 709 26 797 5214 802 877 +17792 4 2 709 26 601 4376 686 703 +17793 4 2 709 26 4912 50 917 959 +17794 4 2 709 26 785 831 4633 766 +17795 4 2 709 26 4615 765 786 834 +17796 4 2 709 26 5143 19 20 496 +17797 4 2 709 26 97 5177 955 984 +17798 4 2 709 26 596 4890 637 680 +17799 4 2 709 26 151 4784 152 933 +17800 4 2 709 26 466 4451 499 571 +17801 4 2 709 26 4369 607 656 671 +17802 4 2 709 26 5051 321 342 386 +17803 4 2 709 26 527 4925 483 459 +17804 4 2 709 26 43 5157 199 237 +17805 4 2 709 26 5014 425 362 301 +17806 4 2 709 26 4944 63 479 513 +17807 4 2 709 26 641 6063 675 130 +17808 4 2 709 26 4959 142 934 964 +17809 4 2 709 26 895 5077 928 975 +17810 4 2 709 26 5350 462 510 568 +17811 4 2 709 26 4409 323 360 416 +17812 4 2 709 26 5172 55 56 935 +17813 4 2 709 26 951 909 4856 976 +17814 4 2 709 26 24 695 4847 728 +17815 4 2 709 26 618 4874 628 654 +17816 4 2 709 26 26 4938 184 221 +17817 4 2 709 26 67 4880 68 493 +17818 4 2 709 26 79 5625 643 673 +17819 4 2 709 26 4847 23 24 728 +17820 4 2 709 26 5448 889 951 980 +17821 4 2 709 26 47 4983 46 969 +17822 4 2 709 26 70 5029 348 383 +17823 4 2 709 26 22 4752 642 674 +17824 4 2 709 26 4693 634 650 733 +17825 4 2 709 26 319 4528 344 418 +17826 4 2 709 26 4319 903 981 1002 +17827 4 2 709 26 5029 70 640 679 +17828 4 2 709 26 4634 781 797 867 +17829 4 2 709 26 4752 22 23 674 +17830 4 2 709 26 4752 22 236 23 +17831 4 2 709 26 306 4808 364 374 +17832 4 2 709 26 185 160 246 4722 +17833 4 2 709 26 106 5769 107 527 +17834 4 2 709 26 4929 606 649 739 +17835 4 2 709 26 913 4522 938 962 +17836 4 2 709 26 5256 451 490 542 +17837 4 2 709 26 304 4692 345 395 +17838 4 2 709 26 4684 452 492 522 +17839 4 2 709 26 452 4900 500 522 +17840 4 2 709 26 772 4233 813 832 +17841 4 2 709 26 5404 602 625 682 +17842 4 2 709 26 106 5769 966 107 +17843 4 2 709 26 4998 113 114 1021 +17844 4 2 709 26 310 4753 341 378 +17845 4 2 709 26 48 5521 47 1015 +17846 4 2 709 26 5625 80 643 741 +17847 4 2 709 26 342 6023 393 302 +17848 4 2 709 26 303 5055 360 416 +17849 4 2 709 26 756 5160 785 836 +17850 4 2 709 26 607 5006 656 688 +17851 4 2 709 26 607 4908 638 723 +17852 4 2 709 26 5142 148 149 840 +17853 4 2 709 26 47 4983 231 46 +17854 4 2 709 26 799 745 795 5171 +17855 4 2 709 26 103 4779 104 932 +17856 4 2 709 26 893 4315 950 962 +17857 4 2 709 26 148 5142 149 989 +17858 4 2 709 26 5637 61 62 372 +17859 4 2 709 26 5068 473 510 539 +17860 4 2 709 26 13 5646 14 219 +17861 4 2 709 26 61 5637 62 520 +17862 4 2 709 26 4368 471 508 558 +17863 4 2 709 26 4954 75 625 664 +17864 4 2 709 26 4958 135 772 813 +17865 4 2 709 26 4692 316 345 395 +17866 4 2 709 26 63 4944 332 367 +17867 4 2 709 26 74 4587 625 658 +17868 4 2 709 26 676 4650 739 606 +17869 4 2 709 26 614 4520 639 685 +17870 4 2 709 26 576 113 114 4998 +17871 4 2 709 26 463 4996 490 542 +17872 4 2 709 26 4894 461 489 524 +17873 4 2 709 26 39 4949 771 808 +17874 4 2 709 26 943 5533 946 1023 +17875 4 2 709 26 601 5208 637 683 +17876 4 2 709 26 4960 178 182 259 +17877 4 2 709 26 654 600 709 4800 +17878 4 2 709 26 75 4954 331 368 +17879 4 2 709 26 4938 26 626 663 +17880 4 2 709 26 135 4958 624 657 +17881 4 2 709 26 4852 93 347 440 +17882 4 2 709 26 117 6001 118 642 +17883 4 2 709 26 309 4660 333 389 +17884 4 2 709 26 5308 308 342 392 +17885 4 2 709 26 141 4959 142 934 +17886 4 2 709 26 5417 599 624 681 +17887 4 2 709 26 4689 495 459 527 +17888 4 2 709 26 980 889 929 4599 +17889 4 2 709 26 5157 43 44 790 +17890 4 2 709 26 5549 207 211 296 +17891 4 2 709 26 5691 350 375 316 +17892 4 2 709 26 187 5008 157 262 +17893 4 2 709 26 6063 130 789 822 +17894 4 2 709 26 5764 597 639 670 +17895 4 2 709 26 5576 154 182 226 +17896 4 2 709 26 890 4557 931 963 +17897 4 2 709 26 4864 57 58 346 +17898 4 2 709 26 4864 58 494 526 +17899 4 2 709 26 27 4596 626 659 +17900 4 2 709 26 87 4589 330 369 +17901 4 2 709 26 186 4914 15 220 +17902 4 2 709 26 365 4543 307 405 +17903 4 2 709 26 4596 27 184 217 +17904 4 2 709 26 463 4383 542 562 +17905 4 2 709 26 103 4779 932 965 +17906 4 2 709 26 455 5532 490 541 +17907 4 2 709 26 4888 777 826 874 +17908 4 2 709 26 163 5405 199 231 +17909 4 2 709 26 5646 13 14 516 +17910 4 2 709 26 757 5096 786 816 +17911 4 2 709 26 524 5881 497 476 +17912 4 2 709 26 10 4683 495 531 +17913 4 2 709 26 941 5408 1027 945 +17914 4 2 709 26 165 5291 200 233 +17915 4 2 709 26 85 4955 86 814 +17916 4 2 709 26 89 5318 90 873 +17917 4 2 709 26 5143 19 496 530 +17918 4 2 709 26 454 5626 478 535 +17919 4 2 709 26 4880 67 68 348 +17920 4 2 709 26 963 5983 931 902 +17921 4 2 709 26 5209 610 697 714 +17922 4 2 709 26 4595 450 491 540 +17923 4 2 709 26 104 6022 346 438 +17924 4 2 709 26 123 4603 480 518 +17925 4 2 709 26 346 6022 57 438 +17926 4 2 709 26 4784 151 152 788 +17927 4 2 709 26 5859 325 345 387 +17928 4 2 709 26 27 5634 28 217 +17929 4 2 709 26 4752 22 201 236 +17930 4 2 709 26 4955 85 86 366 +17931 4 2 709 26 4239 185 222 246 +17932 4 2 709 26 4600 14 478 516 +17933 4 2 709 26 64 5150 65 543 +17934 4 2 709 26 4683 10 200 233 +17935 4 2 709 26 5634 27 28 659 +17936 4 2 709 26 5057 33 34 789 +17937 4 2 709 26 961 4771 949 914 +17938 4 2 709 26 755 4626 783 835 +17939 4 2 709 26 928 5313 895 978 +17940 4 2 709 26 4587 74 331 373 +17941 4 2 709 26 4612 477 514 534 +17942 4 2 709 26 4959 141 142 790 +17943 4 2 709 26 139 5357 140 787 +17944 4 2 709 26 86 4955 773 814 +17945 4 2 709 26 5518 896 935 966 +17946 4 2 709 26 907 4454 929 994 +17947 4 2 709 26 4154 608 644 666 +17948 4 2 709 26 304 4407 356 361 +17949 4 2 709 26 791 742 5705 862 +17950 4 2 709 26 5357 139 140 643 +17951 4 2 709 26 595 4833 623 667 +17952 4 2 709 26 154 5576 182 256 +17953 4 2 709 26 6063 129 130 641 +17954 4 2 709 26 89 5318 431 90 +17955 4 2 709 26 4611 146 774 811 +17956 4 2 709 26 4775 127 493 525 +17957 4 2 709 26 4795 91 92 347 +17958 4 2 709 26 464 5804 492 522 +17959 4 2 709 26 159 5459 197 271 +17960 4 2 709 26 4528 319 344 390 +17961 4 2 709 26 4603 123 627 660 +17962 4 2 709 26 6050 155 197 239 +17963 4 2 709 26 91 4795 92 788 +17964 4 2 709 26 4731 153 203 260 +17965 4 2 709 26 4451 466 499 537 +17966 4 2 709 26 4908 607 638 688 +17967 4 2 709 26 301 4430 425 363 +17968 4 2 709 26 471 5406 508 486 +17969 4 2 709 26 81 5360 82 787 +17970 4 2 709 26 4454 907 929 973 +17971 4 2 709 26 4626 837 755 783 +17972 4 2 709 26 747 830 5288 771 +17973 4 2 709 26 147 4956 774 812 +17974 4 2 709 26 5952 743 783 858 +17975 4 2 709 26 5360 81 82 349 +17976 4 2 709 26 4611 952 916 146 +17977 4 2 709 26 4901 176 245 263 +17978 4 2 709 26 6037 771 810 38 +17979 4 2 709 26 5037 907 982 1011 +17980 4 2 709 26 461 4392 497 524 +17981 4 2 709 26 5029 69 70 348 +17982 4 2 709 26 4775 127 128 493 +17983 4 2 709 26 62 4608 479 520 +17984 4 2 709 26 69 5029 70 640 +17985 4 2 709 26 753 4791 780 821 +17986 4 2 709 26 127 4775 128 640 +17987 4 2 709 26 4589 87 773 809 +17988 4 2 709 26 4779 103 104 346 +17989 4 2 709 26 4869 315 363 394 +17990 4 2 709 26 5379 599 623 701 +17991 4 2 709 26 5071 943 946 889 +17992 4 2 709 26 5625 79 80 349 +17993 4 2 709 26 4888 35 285 36 +17994 4 2 709 26 174 4287 223 261 +17995 4 2 709 26 606 4778 641 676 +17996 4 2 709 26 4602 99 919 958 +17997 4 2 709 26 14 4600 186 219 +17998 4 2 709 26 5112 888 941 992 +17999 4 2 709 26 928 4865 979 888 +18000 4 2 709 26 129 6063 130 789 +18001 4 2 709 26 5150 64 65 397 +18002 4 2 709 26 158 5276 182 259 +18003 4 2 709 26 51 4605 917 953 +18004 4 2 709 26 5219 377 317 344 +18005 4 2 709 26 785 5464 838 744 +18006 4 2 709 26 4955 86 330 366 +18007 4 2 709 26 760 4287 810 845 +18008 4 2 709 26 93 4852 94 933 +18009 4 2 709 26 746 4591 784 818 +18010 4 2 709 26 5263 758 784 818 +18011 4 2 709 26 4852 152 933 1028 +18012 4 2 709 26 6054 743 805 837 +18013 4 2 709 26 332 4608 62 372 +18014 4 2 709 26 5821 334 361 325 +18015 4 2 709 26 4808 328 364 374 +18016 4 2 709 26 5160 756 785 838 +18017 4 2 709 26 901 980 929 5651 +18018 4 2 709 26 31 4778 202 234 +18019 4 2 709 26 46 4699 934 969 +18020 4 2 709 26 4778 31 32 641 +18021 4 2 709 26 4782 132 729 131 +18022 4 2 709 26 5311 790 820 751 +18023 4 2 709 26 5174 125 126 578 +18024 4 2 709 26 5651 894 929 961 +18025 4 2 709 26 4912 51 917 50 +18026 4 2 709 26 4699 898 934 969 +18027 4 2 709 26 4941 307 345 375 +18028 4 2 709 26 185 4605 51 218 +18029 4 2 709 26 4958 134 135 624 +18030 4 2 709 26 922 5037 982 1011 +18031 4 2 709 26 4371 317 351 374 +18032 4 2 709 26 4534 911 939 1010 +18033 4 2 709 26 600 628 715 4023 +18034 4 2 709 26 4805 903 960 1031 +18035 4 2 709 26 134 4958 135 772 +18036 4 2 709 26 4941 387 345 307 +18037 4 2 709 26 4852 93 94 347 +18038 4 2 709 26 903 5188 930 1031 +18039 4 2 709 26 227 176 4901 263 +18040 4 2 709 26 732 125 126 5174 +18041 4 2 709 26 4332 609 639 709 +18042 4 2 709 26 79 5625 80 643 +18043 4 2 709 26 4811 54 1022 53 +18044 4 2 709 26 5053 21 642 740 +18045 4 2 709 26 473 4917 500 560 +18046 4 2 709 26 4387 305 377 344 +18047 4 2 709 26 6035 129 641 738 +18048 4 2 709 26 448 5175 497 509 +18049 4 2 709 26 911 4534 939 977 +18050 4 2 709 26 901 4769 936 999 +18051 4 2 709 26 5111 175 192 210 +18052 4 2 709 26 619 4329 623 701 +18053 4 2 709 26 4722 241 185 160 +18054 4 2 709 26 117 5053 642 740 +18055 4 2 709 26 5874 595 623 697 +18056 4 2 709 26 31 4778 32 202 +18057 4 2 709 26 21 4752 22 201 +18058 4 2 709 26 4596 26 184 27 +18059 4 2 709 26 4912 51 50 185 +18060 4 2 709 26 5055 303 354 420 +18061 4 2 709 26 901 5651 929 961 +18062 4 2 709 26 617 652 668 5778 +18063 4 2 709 26 92 8 879 4852 +18064 4 2 709 26 4475 177 203 224 +18065 4 2 709 26 4314 159 243 291 +18066 4 2 709 26 503 5195 507 585 +18067 4 2 709 26 15 4914 478 515 +18068 4 2 709 26 316 4941 345 375 +18069 4 2 709 26 4860 177 187 258 +18070 4 2 709 26 4921 110 111 918 +18071 4 2 709 26 4596 26 27 626 +18072 4 2 709 26 910 4441 931 996 +18073 4 2 709 26 99 4602 333 371 +18074 4 2 709 26 4634 751 781 823 +18075 4 2 709 26 4827 749 783 835 +18076 4 2 709 26 4956 147 916 957 +18077 4 2 709 26 4384 302 342 417 +18078 4 2 709 26 32 6035 641 738 +18079 4 2 709 26 66 5102 67 532 +18080 4 2 709 26 206 4397 256 277 +18081 4 2 709 26 152 4852 879 8 +18082 4 2 709 26 594 4087 665 718 +18083 4 2 709 26 110 4921 111 477 +18084 4 2 709 26 12 4817 283 11 +18085 4 2 709 26 169 4397 248 277 +18086 4 2 709 26 5069 106 105 495 +18087 4 2 709 26 746 5214 797 849 +18088 4 2 709 26 471 4760 486 544 +18089 4 2 709 26 21 4752 642 22 +18090 4 2 709 26 333 4936 98 370 +18091 4 2 709 26 96 401 97 5001 +18092 4 2 709 26 66 5102 382 67 +18093 4 2 709 26 12 4817 11 580 +18094 4 2 709 26 321 5150 367 386 +18095 4 2 709 26 4888 35 36 874 +18096 4 2 709 26 4780 187 213 159 +18097 4 2 709 26 4811 54 53 288 +18098 4 2 709 26 74 4587 75 625 +18099 4 2 709 26 5197 83 870 84 +18100 4 2 709 26 473 4900 522 500 +18101 4 2 709 26 4696 34 35 826 +18102 4 2 709 26 4534 911 958 977 +18103 4 2 709 26 4001 769 791 854 +18104 4 2 709 26 4520 639 685 709 +18105 4 2 709 26 5177 324 370 389 +18106 4 2 709 26 609 5764 639 670 +18107 4 2 709 26 456 524 511 4354 +18108 4 2 709 26 5495 910 931 974 +18109 4 2 709 26 790 44 5740 884 +18110 4 2 709 26 4914 15 16 515 +18111 4 2 709 26 981 5188 930 903 +18112 4 2 709 26 4888 35 232 285 +18113 4 2 709 26 4780 291 187 159 +18114 4 2 709 26 325 4519 334 396 +18115 4 2 709 26 6035 789 129 883 +18116 4 2 709 26 4696 34 232 35 +18117 4 2 709 26 15 4914 16 220 +18118 4 2 709 26 45 4699 934 46 +18119 4 2 709 26 4522 902 938 962 +18120 4 2 709 26 8 93 4852 440 +18121 4 2 709 26 96 5001 97 984 +18122 4 2 709 26 743 5952 783 837 +18123 4 2 709 26 654 4023 628 600 +18124 4 2 709 26 122 4948 627 661 +18125 4 2 709 26 4992 197 242 159 +18126 4 2 709 26 134 4588 772 807 +18127 4 2 709 26 4699 46 199 231 +18128 4 2 709 26 157 4316 187 258 +18129 4 2 709 26 4587 74 75 331 +18130 4 2 709 26 5069 106 935 105 +18131 4 2 709 26 5321 159 184 243 +18132 4 2 709 26 613 4374 637 707 +18133 4 2 709 26 94 4852 347 378 +18134 4 2 709 26 918 4612 956 990 +18135 4 2 709 26 166 4394 215 230 +18136 4 2 709 26 4944 62 63 332 +18137 4 2 709 26 6069 640 737 128 +18138 4 2 709 26 4782 132 131 872 +18139 4 2 709 26 4689 106 495 527 +18140 4 2 709 26 147 5142 812 148 +18141 4 2 709 26 90 4933 91 821 +18142 4 2 709 26 90 4933 384 91 +18143 4 2 709 26 4589 86 87 330 +18144 4 2 709 26 348 6069 444 68 +18145 4 2 709 26 38 4949 39 183 +18146 4 2 709 26 147 5142 148 957 +18147 4 2 709 26 769 4001 791 815 +18148 4 2 709 26 62 4944 63 479 +18149 4 2 709 26 474 509 521 5372 +18150 4 2 709 26 4949 38 39 771 +18151 4 2 709 26 609 654 4332 665 +18152 4 2 709 26 790 5740 141 884 +18153 4 2 709 26 35 4888 826 874 +18154 4 2 709 26 4603 122 123 480 +18155 4 2 709 26 45 4699 46 199 +18156 4 2 709 26 4956 146 147 774 +18157 4 2 709 26 98 4936 919 955 +18158 4 2 709 26 4407 304 356 406 +18159 4 2 709 26 453 4072 491 539 +18160 4 2 709 26 122 4603 123 627 +18161 4 2 709 26 4706 115 970 114 +18162 4 2 709 26 86 4589 87 773 +18163 4 2 709 26 401 341 427 4502 +18164 4 2 709 26 4072 453 491 538 +18165 4 2 709 26 456 4883 479 533 +18166 4 2 709 26 159 4992 184 242 +18167 4 2 709 26 69 6069 640 737 +18168 4 2 709 26 303 5055 354 360 +18169 4 2 709 26 4218 157 205 227 +18170 4 2 709 26 69 348 6069 444 +18171 4 2 709 26 4600 14 15 478 +18172 4 2 709 26 4956 146 916 147 +18173 4 2 709 26 4706 115 114 528 +18174 4 2 709 26 14 4600 15 186 +18175 4 2 709 26 110 4612 477 514 +18176 4 2 709 26 97 4936 98 955 +18177 4 2 709 26 8 93 1028 4852 +18178 4 2 709 26 4524 893 918 974 +18179 4 2 709 26 462 5350 510 539 +18180 4 2 709 26 106 4689 935 966 +18181 4 2 709 26 98 4602 99 919 +18182 4 2 709 26 4852 94 933 971 +18183 4 2 709 26 462 5350 491 540 +18184 4 2 709 26 461 509 497 4392 +18185 4 2 709 26 92 4852 347 440 +18186 4 2 709 26 4374 613 637 683 +18187 4 2 709 26 4936 97 98 370 +18188 4 2 709 26 92 8 4852 440 +18189 4 2 709 26 5197 83 84 433 +18190 4 2 709 26 918 4612 110 956 +18191 4 2 709 26 830 4287 810 760 +18192 4 2 709 26 4602 98 99 333 +18193 4 2 709 26 4769 901 936 961 +18194 4 2 709 26 4502 324 353 419 +18195 4 2 709 26 224 203 4731 153 +18196 4 2 709 26 788 4852 92 879 +18197 4 2 709 26 624 4588 134 662 +18198 4 2 709 26 5350 462 491 539 +18199 4 2 709 26 152 4852 788 879 +18200 4 2 709 26 509 461 521 4362 +18201 4 2 709 26 893 4524 918 990 +18202 4 2 709 26 4287 183 223 261 +18203 4 2 709 26 152 4852 8 1028 +18204 4 2 709 26 389 353 4502 324 +$EndElements diff --git a/H5Fed/grids/cubeincube.geo b/H5Fed/grids/cubeincube.geo new file mode 100644 index 0000000..dd9fba3 --- /dev/null +++ b/H5Fed/grids/cubeincube.geo @@ -0,0 +1,206 @@ +// rights - 2002-2005, benedikt oswald, +// project - aq +// file name - cubeincube.geo +// file type - GMSH script file +// objective - model cube in a cube mesh, useful for PML booundary conditions +// modified - 2005 jan 25, benedikt oswald, creation +// modified - 2005 jan 25, benedikt oswald, added background hexahedron, subsurface hexahedron +// modified - 2005 feb 01, benedikt oswald, adapted to the simple.geo problem +// modified - 2005 mar 08, benedikt oswald, adapted to the cube in cube geometry +// inheritance - +// feature - models a cube in a cube mesh, useful for PML booundary conditions; +// feature - the PML boundary model is based on a 3D region with special electromagnetic +// feature - material properties which guarantee, in theory, perfect absorption of incident +// feature - electromagnetic waves independent of the angle between the wave vector +// feature - and the boundary; in order to model the PML material domain a separate mesh +// feature - region is created so that there is a clean boundary between the PML and +// feature - and the air region. + + +// 1 modeling constants + +lcair=0.90; // characteristic length in fractions of lambda@1 GHz for air domain +lcpml=0.70; // characteristic length in fractions of lambda@1 GHz for PML region +lambda=0.30; // wavelength of electromagntic wave at a frequency of 1 GHz + +lx=1.0; // x dim of computational domain +ly=1.0; // y dim of computational domain +lz=1.0; // z dim of computational domain + +cx=0.5*lx; // calculate center of computational domain +cy=0.5*ly; // calculate center of computational domain +cz=0.5*lz; // calculate center of computational domain + +lpmlxl=0.1; // thickness of PML region +lpmlxh=0.1; // thickness of PML region + +lpmlyl=0.1; // thickness of PML region +lpmlyh=0.1; // thickness of PML region + +lpmlzl=0.1; // thickness of PML region +lpmlzh=0.1; // thickness of PML region + +xminic=lpmlxl; // x min of inner cube +xmaxic=lx-lpmlxh; // x max of inner cube +yminic=lpmlyl; // y min of inner cube +ymaxic=ly-lpmlyh; // y max of inner cube +zminic=lpmlzl; // z min of inner cube +zmaxic=lz-lpmlzh; // z max of inner cube + +// 1.2 Define physical material domains + +vacuum=609; // physical entity vacuum +air=709; // physical entity air +pml=1301; // physical entity pml material +icelens=4001; // physical entity icelens +vacuum_background_bnd=12701; // boundary to background, i.e. vacuum +interelement_bnd=12702; // interior boundary, separating different material domains + + + +// 2 Define cubes +// 2.1.1 Define points of outer cube + +p0=newp; Point(p0) = {0.0, 0.0, 0.0, lambda * lcpml}; +p1=newp; Point(p1) = { lx, 0.0, 0.0, lambda * lcpml}; +p2=newp; Point(p2) = { lx, ly, 0.0, lambda * lcpml}; +p3=newp; Point(p3) = {0.0, ly, 0.0, lambda * lcpml}; +p4=newp; Point(p4) = {0.0, 0.0, lz, lambda * lcpml}; +p5=newp; Point(p5) = { lx, 0.0, lz, lambda * lcpml}; +p6=newp; Point(p6) = { lx, ly, lz, lambda * lcpml}; +p7=newp; Point(p7) = {0.0, ly, lz, lambda * lcpml}; + +// 2.1.2 Define points of inner cube + +p100=newp; Point(p100) = {xminic, yminic, zminic, lambda * lcair}; +p101=newp; Point(p101) = {xmaxic, yminic, zminic, lambda * lcair}; +p102=newp; Point(p102) = {xmaxic, ymaxic, zminic, lambda * lcair}; +p103=newp; Point(p103) = {xminic, ymaxic, zminic, lambda * lcair}; + +p104=newp; Point(p104) = {xminic, yminic, zmaxic, lambda * lcair}; +p105=newp; Point(p105) = {xmaxic, yminic, zmaxic, lambda * lcair}; +p106=newp; Point(p106) = {xmaxic, ymaxic, zmaxic, lambda * lcair}; +p107=newp; Point(p107) = {xminic, ymaxic, zmaxic, lambda * lcair}; + + +// 2.1.3 Define lines of outer cube + +// lower xy plane +li0=newl; Line(li0) = {p0,p1}; +li1=newl; Line(li1) = {p1,p2}; +li2=newl; Line(li2) = {p2,p3}; +li3=newl; Line(li3) = {p3,p0}; + +// upper xy plane +li4=newl; Line(li4) = {p4,p5}; +li5=newl; Line(li5) = {p5,p6}; +li6=newl; Line(li6) = {p6,p7}; +li7=newl; Line(li7) = {p7,p4}; + +// vertical lines +li8=newl; Line(li8) = {p0,p4}; +li9=newl; Line(li9) = {p1,p5}; +li10=newl; Line(li10) = {p2,p6}; +li11=newl; Line(li11) = {p3,p7}; + +// 2.1.4 Define lines of outer cube + +// lower xy plane +li100=newl; Line(li100) = {p100,p101}; +li101=newl; Line(li101) = {p101,p102}; +li102=newl; Line(li102) = {p102,p103}; +li103=newl; Line(li103) = {p103,p100}; + +// upper xy plane +li104=newl; Line(li104) = {p104,p105}; +li105=newl; Line(li105) = {p105,p106}; +li106=newl; Line(li106) = {p106,p107}; +li107=newl; Line(li107) = {p107,p104}; + +// vertical lines +li108=newl; Line(li108) = {p100,p104}; +li109=newl; Line(li109) = {p101,p105}; +li110=newl; Line(li110) = {p102,p106}; +li111=newl; Line(li111) = {p103,p107}; + + +// 2.1.5 Define line 6 line loops for the 6 faces of outer cube + +lloop0= newreg; Line Loop(lloop0) = { li0, li1, li2, li3}; +lloop1= newreg; Line Loop(lloop1) = { li4, li5, li6, li7}; + +lloop2= newreg; Line Loop(lloop2) = { li0, li9, -li4, -li8 }; +lloop3= newreg; Line Loop(lloop3) = { li1, li10, -li5, -li9}; + +lloop4= newreg; Line Loop(lloop4) = { li2, li11, -li6, -li10}; +lloop5= newreg; Line Loop(lloop5) = { li3, li8, -li7, -li11}; + + +// 2.1.6 Define line 6 line loops for the 6 faces of inner cube + +lloop100= newreg; Line Loop(lloop100) = { li100, li101, li102, li103}; +lloop101= newreg; Line Loop(lloop101) = { li104, li105, li106, li107}; + +lloop102= newreg; Line Loop(lloop102) = { li100, li109, -li104, -li108 }; +lloop103= newreg; Line Loop(lloop103) = { li101, li110, -li105, -li109}; + +lloop104= newreg; Line Loop(lloop104) = { li102, li111, -li106, -li110}; +lloop105= newreg; Line Loop(lloop105) = { li103, li108, -li107, -li111}; + + +// 2.1.7 define plane surfaces for outer cube + +s0=news; Plane Surface(s0) = {lloop0}; +s1=news; Plane Surface(s1) = {lloop1}; +s2=news; Plane Surface(s2) = {lloop2}; +s3=news; Plane Surface(s3) = {lloop3}; +s4=news; Plane Surface(s4) = {lloop4}; +s5=news; Plane Surface(s5) = {lloop5}; + +// 2.1.8 define plane surfaces for inner cube + +s100=news; Plane Surface(s100) = {lloop100}; +s101=news; Plane Surface(s101) = {lloop101}; +s102=news; Plane Surface(s102) = {lloop102}; +s103=news; Plane Surface(s103) = {lloop103}; +s104=news; Plane Surface(s104) = {lloop104}; +s105=news; Plane Surface(s105) = {lloop105}; + + +// 2.1.9 Define surface loops required for volume definition of outer cube + +sloop0=newreg; Surface Loop(sloop0) ={s0,s1,s2,s3,s4,s5}; + + +// 2.1.9 Define surface loops required for volume definition of inner cube + +sloop100=newreg; Surface Loop(sloop100) ={s100,s101,s102,s103,s104,s105}; + + +// 2.1.10 Define volume of outer cube + +v0=newv; Volume(v0) = {sloop0,sloop100}; + + +// 2.1.11 Define volume of inner cube + +v100=newv; Volume(v100) = {sloop100}; + + +// 3.0 define physical entitites + +Physical Point(vacuum_background_bnd) = {p0,p1,p2,p3,p4,p5,p6,p7}; +Physical Line(vacuum_background_bnd) = {li0,li1,li2,li3,li4,li5,li6,li7,li8,li9,li10,li11}; +//Physical Line Loop(vacuum_background_bnd) = {lloop0,lloop1,lloop2,lloop3,lloop4,lloop5}; +Physical Surface(vacuum_background_bnd) = {s0,s1,s2,s3,s4,s5}; +//Physical Surface Loop(vacuum_background_bnd) = {sloop0}; +Physical Volume(pml) = {v0}; + +Physical Point(interelement_bnd) = {p100,p101,p102,p103,p104,p105,p106,p107}; +Physical Line(interelement_bnd) = {li100,li101,li102,li103,li104,li105,li106,li107,li108,li109,li110,li111}; +//Physical Line Loop(interelement_bnd) = {lloop100,lloop101,lloop102,lloop103,lloop104,lloop105}; +Physical Surface(interelement_bnd) = {s100,s101,s102,s103,s104,s105}; +//Physical Surface Loop(interelement_bnd) = {sloop100}; +Physical Volume(air) = {v100}; + + diff --git a/H5Fed/grids/cubeincube.msh b/H5Fed/grids/cubeincube.msh new file mode 100644 index 0000000..17ba143 --- /dev/null +++ b/H5Fed/grids/cubeincube.msh @@ -0,0 +1,2368 @@ +$MeshFormat +2 0 8 +$EndMeshFormat +$Nodes +344 +1 0 0 0 +2 1 0 0 +3 1 1 0 +4 0 1 0 +5 0 0 1 +6 1 0 1 +7 1 1 1 +8 0 1 1 +9 0.1 0.1 0.1 +10 0.9 0.1 0.1 +11 0.9 0.9 0.1 +12 0.1 0.9 0.1 +13 0.1 0.1 0.9 +14 0.9 0.1 0.9 +15 0.9 0.9 0.9 +16 0.1 0.9 0.9 +17 0.2499999999999966 0 0 +18 0.4999999999999931 0 0 +19 0.7499999999999897 0 0 +20 1 0.2499999999999966 0 +21 1 0.4999999999999931 0 +22 1 0.7499999999999897 0 +23 0.7500000000000034 1 0 +24 0.5000000000000069 1 0 +25 0.2500000000000103 1 0 +26 0 0.7500000000000034 0 +27 0 0.5000000000000069 0 +28 0 0.2500000000000103 0 +29 0.2499999999999966 0 1 +30 0.4999999999999931 0 1 +31 0.7499999999999897 0 1 +32 1 0.2499999999999966 1 +33 1 0.4999999999999931 1 +34 1 0.7499999999999897 1 +35 0.7500000000000034 1 1 +36 0.5000000000000069 1 1 +37 0.2500000000000103 1 1 +38 0 0.7500000000000034 1 +39 0 0.5000000000000069 1 +40 0 0.2500000000000103 1 +41 0 0 0.2499999999999966 +42 0 0 0.4999999999999931 +43 0 0 0.7499999999999897 +44 1 0 0.2499999999999966 +45 1 0 0.4999999999999931 +46 1 0 0.7499999999999897 +47 1 1 0.2499999999999966 +48 1 1 0.4999999999999931 +49 1 1 0.7499999999999897 +50 0 1 0.2499999999999966 +51 0 1 0.4999999999999931 +52 0 1 0.7499999999999897 +53 0.4999999999999879 0.1 0.1 +54 0.9 0.4999999999999879 0.1 +55 0.5000000000000069 0.9 0.1 +56 0.1 0.5000000000000069 0.1 +57 0.4999999999999879 0.1 0.9 +58 0.9 0.4999999999999879 0.9 +59 0.5000000000000069 0.9 0.9 +60 0.1 0.5000000000000069 0.9 +61 0.1 0.1 0.4999999999999879 +62 0.9 0.1 0.4999999999999879 +63 0.9 0.9 0.4999999999999879 +64 0.1 0.9 0.4999999999999879 +65 0.5000041764808878 0.5000759462013527 0 +66 0.6983991915326068 0.6984336687545183 0 +67 0.6984333004610171 0.3017725468202743 0 +68 0.3016505567679242 0.3017297914806897 0 +69 0.3016557111394942 0.6984079934986274 0 +70 0.5000430729393308 0.2245022394108918 0 +71 0.5000198883818249 0.7756531792569108 0 +72 0.2243922729397715 0.5000644904706915 0 +73 0.7756944750160029 0.5000999973617734 0 +74 0.8326749302923881 0.8326891761063668 0 +75 0.1673719320725032 0.1674303749117196 0 +76 0.8326780566814058 0.1674537416164915 0 +77 0.1673844044828703 0.8326633254651807 0 +78 0.6511179258948239 0.8637517745965734 0 +79 0.8637603416878075 0.3489847953810836 0 +80 0.6511439533143911 0.1364272309827595 0 +81 0.3489415347873148 0.1363985965682341 0 +82 0.3489264230765562 0.8637073350826181 0 +83 0.8637194119651342 0.6511868615100231 0 +84 0.1363341016380352 0.3489675047959804 0 +85 0.1363410283205108 0.6511406457560615 0 +86 0.5001070498412037 0.5000658018668438 1 +87 0.3016654552996739 0.6983746148597796 1 +88 0.3017565689396657 0.3017009794903771 1 +89 0.6984741916992447 0.3017026222194606 1 +90 0.6984472074012468 0.6984190765070857 1 +91 0.5000454721586969 0.7797997972701289 1 +92 0.7798825190739244 0.5000650859387081 1 +93 0.2202353580953229 0.5000173934795947 1 +94 0.5001200155169078 0.2203146038753485 1 +95 0.1614784579071916 0.838577368653674 1 +96 0.8386565271859691 0.1615339788520576 1 +97 0.1616028934008084 0.1615672928796423 1 +98 0.8386223456469249 0.8385631701088189 1 +99 0.354119915008841 0.1340027513442583 1 +100 0.6460444809717292 0.8661070329002555 1 +101 0.6461089874533009 0.1340085062599465 1 +102 0.1339639036704252 0.6460195432000798 1 +103 0.8661536013231192 0.3540663638265942 1 +104 0.354029660081911 0.8660337325404736 1 +105 0.8661126746722219 0.6460617306701447 1 +106 0.1340862371365754 0.3539828629543598 1 +107 0.5000697398721388 0 0.4999413144936186 +108 0.6984383285976302 0 0.3015458815572707 +109 0.3017353847329689 0 0.3015663992385119 +110 0.6984736177759949 0 0.6982666082924727 +111 0.301644399162695 0 0.6982385953686432 +112 0.5000500835353819 0 0.7755123730557203 +113 0.5000765310820716 0 0.2243009513962638 +114 0.7756874689570961 0 0.4999092227750461 +115 0.2244337579089307 0 0.4998981882889205 +116 0.8327159457411943 0 0.167285442448038 +117 0.8327227665267862 0 0.832578539875207 +118 0.1674406106157371 0 0.1673090910921546 +119 0.1673716086650892 0 0.8325567469155171 +120 0.8637863856377241 0 0.6510093090845659 +121 0.136305410843885 0 0.6509926043409144 +122 0.65116768125644 0 0.1362335350975295 +123 0.6511540385909709 0 0.8636032173249157 +124 0.8637453433941997 0 0.3488274272697054 +125 0.3489267549568855 0 0.8635713559530702 +126 0.3489658264766085 0 0.1362697542813626 +127 0.1363963327054414 0 0.3488205333811364 +128 1 0.500094292724403 0.5000621559390799 +129 1 0.3016931505152514 0.6984102535602628 +130 1 0.6984840860411465 0.3017235916315117 +131 1 0.3017684617763147 0.301684642915499 +132 1 0.6984198567043793 0.6984358140558629 +133 1 0.2203452369424466 0.5000317419276621 +134 1 0.5000493612925304 0.779794333122291 +135 1 0.5001393262978359 0.2203252026943029 +136 1 0.7798349186817514 0.5000939558436653 +137 1 0.1614811052801794 0.8386072587436992 +138 1 0.8386416821024327 0.1615010544610042 +139 1 0.1615588644176974 0.1615183853231959 +140 1 0.8385857781332807 0.8386206465458954 +141 1 0.8662017612051917 0.3541113504109751 +142 1 0.1339944988689787 0.6460112019656526 +143 1 0.3540582491565828 0.8661092639365582 +144 1 0.35416021198356 0.1339901964211377 +145 1 0.6460254277789632 0.866113225546006 +146 1 0.8660996907462348 0.6460879777685226 +147 1 0.6461228672666521 0.1340651881161022 +148 1 0.1341205636714776 0.3540400931505812 +149 0.5000664142607487 1 0.4999171708037333 +150 0.3017620424567719 1 0.6983335356032251 +151 0.6984050595195104 1 0.6982844087795477 +152 0.6983907261706988 1 0.3015315493747542 +153 0.3017383312580509 1 0.3015429734135191 +154 0.2203831666502035 1 0.4999434198460697 +155 0.7797607262473891 1 0.4999030354022017 +156 0.5000627032391817 1 0.2201476833158557 +157 0.5000946293943627 1 0.7797027739830757 +158 0.8386024640838341 1 0.1613627280947867 +159 0.1615336709789532 1 0.1613892934431182 +160 0.1615875499843351 1 0.8384914404921945 +161 0.8385549590427167 1 0.8384295461211169 +162 0.8660997614263701 1 0.6458977976349264 +163 0.3541218069727395 1 0.8660643021161253 +164 0.1340813096314365 1 0.6459501224132752 +165 0.3540862154622966 1 0.1338312060735575 +166 0.134085551154887 1 0.3539564209040371 +167 0.6460838692730508 1 0.8659956170525618 +168 0.6460355056437054 1 0.1338310915066812 +169 0.8660390125205525 1 0.3539205335604519 +170 0 0.5000523832892726 0.5000460802152484 +171 0 0.6983753984043573 0.6984570105195982 +172 0 0.3017379838717819 0.698447566477955 +173 0 0.6984080952773706 0.3016943850480907 +174 0 0.3016880268491327 0.3017033979204685 +175 0 0.7756357609458744 0.5000743923825548 +176 0 0.2244587974654308 0.5000778185033601 +177 0 0.5000433393432094 0.2244327735640739 +178 0 0.5000503835660651 0.7756868266964116 +179 0 0.832643451502864 0.8327187952705901 +180 0 0.1674000055909275 0.1674077192798146 +181 0 0.1674472528715331 0.8326934656588952 +182 0 0.8326649534331163 0.1674200118122543 +183 0 0.8637241538363096 0.3489655685029736 +184 0 0.8636978033511507 0.6511725691113739 +185 0 0.6511346652780696 0.1363492910809189 +186 0 0.3489639319037218 0.8637640953307143 +187 0 0.1363926063978888 0.6511718836839113 +188 0 0.1363578481591056 0.3489724920325388 +189 0 0.6511181021115184 0.8637664839048943 +190 0 0.3489401073674043 0.1363748282714297 +191 0.5000915914454265 0.5000977074166356 0.09999999999999999 +192 0.7001181790511661 0.3000591804356805 0.09999999999999999 +193 0.3000850523658483 0.3001013748720551 0.09999999999999999 +194 0.7000830816676714 0.7001079780653896 0.09999999999999999 +195 0.3000627980410048 0.7000613199027917 0.09999999999999999 +196 0.500057609881881 0.5000688840960619 0.9000000000000002 +197 0.700031918063445 0.3000602773338957 0.9000000000000002 +198 0.7000520480470293 0.7000802039418007 0.9000000000000002 +199 0.3000438507125905 0.700017868612992 0.9000000000000002 +200 0.3000874227754251 0.3001091733503986 0.9000000000000002 +201 0.5000673745999231 0.09999999999999999 0.500031347341963 +202 0.3000425844552671 0.09999999999999999 0.7000777657057125 +203 0.3000754099247836 0.09999999999999999 0.3000343099203474 +204 0.7001078557500682 0.09999999999999999 0.700072081485154 +205 0.7000782010221515 0.09999999999999999 0.3000944668207278 +206 0.9000000000000002 0.4999400824455358 0.5000993799659477 +207 0.9000000000000002 0.2999111562445892 0.7000649967226842 +208 0.9000000000000002 0.6998903961053182 0.300068760494172 +209 0.9000000000000002 0.2999896486381421 0.3000852583827094 +210 0.9000000000000002 0.6999691162638954 0.7000177437431986 +211 0.500044036299273 0.9000000000000002 0.4999731902098674 +212 0.7000699675045211 0.9000000000000002 0.6999907718944682 +213 0.7000019098245719 0.9000000000000002 0.299941817471074 +214 0.3000220605838519 0.9000000000000002 0.6999351355249147 +215 0.3000994442039234 0.9000000000000002 0.2999486998036541 +216 0.09999999999999999 0.5000724477991225 0.4999116966926481 +217 0.09999999999999999 0.7001071432505871 0.2999078445941388 +218 0.09999999999999999 0.3000448099757052 0.2999184323798102 +219 0.09999999999999999 0.7000278308449026 0.6999366071819498 +220 0.09999999999999999 0.2999739010192324 0.6999430456860236 +229 0.1 0.6629659447642362 0.1 +230 0.1 0.3371467553070779 0.1 +231 0.3380759072818739 0.8999999999999999 0.1 +232 0.6620037565303503 0.9000000000000001 0.1 +233 0.9000000000000001 0.6620136542474284 0.1 +234 0.9000000000000001 0.3398275808074005 0.1 +235 0.9000000000000001 0.338102281706243 0.1 +236 0.6629869446221293 0.1 0.1 +237 0.6629545724992381 0.1 0.1 +238 0.3371527972511739 0.1 0.1 +239 0.1 0.6619965576508094 0.9 +240 0.1 0.3380873930233184 0.9000000000000001 +241 0.3406768727162404 0.8999999999999999 0.8999999999999999 +242 0.3406437794178881 0.9 0.9 +243 0.6594746398153956 0.8999999999999999 0.8999999999999999 +244 0.8999999999999999 0.6594643186191385 0.8999999999999999 +245 0.8999999999999999 0.6594484177825892 0.8999999999999999 +246 0.9 0.3406418086776711 0.9 +247 0.9 0.340602743102228 0.9 +248 0.6620151859556964 0.1 0.8999999999999999 +249 0.3381109031863066 0.1 0.9000000000000001 +250 0.3398000587682838 0.1 0.9 +251 0.8999999999999999 0.1 0.6619533985403243 +252 0.9000000000000001 0.1 0.3397531201552622 +253 0.9 0.1 0.3380164154867601 +254 0.1 0.1 0.6629377507347588 +255 0.1 0.1 0.6628505471231012 +256 0.1 0.1 0.3371330942952687 +257 0.1 0.1 0.3370525053062485 +258 0.9000000000000001 0.9000000000000001 0.6594448774192988 +259 0.9000000000000001 0.9000000000000001 0.3405884730066266 +260 0.9000000000000001 0.9000000000000001 0.3406098899369296 +261 0.1 0.9 0.6619806386634912 +262 0.1 0.8999999999999999 0.3380494353307127 +263 0.1 0.9 0.3396827637773725 +264 0.6674502345418264 0.1242886429678993 0.1 +265 0.8758101700884113 0.6674176529176615 0.1 +266 0.3326546891677241 0.1242671184789792 0.09999999999999998 +267 0.3326479798278957 0.8758069590987047 0.09999999999999999 +268 0.8758367957287372 0.3326577198669455 0.1 +269 0.124223629934453 0.6674678270476316 0.1 +270 0.1242194405451076 0.332655504752475 0.09999999999999998 +271 0.6674157480330998 0.8758368602005248 0.1 +272 0.3360310184906882 0.8773533742182638 0.9 +273 0.3360894643219098 0.1226655620810927 0.9 +274 0.8774091179187749 0.6640319220629327 0.9000000000000001 +275 0.877438179083984 0.3360107161061666 0.8999999999999999 +276 0.124202554321858 0.1 0.6673108377534842 +277 0.6674433921524503 0.09999999999999995 0.8757330410384969 +278 0.667481295698648 0.1 0.1241580721688769 +279 0.1242660336649786 0.1 0.3325222674636936 +280 0.3326528998007031 0.1 0.8757098199794254 +281 0.8758611663213551 0.09999999999999999 0.6673660489445902 +282 0.8758306459272654 0.1 0.3325794770126648 +283 0.9 0.3361194279918187 0.1226556659338971 +284 0.9 0.8774679125247034 0.3360547244810485 +285 0.9 0.6640468130929436 0.8774107770823163 +286 0.9 0.1227440769380149 0.3360535291483302 +287 0.9 0.3360570100000422 0.8774073780041109 +288 0.9 0.8774024299123357 0.6640597672813844 +289 0.3360947478242121 0.9 0.8773768752107187 +290 0.1227196415015709 0.9 0.3359337921239656 +291 0.8773552073502806 0.9 0.3359764983255188 +292 0.6640780728845743 0.9 0.8773334424960146 +293 0.1 0.1242416110544995 0.3326638641031599 +294 0.1 0.8757976458021373 0.6674255627474577 +295 0.1 0.8758120956383746 0.3326320265234651 +296 0.1 0.124263459308998 0.6674715306525544 +297 0.1 0.6674156420828722 0.8758425574551614 +298 0.1 0.3326837565796515 0.8758392114199359 +428 0.999772029699682 0.6745254096714471 0.8257947604985535 +429 0.8257678860796214 0.9997218656545546 0.3254625944331752 +430 0.9202765249059998 0.3414599624197774 0.9444788653900666 +431 0.3415037384944916 0.9203045416304296 0.9445148420868272 +432 0.9201222888585991 0.3363754974584314 0.05215045538361493 +433 0.0819357787814796 0.9435408169349804 0.3572611307225777 +434 0.3574305867526239 0.08190073223085555 0.9435245089267337 +435 0.9200958615543846 0.05213992698938769 0.3363191570971414 +436 0.08066639847325134 0.05582060601637816 0.6497886615178456 +437 0.6504347428691193 0.08056072689193897 0.05575332516146328 +438 0.07877587878409804 0.0550111187534205 0.3377550930776577 +439 0.9435870494587415 0.9182938239841625 0.3537173214817461 +440 0.918303448407444 0.646440577779512 0.9436360984162832 +441 0.5109003869183627 0.4670794462617363 0.5973999681174723 +442 0.5483508262299299 0.2793384479574996 0.2491377913101836 +443 0.5741828947333548 0.6976306640041259 0.7213128403598857 +444 0.3001029161792567 0.7034533041821298 0.4952970160057204 +445 0.6399760481360033 0.2613462220506967 0.8060523612307032 +446 0.260367325917843 0.637267277715301 0.8087920072329197 +447 0.3138313318244934 0.3209863293666819 0.5948096435149296 +448 0.6511266247949079 0.6335824426581614 0.3782940286421844 +449 0.2883406460455389 0.4839803220808538 0.3204791677323574 +450 0.702395475643658 0.3116270922339452 0.521588989433486 +451 0.7246311282224969 0.6009371184121686 0.8388001121540271 +452 0.8189133001021702 0.3311854872525049 0.1679481296314142 +453 0.3315849702416598 0.1782356930256642 0.833194899145511 +454 0.7394724030362086 0.6905666205808423 0.8788717994601021 +455 0.7777732274347244 0.1857807753821006 0.3359779249376875 +456 0.8538296418522926 0.7806511868615785 0.2230356933556342 +457 0.8368930997480782 0.33265185521883 0.8520928209932009 +458 0.3327770418269748 0.8367826434796654 0.8520614559816858 +459 0.2989350464582976 0.1419466154188053 0.1924028859115789 +460 0.7563397422700672 0.827921799886647 0.6669176325605569 +461 0.8360771387626464 0.6643304754822402 0.8363447211561172 +462 0.8522293923017764 0.8366723325273644 0.336120788795103 +463 0.8344331109752289 0.2278751364313721 0.6819213877012643 +464 0.2271779648970384 0.8354638855976879 0.6807027474554551 +465 0.6792521512521783 0.2279431351787678 0.1750142836636178 +466 0.7768169349776067 0.3285277382435887 0.8121263626247371 +467 0.328452057871491 0.7767699001418003 0.8120434192314891 +468 0.1794166860076698 0.1672822406520143 0.6701312252954719 +469 0.1630617699746722 0.1619995372314912 0.3130412943242069 +470 0.1717062986983894 0.6845853212238691 0.2344183806043952 +471 0.6893411602912799 0.8293422737054171 0.2269110193326306 +472 0.3165471125295141 0.8192230355957322 0.2360655697703293 +473 0.8282167714163532 0.6479915609257221 0.2079297852801986 +474 0.2230262280377382 0.3296307929932275 0.8328652120699948 +475 0.6818844139518909 0.7700148490571773 0.8238894840874259 +476 0.6674785642466392 0.1653005541619921 0.1640525504623405 +477 0.7713926134414204 0.6772567375089276 0.8254474333491757 +478 0.8119803414339906 0.7770432536995755 0.3252963184619667 +479 0.1783601094670608 0.8331625947385275 0.3314629054608738 +480 0.836452259772016 0.1521923775890457 0.3232343904434034 +481 0.1590695061664143 0.2929678500292016 0.2121429890195288 +$EndNodes +$Elements +2015 +1 15 2 12701 1 1 +2 15 2 12701 2 2 +3 15 2 12701 3 3 +4 15 2 12701 4 4 +5 15 2 12701 5 5 +6 15 2 12701 6 6 +7 15 2 12701 7 7 +8 15 2 12701 8 8 +9 15 2 12702 9 9 +10 15 2 12702 10 10 +11 15 2 12702 11 11 +12 15 2 12702 12 12 +13 15 2 12702 13 13 +14 15 2 12702 14 14 +15 15 2 12702 15 15 +16 15 2 12702 16 16 +17 1 2 12701 1 1 17 +18 1 2 12701 1 17 18 +19 1 2 12701 1 18 19 +20 1 2 12701 1 19 2 +21 1 2 12701 2 2 20 +22 1 2 12701 2 20 21 +23 1 2 12701 2 21 22 +24 1 2 12701 2 22 3 +25 1 2 12701 3 3 23 +26 1 2 12701 3 23 24 +27 1 2 12701 3 24 25 +28 1 2 12701 3 25 4 +29 1 2 12701 4 4 26 +30 1 2 12701 4 26 27 +31 1 2 12701 4 27 28 +32 1 2 12701 4 28 1 +33 1 2 12701 5 5 29 +34 1 2 12701 5 29 30 +35 1 2 12701 5 30 31 +36 1 2 12701 5 31 6 +37 1 2 12701 6 6 32 +38 1 2 12701 6 32 33 +39 1 2 12701 6 33 34 +40 1 2 12701 6 34 7 +41 1 2 12701 7 7 35 +42 1 2 12701 7 35 36 +43 1 2 12701 7 36 37 +44 1 2 12701 7 37 8 +45 1 2 12701 8 8 38 +46 1 2 12701 8 38 39 +47 1 2 12701 8 39 40 +48 1 2 12701 8 40 5 +49 1 2 12701 9 1 41 +50 1 2 12701 9 41 42 +51 1 2 12701 9 42 43 +52 1 2 12701 9 43 5 +53 1 2 12701 10 2 44 +54 1 2 12701 10 44 45 +55 1 2 12701 10 45 46 +56 1 2 12701 10 46 6 +57 1 2 12701 11 3 47 +58 1 2 12701 11 47 48 +59 1 2 12701 11 48 49 +60 1 2 12701 11 49 7 +61 1 2 12701 12 4 50 +62 1 2 12701 12 50 51 +63 1 2 12701 12 51 52 +64 1 2 12701 12 52 8 +65 1 2 12702 13 9 53 +66 1 2 12702 13 53 10 +67 1 2 12702 14 10 54 +68 1 2 12702 14 54 11 +69 1 2 12702 15 11 55 +70 1 2 12702 15 55 12 +71 1 2 12702 16 12 56 +72 1 2 12702 16 56 9 +73 1 2 12702 17 13 57 +74 1 2 12702 17 57 14 +75 1 2 12702 18 14 58 +76 1 2 12702 18 58 15 +77 1 2 12702 19 15 59 +78 1 2 12702 19 59 16 +79 1 2 12702 20 16 60 +80 1 2 12702 20 60 13 +81 1 2 12702 21 9 61 +82 1 2 12702 21 61 13 +83 1 2 12702 22 10 62 +84 1 2 12702 22 62 14 +85 1 2 12702 23 11 63 +86 1 2 12702 23 63 15 +87 1 2 12702 24 12 64 +88 1 2 12702 24 64 16 +89 2 2 12701 37 65 73 66 +90 2 2 12701 37 67 73 65 +91 2 2 12701 37 66 71 65 +92 2 2 12701 37 65 70 67 +93 2 2 12701 37 65 72 68 +94 2 2 12701 37 69 72 65 +95 2 2 12701 37 65 71 69 +96 2 2 12701 37 68 70 65 +97 2 2 12701 37 3 74 22 +98 2 2 12701 37 2 76 19 +99 2 2 12701 37 23 74 3 +100 2 2 12701 37 20 76 2 +101 2 2 12701 37 1 75 28 +102 2 2 12701 37 26 77 4 +103 2 2 12701 37 17 75 1 +104 2 2 12701 37 4 77 25 +105 2 2 12701 37 18 81 17 +106 2 2 12701 37 25 82 24 +107 2 2 12701 37 21 79 20 +108 2 2 12701 37 27 85 26 +109 2 2 12701 37 24 78 23 +110 2 2 12701 37 22 83 21 +111 2 2 12701 37 19 80 18 +112 2 2 12701 37 28 84 27 +113 2 2 12701 37 70 81 18 +114 2 2 12701 37 18 80 70 +115 2 2 12701 37 21 83 73 +116 2 2 12701 37 24 82 71 +117 2 2 12701 37 72 85 27 +118 2 2 12701 37 73 79 21 +119 2 2 12701 37 71 78 24 +120 2 2 12701 37 27 84 72 +121 2 2 12701 37 70 80 67 +122 2 2 12701 37 68 81 70 +123 2 2 12701 37 66 78 71 +124 2 2 12701 37 71 82 69 +125 2 2 12701 37 67 79 73 +126 2 2 12701 37 72 84 68 +127 2 2 12701 37 69 85 72 +128 2 2 12701 37 73 83 66 +129 2 2 12701 37 23 78 74 +130 2 2 12701 37 74 78 66 +131 2 2 12701 37 75 81 68 +132 2 2 12701 37 17 81 75 +133 2 2 12701 37 20 79 76 +134 2 2 12701 37 76 79 67 +135 2 2 12701 37 69 82 77 +136 2 2 12701 37 77 82 25 +137 2 2 12701 37 75 84 28 +138 2 2 12701 37 68 84 75 +139 2 2 12701 37 67 80 76 +140 2 2 12701 37 76 80 19 +141 2 2 12701 37 77 85 69 +142 2 2 12701 37 26 85 77 +143 2 2 12701 37 74 83 22 +144 2 2 12701 37 66 83 74 +145 2 2 12701 38 87 93 86 +146 2 2 12701 38 86 93 88 +147 2 2 12701 38 86 91 87 +148 2 2 12701 38 88 94 86 +149 2 2 12701 38 86 94 89 +150 2 2 12701 38 89 92 86 +151 2 2 12701 38 86 92 90 +152 2 2 12701 38 90 91 86 +153 2 2 12701 38 38 95 8 +154 2 2 12701 38 7 98 34 +155 2 2 12701 38 8 95 37 +156 2 2 12701 38 32 96 6 +157 2 2 12701 38 35 98 7 +158 2 2 12701 38 6 96 31 +159 2 2 12701 38 29 97 5 +160 2 2 12701 38 5 97 40 +161 2 2 12701 38 36 100 35 +162 2 2 12701 38 31 101 30 +163 2 2 12701 38 40 106 39 +164 2 2 12701 38 30 99 29 +165 2 2 12701 38 34 105 33 +166 2 2 12701 38 33 103 32 +167 2 2 12701 38 39 102 38 +168 2 2 12701 38 37 104 36 +169 2 2 12701 38 91 100 36 +170 2 2 12701 38 36 104 91 +171 2 2 12701 38 39 106 93 +172 2 2 12701 38 33 105 92 +173 2 2 12701 38 92 103 33 +174 2 2 12701 38 30 101 94 +175 2 2 12701 38 93 102 39 +176 2 2 12701 38 94 99 30 +177 2 2 12701 38 90 100 91 +178 2 2 12701 38 91 104 87 +179 2 2 12701 38 89 103 92 +180 2 2 12701 38 88 99 94 +181 2 2 12701 38 92 105 90 +182 2 2 12701 38 94 101 89 +183 2 2 12701 38 87 102 93 +184 2 2 12701 38 93 106 88 +185 2 2 12701 38 95 102 87 +186 2 2 12701 38 38 102 95 +187 2 2 12701 38 98 100 90 +188 2 2 12701 38 35 100 98 +189 2 2 12701 38 95 104 37 +190 2 2 12701 38 87 104 95 +191 2 2 12701 38 96 101 31 +192 2 2 12701 38 89 101 96 +193 2 2 12701 38 96 103 89 +194 2 2 12701 38 32 103 96 +195 2 2 12701 38 29 99 97 +196 2 2 12701 38 97 99 88 +197 2 2 12701 38 90 105 98 +198 2 2 12701 38 98 105 34 +199 2 2 12701 38 88 106 97 +200 2 2 12701 38 97 106 40 +201 2 2 12701 39 108 107 113 +202 2 2 12701 39 107 109 113 +203 2 2 12701 39 107 108 114 +204 2 2 12701 39 109 107 115 +205 2 2 12701 39 110 107 114 +206 2 2 12701 39 107 111 115 +207 2 2 12701 39 107 110 112 +208 2 2 12701 39 111 107 112 +209 2 2 12701 39 1 17 118 +210 2 2 12701 39 2 44 116 +211 2 2 12701 39 19 2 116 +212 2 2 12701 39 41 1 118 +213 2 2 12701 39 5 43 119 +214 2 2 12701 39 29 5 119 +215 2 2 12701 39 6 31 117 +216 2 2 12701 39 46 6 117 +217 2 2 12701 39 45 46 120 +218 2 2 12701 39 30 29 125 +219 2 2 12701 39 17 18 126 +220 2 2 12701 39 42 41 127 +221 2 2 12701 39 43 42 121 +222 2 2 12701 39 18 19 122 +223 2 2 12701 39 31 30 123 +224 2 2 12701 39 44 45 124 +225 2 2 12701 39 112 30 125 +226 2 2 12701 39 30 112 123 +227 2 2 12701 39 18 113 126 +228 2 2 12701 39 113 18 122 +229 2 2 12701 39 115 42 127 +230 2 2 12701 39 45 114 124 +231 2 2 12701 39 114 45 120 +232 2 2 12701 39 42 115 121 +233 2 2 12701 39 112 110 123 +234 2 2 12701 39 111 112 125 +235 2 2 12701 39 108 113 122 +236 2 2 12701 39 110 114 120 +237 2 2 12701 39 114 108 124 +238 2 2 12701 39 113 109 126 +239 2 2 12701 39 115 111 121 +240 2 2 12701 39 109 115 127 +241 2 2 12701 39 46 117 120 +242 2 2 12701 39 117 110 120 +243 2 2 12701 39 111 119 121 +244 2 2 12701 39 119 43 121 +245 2 2 12701 39 19 116 122 +246 2 2 12701 39 116 108 122 +247 2 2 12701 39 117 31 123 +248 2 2 12701 39 110 117 123 +249 2 2 12701 39 108 116 124 +250 2 2 12701 39 116 44 124 +251 2 2 12701 39 29 119 125 +252 2 2 12701 39 119 111 125 +253 2 2 12701 39 118 17 126 +254 2 2 12701 39 109 118 126 +255 2 2 12701 39 41 118 127 +256 2 2 12701 39 118 109 127 +257 2 2 12701 40 129 133 128 +258 2 2 12701 40 128 134 129 +259 2 2 12701 40 130 136 128 +260 2 2 12701 40 128 135 130 +261 2 2 12701 40 128 133 131 +262 2 2 12701 40 131 135 128 +263 2 2 12701 40 128 136 132 +264 2 2 12701 40 132 134 128 +265 2 2 12701 40 3 138 22 +266 2 2 12701 40 20 139 2 +267 2 2 12701 40 2 139 44 +268 2 2 12701 40 7 140 49 +269 2 2 12701 40 34 140 7 +270 2 2 12701 40 46 137 6 +271 2 2 12701 40 6 137 32 +272 2 2 12701 40 47 138 3 +273 2 2 12701 40 48 141 47 +274 2 2 12701 40 21 144 20 +275 2 2 12701 40 49 146 48 +276 2 2 12701 40 33 145 34 +277 2 2 12701 40 32 143 33 +278 2 2 12701 40 44 148 45 +279 2 2 12701 40 45 142 46 +280 2 2 12701 40 22 147 21 +281 2 2 12701 40 45 148 133 +282 2 2 12701 40 48 146 136 +283 2 2 12701 40 21 147 135 +284 2 2 12701 40 33 143 134 +285 2 2 12701 40 134 145 33 +286 2 2 12701 40 135 144 21 +287 2 2 12701 40 133 142 45 +288 2 2 12701 40 136 141 48 +289 2 2 12701 40 129 142 133 +290 2 2 12701 40 130 141 136 +291 2 2 12701 40 134 143 129 +292 2 2 12701 40 131 144 135 +293 2 2 12701 40 132 145 134 +294 2 2 12701 40 133 148 131 +295 2 2 12701 40 136 146 132 +296 2 2 12701 40 135 147 130 +297 2 2 12701 40 138 141 130 +298 2 2 12701 40 47 141 138 +299 2 2 12701 40 137 142 129 +300 2 2 12701 40 46 142 137 +301 2 2 12701 40 20 144 139 +302 2 2 12701 40 139 144 131 +303 2 2 12701 40 137 143 32 +304 2 2 12701 40 129 143 137 +305 2 2 12701 40 34 145 140 +306 2 2 12701 40 140 145 132 +307 2 2 12701 40 140 146 49 +308 2 2 12701 40 132 146 140 +309 2 2 12701 40 138 147 22 +310 2 2 12701 40 130 147 138 +311 2 2 12701 40 131 148 139 +312 2 2 12701 40 139 148 44 +313 2 2 12701 41 150 157 149 +314 2 2 12701 41 149 157 151 +315 2 2 12701 41 152 156 149 +316 2 2 12701 41 149 156 153 +317 2 2 12701 41 151 155 149 +318 2 2 12701 41 149 155 152 +319 2 2 12701 41 149 154 150 +320 2 2 12701 41 153 154 149 +321 2 2 12701 41 23 158 3 +322 2 2 12701 41 3 158 47 +323 2 2 12701 41 8 160 52 +324 2 2 12701 41 7 161 35 +325 2 2 12701 41 37 160 8 +326 2 2 12701 41 50 159 4 +327 2 2 12701 41 49 161 7 +328 2 2 12701 41 4 159 25 +329 2 2 12701 41 36 163 37 +330 2 2 12701 41 48 162 49 +331 2 2 12701 41 35 167 36 +332 2 2 12701 41 52 164 51 +333 2 2 12701 41 24 168 23 +334 2 2 12701 41 51 166 50 +335 2 2 12701 41 25 165 24 +336 2 2 12701 41 47 169 48 +337 2 2 12701 41 154 166 51 +338 2 2 12701 41 51 164 154 +339 2 2 12701 41 48 169 155 +340 2 2 12701 41 155 162 48 +341 2 2 12701 41 156 168 24 +342 2 2 12701 41 36 167 157 +343 2 2 12701 41 24 165 156 +344 2 2 12701 41 157 163 36 +345 2 2 12701 41 154 164 150 +346 2 2 12701 41 153 166 154 +347 2 2 12701 41 151 162 155 +348 2 2 12701 41 155 169 152 +349 2 2 12701 41 150 163 157 +350 2 2 12701 41 156 165 153 +351 2 2 12701 41 152 168 156 +352 2 2 12701 41 157 167 151 +353 2 2 12701 41 158 168 152 +354 2 2 12701 41 23 168 158 +355 2 2 12701 41 159 165 25 +356 2 2 12701 41 153 165 159 +357 2 2 12701 41 50 166 159 +358 2 2 12701 41 159 166 153 +359 2 2 12701 41 158 169 47 +360 2 2 12701 41 152 169 158 +361 2 2 12701 41 160 163 150 +362 2 2 12701 41 37 163 160 +363 2 2 12701 41 160 164 52 +364 2 2 12701 41 150 164 160 +365 2 2 12701 41 49 162 161 +366 2 2 12701 41 161 162 151 +367 2 2 12701 41 151 167 161 +368 2 2 12701 41 161 167 35 +369 2 2 12701 42 171 170 178 +370 2 2 12701 42 170 172 178 +371 2 2 12701 42 170 171 175 +372 2 2 12701 42 172 170 176 +373 2 2 12701 42 170 173 177 +374 2 2 12701 42 174 170 177 +375 2 2 12701 42 170 174 176 +376 2 2 12701 42 173 170 175 +377 2 2 12701 42 28 1 180 +378 2 2 12701 42 8 52 179 +379 2 2 12701 42 38 8 179 +380 2 2 12701 42 4 26 182 +381 2 2 12701 42 1 41 180 +382 2 2 12701 42 5 40 181 +383 2 2 12701 42 50 4 182 +384 2 2 12701 42 43 5 181 +385 2 2 12701 42 51 50 183 +386 2 2 12701 42 40 39 186 +387 2 2 12701 42 42 43 187 +388 2 2 12701 42 27 28 190 +389 2 2 12701 42 52 51 184 +390 2 2 12701 42 26 27 185 +391 2 2 12701 42 41 42 188 +392 2 2 12701 42 39 38 189 +393 2 2 12701 42 177 27 190 +394 2 2 12701 42 176 42 187 +395 2 2 12701 42 175 51 183 +396 2 2 12701 42 51 175 184 +397 2 2 12701 42 42 176 188 +398 2 2 12701 42 27 177 185 +399 2 2 12701 42 39 178 186 +400 2 2 12701 42 178 39 189 +401 2 2 12701 42 173 175 183 +402 2 2 12701 42 175 171 184 +403 2 2 12701 42 172 176 187 +404 2 2 12701 42 176 174 188 +405 2 2 12701 42 177 173 185 +406 2 2 12701 42 174 177 190 +407 2 2 12701 42 178 172 186 +408 2 2 12701 42 171 178 189 +409 2 2 12701 42 180 41 188 +410 2 2 12701 42 174 180 188 +411 2 2 12701 42 179 52 184 +412 2 2 12701 42 171 179 184 +413 2 2 12701 42 182 173 183 +414 2 2 12701 42 50 182 183 +415 2 2 12701 42 180 174 190 +416 2 2 12701 42 28 180 190 +417 2 2 12701 42 38 179 189 +418 2 2 12701 42 179 171 189 +419 2 2 12701 42 182 26 185 +420 2 2 12701 42 173 182 185 +421 2 2 12701 42 181 40 186 +422 2 2 12701 42 172 181 186 +423 2 2 12701 42 43 181 187 +424 2 2 12701 42 181 172 187 +425 2 2 12702 43 193 192 191 +426 2 2 12702 43 191 192 54 +427 2 2 12702 43 55 195 191 +428 2 2 12702 43 191 194 55 +429 2 2 12702 43 192 193 53 +430 2 2 12702 43 54 194 191 +431 2 2 12702 43 191 195 193 +432 2 2 12702 43 193 195 56 +433 2 2 12702 43 10 192 236 +434 2 2 12702 43 192 53 264 +435 2 2 12702 43 53 237 264 +436 2 2 12702 43 236 192 264 +437 2 2 12702 43 237 236 264 +438 2 2 12702 43 11 194 265 +439 2 2 12702 43 233 11 265 +440 2 2 12702 43 194 54 265 +441 2 2 12702 43 54 233 265 +442 2 2 12702 43 193 9 266 +443 2 2 12702 43 9 238 266 +444 2 2 12702 43 53 193 266 +445 2 2 12702 43 238 53 266 +446 2 2 12702 43 12 195 267 +447 2 2 12702 43 231 12 267 +448 2 2 12702 43 195 55 267 +449 2 2 12702 43 55 231 267 +450 2 2 12702 43 192 10 268 +451 2 2 12702 43 10 235 268 +452 2 2 12702 43 54 192 234 +453 2 2 12702 43 234 192 268 +454 2 2 12702 43 235 234 268 +455 2 2 12702 43 195 12 269 +456 2 2 12702 43 12 229 269 +457 2 2 12702 43 56 195 269 +458 2 2 12702 43 229 56 269 +459 2 2 12702 43 9 193 270 +460 2 2 12702 43 230 9 270 +461 2 2 12702 43 193 56 270 +462 2 2 12702 43 56 230 270 +463 2 2 12702 43 194 11 271 +464 2 2 12702 43 11 232 271 +465 2 2 12702 43 55 194 271 +466 2 2 12702 43 232 55 271 +467 2 2 12702 44 196 198 59 +468 2 2 12702 44 58 198 196 +469 2 2 12702 44 196 197 58 +470 2 2 12702 44 59 199 196 +471 2 2 12702 44 196 200 197 +472 2 2 12702 44 197 200 57 +473 2 2 12702 44 199 200 196 +474 2 2 12702 44 60 200 199 +475 2 2 12702 44 13 200 240 +476 2 2 12702 44 200 60 240 +477 2 2 12702 44 16 199 272 +478 2 2 12702 44 242 16 272 +479 2 2 12702 44 199 59 241 +480 2 2 12702 44 199 241 272 +481 2 2 12702 44 241 242 272 +482 2 2 12702 44 200 13 249 +483 2 2 12702 44 57 200 273 +484 2 2 12702 44 250 57 273 +485 2 2 12702 44 200 249 273 +486 2 2 12702 44 249 250 273 +487 2 2 12702 44 14 197 248 +488 2 2 12702 44 197 57 248 +489 2 2 12702 44 198 15 243 +490 2 2 12702 44 59 198 243 +491 2 2 12702 44 15 198 244 +492 2 2 12702 44 198 58 274 +493 2 2 12702 44 58 245 274 +494 2 2 12702 44 244 198 274 +495 2 2 12702 44 245 244 274 +496 2 2 12702 44 197 14 275 +497 2 2 12702 44 14 247 275 +498 2 2 12702 44 58 197 246 +499 2 2 12702 44 246 197 275 +500 2 2 12702 44 247 246 275 +501 2 2 12702 44 199 16 239 +502 2 2 12702 44 60 199 239 +503 2 2 12702 45 57 202 201 +504 2 2 12702 45 201 204 57 +505 2 2 12702 45 203 202 61 +506 2 2 12702 45 203 205 201 +507 2 2 12702 45 205 203 53 +508 2 2 12702 45 202 203 201 +509 2 2 12702 45 62 201 205 +510 2 2 12702 45 201 62 204 +511 2 2 12702 45 202 13 254 +512 2 2 12702 45 61 202 276 +513 2 2 12702 45 255 61 276 +514 2 2 12702 45 202 254 276 +515 2 2 12702 45 254 255 276 +516 2 2 12702 45 204 14 277 +517 2 2 12702 45 14 248 277 +518 2 2 12702 45 57 204 277 +519 2 2 12702 45 248 57 277 +520 2 2 12702 45 10 205 278 +521 2 2 12702 45 236 10 278 +522 2 2 12702 45 205 53 237 +523 2 2 12702 45 236 205 237 +524 2 2 12702 45 205 236 278 +525 2 2 12702 45 9 203 279 +526 2 2 12702 45 257 9 279 +527 2 2 12702 45 203 61 256 +528 2 2 12702 45 203 256 279 +529 2 2 12702 45 256 257 279 +530 2 2 12702 45 13 202 280 +531 2 2 12702 45 249 13 280 +532 2 2 12702 45 202 57 250 +533 2 2 12702 45 249 202 250 +534 2 2 12702 45 202 249 280 +535 2 2 12702 45 14 204 281 +536 2 2 12702 45 251 14 281 +537 2 2 12702 45 204 62 281 +538 2 2 12702 45 62 251 281 +539 2 2 12702 45 203 9 238 +540 2 2 12702 45 53 203 238 +541 2 2 12702 45 205 10 282 +542 2 2 12702 45 10 253 282 +543 2 2 12702 45 62 205 252 +544 2 2 12702 45 252 205 282 +545 2 2 12702 45 253 252 282 +546 2 2 12702 46 58 207 206 +547 2 2 12702 46 206 210 58 +548 2 2 12702 46 206 207 62 +549 2 2 12702 46 62 209 206 +550 2 2 12702 46 208 210 206 +551 2 2 12702 46 63 210 208 +552 2 2 12702 46 208 209 54 +553 2 2 12702 46 206 209 208 +554 2 2 12702 46 11 208 233 +555 2 2 12702 46 208 54 233 +556 2 2 12702 46 209 10 235 +557 2 2 12702 46 54 209 283 +558 2 2 12702 46 234 54 283 +559 2 2 12702 46 234 209 235 +560 2 2 12702 46 209 234 283 +561 2 2 12702 46 208 11 259 +562 2 2 12702 46 63 208 284 +563 2 2 12702 46 260 63 284 +564 2 2 12702 46 208 259 284 +565 2 2 12702 46 259 260 284 +566 2 2 12702 46 210 15 285 +567 2 2 12702 46 15 244 285 +568 2 2 12702 46 58 210 245 +569 2 2 12702 46 210 244 245 +570 2 2 12702 46 244 210 285 +571 2 2 12702 46 10 209 253 +572 2 2 12702 46 209 62 286 +573 2 2 12702 46 62 252 286 +574 2 2 12702 46 209 252 253 +575 2 2 12702 46 252 209 286 +576 2 2 12702 46 207 14 251 +577 2 2 12702 46 62 207 251 +578 2 2 12702 46 14 207 247 +579 2 2 12702 46 207 58 287 +580 2 2 12702 46 58 246 287 +581 2 2 12702 46 207 246 247 +582 2 2 12702 46 246 207 287 +583 2 2 12702 46 15 210 288 +584 2 2 12702 46 258 15 288 +585 2 2 12702 46 210 63 288 +586 2 2 12702 46 63 258 288 +587 2 2 12702 47 211 212 63 +588 2 2 12702 47 59 212 211 +589 2 2 12702 47 63 213 211 +590 2 2 12702 47 211 214 59 +591 2 2 12702 47 215 214 211 +592 2 2 12702 47 214 215 64 +593 2 2 12702 47 213 215 211 +594 2 2 12702 47 55 215 213 +595 2 2 12702 47 12 215 231 +596 2 2 12702 47 215 55 231 +597 2 2 12702 47 214 16 242 +598 2 2 12702 47 59 214 289 +599 2 2 12702 47 241 59 289 +600 2 2 12702 47 241 214 242 +601 2 2 12702 47 214 241 289 +602 2 2 12702 47 215 12 262 +603 2 2 12702 47 64 215 290 +604 2 2 12702 47 263 64 290 +605 2 2 12702 47 215 262 290 +606 2 2 12702 47 262 263 290 +607 2 2 12702 47 11 213 291 +608 2 2 12702 47 259 11 291 +609 2 2 12702 47 213 63 260 +610 2 2 12702 47 259 213 260 +611 2 2 12702 47 213 259 291 +612 2 2 12702 47 15 212 292 +613 2 2 12702 47 243 15 292 +614 2 2 12702 47 212 59 292 +615 2 2 12702 47 59 243 292 +616 2 2 12702 47 212 15 258 +617 2 2 12702 47 63 212 258 +618 2 2 12702 47 16 214 261 +619 2 2 12702 47 214 64 261 +620 2 2 12702 47 213 11 232 +621 2 2 12702 47 55 213 232 +622 2 2 12702 48 218 220 216 +623 2 2 12702 48 61 220 218 +624 2 2 12702 48 219 220 60 +625 2 2 12702 48 216 217 56 +626 2 2 12702 48 64 217 216 +627 2 2 12702 48 56 218 216 +628 2 2 12702 48 216 219 64 +629 2 2 12702 48 220 219 216 +630 2 2 12702 48 218 9 257 +631 2 2 12702 48 61 218 293 +632 2 2 12702 48 256 61 293 +633 2 2 12702 48 256 218 257 +634 2 2 12702 48 218 256 293 +635 2 2 12702 48 219 16 294 +636 2 2 12702 48 16 261 294 +637 2 2 12702 48 64 219 294 +638 2 2 12702 48 261 64 294 +639 2 2 12702 48 12 217 295 +640 2 2 12702 48 262 12 295 +641 2 2 12702 48 217 64 263 +642 2 2 12702 48 262 217 263 +643 2 2 12702 48 217 262 295 +644 2 2 12702 48 13 220 296 +645 2 2 12702 48 254 13 296 +646 2 2 12702 48 220 61 255 +647 2 2 12702 48 254 220 255 +648 2 2 12702 48 220 254 296 +649 2 2 12702 48 16 219 297 +650 2 2 12702 48 239 16 297 +651 2 2 12702 48 219 60 297 +652 2 2 12702 48 60 239 297 +653 2 2 12702 48 217 12 229 +654 2 2 12702 48 56 217 229 +655 2 2 12702 48 9 218 230 +656 2 2 12702 48 218 56 230 +657 2 2 12702 48 220 13 298 +658 2 2 12702 48 13 240 298 +659 2 2 12702 48 60 220 298 +660 2 2 12702 48 240 60 298 +661 4 2 1301 51 275 430 247 246 +662 4 2 1301 51 272 431 241 242 +663 4 2 1301 51 439 284 260 259 +664 4 2 1301 51 440 274 244 245 +665 4 2 1301 51 279 438 256 257 +666 4 2 1301 51 437 264 237 236 +667 4 2 1301 51 436 276 255 254 +668 4 2 1301 51 282 435 253 252 +669 4 2 1301 51 268 432 234 235 +670 4 2 1301 51 433 290 263 262 +671 4 2 1301 51 434 273 250 249 +672 4 2 1301 51 143 430 246 247 +673 4 2 1301 51 431 163 241 242 +674 4 2 1301 51 438 188 256 257 +675 4 2 1301 51 145 244 245 440 +676 4 2 1301 51 169 259 439 260 +677 4 2 1301 51 437 122 236 237 +678 4 2 1301 51 432 144 234 235 +679 4 2 1301 51 148 435 252 253 +680 4 2 1301 51 436 187 254 255 +681 4 2 1301 51 433 183 262 263 +682 4 2 1301 51 434 125 249 250 +683 4 2 1301 51 268 432 79 234 +684 4 2 1301 51 282 435 252 124 +685 4 2 1301 51 434 273 57 250 +686 4 2 1301 51 433 290 64 263 +687 4 2 1301 51 439 284 63 260 +688 4 2 1301 51 440 274 245 58 +689 4 2 1301 51 158 439 169 429 +690 4 2 1301 51 436 276 61 255 +691 4 2 1301 51 437 264 53 237 +692 4 2 1301 51 275 430 246 103 +693 4 2 1301 51 272 431 104 241 +694 4 2 1301 51 279 438 127 256 +695 4 2 1301 51 245 145 440 58 +696 4 2 1301 51 439 169 260 63 +697 4 2 1301 51 246 58 103 430 +698 4 2 1301 51 59 241 104 431 +699 4 2 1301 51 59 241 431 163 +700 4 2 1301 51 246 58 430 143 +701 4 2 1301 51 54 234 79 432 +702 4 2 1301 51 252 62 124 435 +703 4 2 1301 51 263 64 433 183 +704 4 2 1301 51 250 57 434 125 +705 4 2 1301 51 255 61 436 187 +706 4 2 1301 51 237 53 437 122 +707 4 2 1301 51 29 249 434 125 +708 4 2 1301 51 50 262 433 183 +709 4 2 1301 51 61 256 127 438 +710 4 2 1301 51 61 256 438 188 +711 4 2 1301 51 54 234 432 144 +712 4 2 1301 51 252 62 435 148 +713 4 2 1301 51 43 254 436 187 +714 4 2 1301 51 145 34 244 440 +715 4 2 1301 51 19 236 437 122 +716 4 2 1301 51 439 284 141 63 +717 4 2 1301 51 440 274 58 105 +718 4 2 1301 51 437 264 80 53 +719 4 2 1301 51 436 276 121 61 +720 4 2 1301 51 434 273 99 57 +721 4 2 1301 51 433 290 166 64 +722 4 2 1301 51 259 439 11 429 +723 4 2 1301 51 169 259 429 439 +724 4 2 1301 51 58 33 103 430 +725 4 2 1301 51 36 59 104 431 +726 4 2 1301 51 33 145 58 440 +727 4 2 1301 51 63 48 439 169 +728 4 2 1301 51 432 76 268 79 +729 4 2 1301 51 282 116 435 124 +730 4 2 1301 51 118 279 438 127 +731 4 2 1301 51 36 59 431 163 +732 4 2 1301 51 58 33 430 143 +733 4 2 1301 51 63 48 141 439 +734 4 2 1301 51 33 440 58 105 +735 4 2 1301 51 21 54 432 144 +736 4 2 1301 51 148 45 62 435 +737 4 2 1301 51 21 54 79 432 +738 4 2 1301 51 122 18 53 437 +739 4 2 1301 51 51 433 64 183 +740 4 2 1301 51 435 45 62 124 +741 4 2 1301 51 42 436 61 187 +742 4 2 1301 51 57 30 99 434 +743 4 2 1301 51 127 42 61 438 +744 4 2 1301 51 57 30 434 125 +745 4 2 1301 51 51 166 64 433 +746 4 2 1301 51 438 42 61 188 +747 4 2 1301 51 96 275 103 430 +748 4 2 1301 51 437 18 53 80 +749 4 2 1301 51 42 121 61 436 +750 4 2 1301 51 163 37 242 431 +751 4 2 1301 51 435 116 44 124 +752 4 2 1301 51 20 76 432 79 +753 4 2 1301 51 438 118 127 41 +754 4 2 1301 51 259 138 439 141 +755 4 2 1301 51 158 439 429 11 +756 4 2 1301 51 249 99 29 434 +757 4 2 1301 51 262 166 50 433 +758 4 2 1301 51 434 273 249 99 +759 4 2 1301 51 180 257 188 438 +760 4 2 1301 51 32 430 96 103 +761 4 2 1301 51 158 429 152 213 +762 4 2 1301 51 210 140 428 132 +763 4 2 1301 51 139 235 144 432 +764 4 2 1301 51 433 290 262 166 +765 4 2 1301 51 137 247 430 143 +766 4 2 1301 51 47 439 138 141 +767 4 2 1301 51 41 438 180 188 +768 4 2 1301 51 20 144 432 139 +769 4 2 1301 51 282 435 10 253 +770 4 2 1301 51 268 432 235 10 +771 4 2 1301 51 430 137 143 32 +772 4 2 1301 51 279 438 257 9 +773 4 2 1301 51 275 430 14 247 +774 4 2 1301 51 139 235 432 10 +775 4 2 1301 51 242 37 272 431 +776 4 2 1301 51 180 257 438 9 +777 4 2 1301 51 435 116 282 10 +778 4 2 1301 51 268 76 432 10 +779 4 2 1301 51 137 247 14 430 +780 4 2 1301 51 118 279 9 438 +781 4 2 1301 51 254 121 43 436 +782 4 2 1301 51 44 116 435 10 +783 4 2 1301 51 432 76 20 10 +784 4 2 1301 51 41 9 438 118 +785 4 2 1301 51 236 80 19 437 +786 4 2 1301 51 96 275 430 14 +787 4 2 1301 51 158 439 47 169 +788 4 2 1301 51 244 34 105 440 +789 4 2 1301 51 10 20 432 139 +790 4 2 1301 51 41 9 180 438 +791 4 2 1301 51 14 32 430 96 +792 4 2 1301 51 14 32 137 430 +793 4 2 1301 51 439 11 47 138 +794 4 2 1301 51 158 439 11 47 +795 4 2 1301 51 259 138 11 439 +796 4 2 1301 51 15 428 244 285 +797 4 2 1301 51 429 11 259 291 +798 4 2 1301 51 10 253 435 148 +799 4 2 1301 51 20 21 432 144 +800 4 2 1301 51 148 44 45 435 +801 4 2 1301 51 33 32 430 143 +802 4 2 1301 51 37 36 431 163 +803 4 2 1301 51 34 33 440 145 +804 4 2 1301 51 48 47 439 169 +805 4 2 1301 51 429 213 11 291 +806 4 2 1301 51 428 15 210 285 +807 4 2 1301 51 438 41 42 188 +808 4 2 1301 51 50 433 51 183 +809 4 2 1301 51 30 29 434 125 +810 4 2 1301 51 18 19 437 122 +811 4 2 1301 51 436 42 43 187 +812 4 2 1301 51 10 44 148 435 +813 4 2 1301 51 145 15 428 244 +814 4 2 1301 51 33 32 103 430 +815 4 2 1301 51 37 36 104 431 +816 4 2 1301 51 48 47 141 439 +817 4 2 1301 51 34 33 105 440 +818 4 2 1301 51 30 29 99 434 +819 4 2 1301 51 50 166 51 433 +820 4 2 1301 51 127 41 42 438 +821 4 2 1301 51 121 42 43 436 +822 4 2 1301 51 18 19 80 437 +823 4 2 1301 51 20 21 79 432 +824 4 2 1301 51 435 44 45 124 +825 4 2 1301 51 104 272 37 431 +826 4 2 1301 51 145 15 140 428 +827 4 2 1301 51 158 429 213 11 +828 4 2 1301 51 210 140 15 428 +829 4 2 1301 51 145 244 428 210 +830 4 2 1301 51 169 259 213 429 +831 4 2 1301 51 144 54 234 283 +832 4 2 1301 51 62 148 252 286 +833 4 2 1301 51 163 59 241 289 +834 4 2 1301 51 58 143 246 287 +835 4 2 1301 51 59 167 243 292 +836 4 2 1301 51 146 258 63 288 +837 4 2 1301 51 188 61 256 293 +838 4 2 1301 51 230 84 56 270 +839 4 2 1301 51 81 238 53 266 +840 4 2 1301 51 85 229 56 269 +841 4 2 1301 51 186 60 240 298 +842 4 2 1301 51 120 251 62 281 +843 4 2 1301 51 231 82 55 267 +844 4 2 1301 51 78 232 55 271 +845 4 2 1301 51 60 189 239 297 +846 4 2 1301 51 233 83 54 265 +847 4 2 1301 51 123 57 248 277 +848 4 2 1301 51 184 64 261 294 +849 4 2 1301 51 187 220 254 255 +850 4 2 1301 51 188 218 256 257 +851 4 2 1301 51 122 205 236 237 +852 4 2 1301 51 125 202 249 250 +853 4 2 1301 51 183 217 262 263 +854 4 2 1301 51 209 148 252 253 +855 4 2 1301 51 144 209 234 235 +856 4 2 1301 51 145 244 210 245 +857 4 2 1301 51 207 143 246 247 +858 4 2 1301 51 169 259 260 213 +859 4 2 1301 51 163 214 241 242 +860 4 2 1301 51 258 48 63 162 +861 4 2 1301 51 258 48 146 63 +862 4 2 1301 51 243 36 59 100 +863 4 2 1301 51 243 36 167 59 +864 4 2 1301 51 231 24 165 55 +865 4 2 1301 51 240 39 106 60 +866 4 2 1301 51 251 45 62 142 +867 4 2 1301 51 232 24 55 168 +868 4 2 1301 51 239 39 60 102 +869 4 2 1301 51 261 51 164 64 +870 4 2 1301 51 248 30 101 57 +871 4 2 1301 51 233 21 147 54 +872 4 2 1301 51 240 39 60 186 +873 4 2 1301 51 251 45 120 62 +874 4 2 1301 51 231 24 55 82 +875 4 2 1301 51 239 39 189 60 +876 4 2 1301 51 232 24 78 55 +877 4 2 1301 51 261 51 64 184 +878 4 2 1301 51 233 21 54 83 +879 4 2 1301 51 248 30 57 123 +880 4 2 1301 51 238 18 53 126 +881 4 2 1301 51 230 27 56 84 +882 4 2 1301 51 230 27 190 56 +883 4 2 1301 51 238 18 81 53 +884 4 2 1301 51 229 27 85 56 +885 4 2 1301 51 229 27 56 185 +886 4 2 1301 51 254 43 121 119 +887 4 2 1301 51 118 238 126 17 +888 4 2 1301 51 182 229 185 26 +889 4 2 1301 51 236 19 80 76 +890 4 2 1301 51 180 230 28 190 +891 4 2 1301 51 159 231 25 165 +892 4 2 1301 51 158 232 168 23 +893 4 2 1301 51 249 29 99 97 +894 4 2 1301 51 95 239 102 38 +895 4 2 1301 51 97 240 40 106 +896 4 2 1301 51 160 261 52 164 +897 4 2 1301 51 138 233 22 147 +898 4 2 1301 51 137 251 142 46 +899 4 2 1301 51 96 248 31 101 +900 4 2 1301 51 262 50 166 159 +901 4 2 1301 51 161 258 162 49 +902 4 2 1301 51 98 244 34 105 +903 4 2 1301 51 160 242 163 37 +904 4 2 1301 51 98 243 100 35 +905 4 2 1301 51 272 37 242 16 +906 4 2 1301 51 182 229 217 185 +907 4 2 1301 51 119 254 202 121 +908 4 2 1301 51 180 230 190 218 +909 4 2 1301 51 180 257 218 188 +910 4 2 1301 51 76 236 192 80 +911 4 2 1301 51 118 238 203 126 +912 4 2 1301 51 268 76 192 79 +913 4 2 1301 51 118 279 127 203 +914 4 2 1301 51 205 116 282 124 +915 4 2 1301 51 19 236 10 76 +916 4 2 1301 51 182 229 26 12 +917 4 2 1301 51 43 254 13 119 +918 4 2 1301 51 118 238 17 9 +919 4 2 1301 51 180 230 9 28 +920 4 2 1301 51 158 232 23 11 +921 4 2 1301 51 138 233 11 22 +922 4 2 1301 51 96 248 14 31 +923 4 2 1301 51 95 239 38 16 +924 4 2 1301 51 160 261 16 52 +925 4 2 1301 51 137 251 46 14 +926 4 2 1301 51 50 262 12 159 +927 4 2 1301 51 159 231 12 25 +928 4 2 1301 51 97 240 13 40 +929 4 2 1301 51 29 249 13 97 +930 4 2 1301 51 160 261 164 214 +931 4 2 1301 51 137 251 207 142 +932 4 2 1301 51 159 231 165 215 +933 4 2 1301 51 97 240 106 200 +934 4 2 1301 51 158 232 213 168 +935 4 2 1301 51 139 235 209 144 +936 4 2 1301 51 97 249 200 99 +937 4 2 1301 51 95 239 199 102 +938 4 2 1301 51 98 243 35 15 +939 4 2 1301 51 98 244 15 34 +940 4 2 1301 51 96 248 101 197 +941 4 2 1301 51 161 258 49 15 +942 4 2 1301 51 159 262 215 166 +943 4 2 1301 51 138 233 147 208 +944 4 2 1301 51 160 242 37 16 +945 4 2 1301 51 161 258 212 162 +946 4 2 1301 51 137 247 143 207 +947 4 2 1301 51 98 244 105 198 +948 4 2 1301 51 98 243 198 100 +949 4 2 1301 51 160 242 214 163 +950 4 2 1301 51 259 138 141 208 +951 4 2 1301 51 58 33 92 103 +952 4 2 1301 51 156 24 55 165 +953 4 2 1301 51 63 48 136 141 +954 4 2 1301 51 104 37 272 95 +955 4 2 1301 51 33 58 92 105 +956 4 2 1301 51 168 24 55 156 +957 4 2 1301 51 134 33 58 143 +958 4 2 1301 51 48 63 136 146 +959 4 2 1301 51 145 33 58 134 +960 4 2 1301 51 91 36 59 104 +961 4 2 1301 51 63 48 155 162 +962 4 2 1301 51 100 36 59 91 +963 4 2 1301 51 39 93 60 102 +964 4 2 1301 51 36 157 59 163 +965 4 2 1301 51 48 63 155 169 +966 4 2 1301 51 93 39 60 106 +967 4 2 1301 51 21 135 54 144 +968 4 2 1301 51 30 94 57 99 +969 4 2 1301 51 36 167 59 157 +970 4 2 1301 51 45 133 62 142 +971 4 2 1301 51 30 101 57 94 +972 4 2 1301 51 133 45 62 148 +973 4 2 1301 51 21 147 54 135 +974 4 2 1301 51 154 51 64 164 +975 4 2 1301 51 51 154 64 166 +976 4 2 1301 51 217 173 182 185 +977 4 2 1301 51 125 111 119 202 +978 4 2 1301 51 117 110 123 204 +979 4 2 1301 51 174 218 180 190 +980 4 2 1301 51 173 217 182 183 +981 4 2 1301 51 66 83 74 194 +982 4 2 1301 51 172 220 181 187 +983 4 2 1301 51 76 67 80 192 +984 4 2 1301 51 79 67 76 192 +985 4 2 1301 51 66 74 78 194 +986 4 2 1301 51 120 110 117 204 +987 4 2 1301 51 218 174 180 188 +988 4 2 1301 51 69 82 77 195 +989 4 2 1301 51 119 111 121 202 +990 4 2 1301 51 109 118 127 203 +991 4 2 1301 51 69 77 85 195 +992 4 2 1301 51 219 171 179 184 +993 4 2 1301 51 108 124 116 205 +994 4 2 1301 51 81 68 75 193 +995 4 2 1301 51 75 68 84 193 +996 4 2 1301 51 109 126 118 203 +997 4 2 1301 51 220 172 181 186 +998 4 2 1301 51 171 219 179 189 +999 4 2 1301 51 108 116 122 205 +1000 4 2 1301 51 210 145 132 428 +1001 4 2 1301 51 152 169 213 429 +1002 4 2 1301 51 95 272 104 199 +1003 4 2 1301 51 96 275 197 103 +1004 4 2 1301 51 45 62 114 120 +1005 4 2 1301 51 21 54 73 79 +1006 4 2 1301 51 18 113 53 126 +1007 4 2 1301 51 60 39 178 186 +1008 4 2 1301 51 39 60 178 189 +1009 4 2 1301 51 18 122 53 113 +1010 4 2 1301 51 62 45 114 124 +1011 4 2 1301 51 54 21 73 83 +1012 4 2 1301 51 24 71 55 82 +1013 4 2 1301 51 24 78 55 71 +1014 4 2 1301 51 51 64 175 183 +1015 4 2 1301 51 27 72 56 84 +1016 4 2 1301 51 64 51 175 184 +1017 4 2 1301 51 72 27 56 85 +1018 4 2 1301 51 42 115 61 121 +1019 4 2 1301 51 27 56 177 190 +1020 4 2 1301 51 56 27 177 185 +1021 4 2 1301 51 61 42 176 188 +1022 4 2 1301 51 115 42 61 127 +1023 4 2 1301 51 42 61 176 187 +1024 4 2 1301 51 70 18 53 81 +1025 4 2 1301 51 112 30 57 125 +1026 4 2 1301 51 123 30 57 112 +1027 4 2 1301 51 80 18 53 70 +1028 4 2 1301 51 131 139 148 209 +1029 4 2 1301 51 151 161 167 212 +1030 4 2 1301 51 88 97 106 200 +1031 4 2 1301 51 137 129 142 207 +1032 4 2 1301 51 150 160 164 214 +1033 4 2 1301 51 151 162 161 212 +1034 4 2 1301 51 143 129 137 207 +1035 4 2 1301 51 105 90 98 198 +1036 4 2 1301 51 98 90 100 198 +1037 4 2 1301 51 104 87 95 199 +1038 4 2 1301 51 88 99 97 200 +1039 4 2 1301 51 150 163 160 214 +1040 4 2 1301 51 159 153 166 215 +1041 4 2 1301 51 89 96 101 197 +1042 4 2 1301 51 131 144 139 209 +1043 4 2 1301 51 95 87 102 199 +1044 4 2 1301 51 130 138 147 208 +1045 4 2 1301 51 165 153 159 215 +1046 4 2 1301 51 89 103 96 197 +1047 4 2 1301 51 158 152 168 213 +1048 4 2 1301 51 210 140 132 146 +1049 4 2 1301 51 130 141 138 208 +1050 4 2 1301 51 95 37 272 16 +1051 4 2 1301 51 220 172 176 187 +1052 4 2 1301 51 124 108 114 205 +1053 4 2 1301 51 171 219 175 184 +1054 4 2 1301 51 115 109 127 203 +1055 4 2 1301 51 112 111 125 202 +1056 4 2 1301 51 218 174 177 190 +1057 4 2 1301 51 69 71 82 195 +1058 4 2 1301 51 110 204 112 123 +1059 4 2 1301 51 70 68 81 193 +1060 4 2 1301 51 173 217 177 185 +1061 4 2 1301 51 83 66 73 194 +1062 4 2 1301 51 68 72 84 193 +1063 4 2 1301 51 67 79 73 192 +1064 4 2 1301 51 72 69 85 195 +1065 4 2 1301 51 194 66 71 78 +1066 4 2 1301 51 67 192 70 80 +1067 4 2 1301 51 109 113 126 203 +1068 4 2 1301 51 219 171 178 189 +1069 4 2 1301 51 217 173 175 183 +1070 4 2 1301 51 205 108 113 122 +1071 4 2 1301 51 174 218 176 188 +1072 4 2 1301 51 110 120 114 204 +1073 4 2 1301 51 172 220 178 186 +1074 4 2 1301 51 111 115 121 202 +1075 4 2 1301 51 135 130 147 208 +1076 4 2 1301 51 133 131 148 209 +1077 4 2 1301 51 197 89 94 101 +1078 4 2 1301 51 93 88 106 200 +1079 4 2 1301 51 154 150 164 214 +1080 4 2 1301 51 129 133 142 207 +1081 4 2 1301 51 134 210 145 132 +1082 4 2 1301 51 212 151 157 167 +1083 4 2 1301 51 155 213 152 169 +1084 4 2 1301 51 153 154 166 215 +1085 4 2 1301 51 152 213 156 168 +1086 4 2 1301 51 90 198 91 100 +1087 4 2 1301 51 132 146 136 210 +1088 4 2 1301 51 91 87 104 199 +1089 4 2 1301 51 156 153 165 215 +1090 4 2 1301 51 87 93 102 199 +1091 4 2 1301 51 90 105 92 198 +1092 4 2 1301 51 103 89 92 197 +1093 4 2 1301 51 162 151 155 212 +1094 4 2 1301 51 88 94 99 200 +1095 4 2 1301 51 150 157 163 214 +1096 4 2 1301 51 134 129 143 207 +1097 4 2 1301 51 131 135 144 209 +1098 4 2 1301 51 141 130 136 208 +1099 4 2 1301 51 243 36 35 167 +1100 4 2 1301 51 258 48 49 146 +1101 4 2 1301 51 258 48 162 49 +1102 4 2 1301 51 243 36 100 35 +1103 4 2 1301 51 231 24 82 25 +1104 4 2 1301 51 240 39 186 40 +1105 4 2 1301 51 261 51 184 52 +1106 4 2 1301 51 248 30 123 31 +1107 4 2 1301 51 251 45 46 120 +1108 4 2 1301 51 233 21 83 22 +1109 4 2 1301 51 239 39 38 189 +1110 4 2 1301 51 232 24 23 78 +1111 4 2 1301 51 238 18 17 81 +1112 4 2 1301 51 230 27 28 190 +1113 4 2 1301 51 230 27 84 28 +1114 4 2 1301 51 238 18 126 17 +1115 4 2 1301 51 229 27 185 26 +1116 4 2 1301 51 229 27 26 85 +1117 4 2 1301 51 240 39 40 106 +1118 4 2 1301 51 261 51 52 164 +1119 4 2 1301 51 233 21 22 147 +1120 4 2 1301 51 251 45 142 46 +1121 4 2 1301 51 248 30 31 101 +1122 4 2 1301 51 239 39 102 38 +1123 4 2 1301 51 231 24 25 165 +1124 4 2 1301 51 232 24 168 23 +1125 4 2 1301 51 230 56 190 218 +1126 4 2 1301 51 255 61 187 220 +1127 4 2 1301 51 53 238 126 203 +1128 4 2 1301 51 56 229 185 217 +1129 4 2 1301 51 61 256 203 127 +1130 4 2 1301 51 231 55 165 215 +1131 4 2 1301 51 233 54 147 208 +1132 4 2 1301 51 237 53 122 205 +1133 4 2 1301 51 64 261 214 164 +1134 4 2 1301 51 55 232 168 213 +1135 4 2 1301 51 60 240 200 106 +1136 4 2 1301 51 62 251 142 207 +1137 4 2 1301 51 239 60 199 102 +1138 4 2 1301 51 57 248 197 101 +1139 4 2 1301 51 252 62 205 124 +1140 4 2 1301 51 54 234 192 79 +1141 4 2 1301 51 250 57 125 202 +1142 4 2 1301 51 263 64 183 217 +1143 4 2 1301 51 63 258 162 212 +1144 4 2 1301 51 246 58 197 103 +1145 4 2 1301 51 210 145 245 58 +1146 4 2 1301 51 59 241 199 104 +1147 4 2 1301 51 243 59 198 100 +1148 4 2 1301 51 260 169 213 63 +1149 4 2 1301 51 11 233 83 22 +1150 4 2 1301 51 261 16 52 184 +1151 4 2 1301 51 248 14 31 123 +1152 4 2 1301 51 16 239 38 189 +1153 4 2 1301 51 232 11 78 23 +1154 4 2 1301 51 12 231 82 25 +1155 4 2 1301 51 29 249 125 13 +1156 4 2 1301 51 240 13 40 186 +1157 4 2 1301 51 50 262 183 12 +1158 4 2 1301 51 251 14 120 46 +1159 4 2 1301 51 43 254 187 13 +1160 4 2 1301 51 19 236 122 10 +1161 4 2 1301 51 229 12 85 26 +1162 4 2 1301 51 238 9 81 17 +1163 4 2 1301 51 9 230 84 28 +1164 4 2 1301 51 122 10 236 278 +1165 4 2 1301 51 229 85 12 269 +1166 4 2 1301 51 187 13 254 296 +1167 4 2 1301 51 238 81 9 266 +1168 4 2 1301 51 84 230 9 270 +1169 4 2 1301 51 83 233 11 265 +1170 4 2 1301 51 14 123 248 277 +1171 4 2 1301 51 16 184 261 294 +1172 4 2 1301 51 232 78 11 271 +1173 4 2 1301 51 189 16 239 297 +1174 4 2 1301 51 13 186 240 298 +1175 4 2 1301 51 82 231 12 267 +1176 4 2 1301 51 183 12 262 295 +1177 4 2 1301 51 125 13 249 280 +1178 4 2 1301 51 251 120 14 281 +1179 4 2 1301 51 258 15 146 49 +1180 4 2 1301 51 15 243 35 167 +1181 4 2 1301 51 145 15 244 34 +1182 4 2 1301 51 23 11 3 158 +1183 4 2 1301 51 14 32 96 6 +1184 4 2 1301 51 15 7 34 140 +1185 4 2 1301 51 3 47 158 11 +1186 4 2 1301 51 3 138 47 11 +1187 4 2 1301 51 7 15 34 98 +1188 4 2 1301 51 15 49 7 140 +1189 4 2 1301 51 14 32 6 137 +1190 4 2 1301 51 137 251 14 207 +1191 4 2 1301 51 25 12 159 4 +1192 4 2 1301 51 15 35 98 7 +1193 4 2 1301 51 16 37 8 95 +1194 4 2 1301 51 137 6 14 46 +1195 4 2 1301 51 158 232 11 213 +1196 4 2 1301 51 95 8 16 38 +1197 4 2 1301 51 22 11 138 3 +1198 4 2 1301 51 15 49 161 7 +1199 4 2 1301 51 14 31 6 96 +1200 4 2 1301 51 159 4 12 50 +1201 4 2 1301 51 16 37 160 8 +1202 4 2 1301 51 20 10 2 139 +1203 4 2 1301 51 15 35 7 161 +1204 4 2 1301 51 44 10 139 2 +1205 4 2 1301 51 96 248 197 14 +1206 4 2 1301 51 16 52 8 160 +1207 4 2 1301 51 13 29 97 5 +1208 4 2 1301 51 95 239 16 199 +1209 4 2 1301 51 13 40 5 97 +1210 4 2 1301 51 159 231 215 12 +1211 4 2 1301 51 159 262 12 215 +1212 4 2 1301 51 160 261 214 16 +1213 4 2 1301 51 138 233 208 11 +1214 4 2 1301 51 139 235 10 209 +1215 4 2 1301 51 97 240 200 13 +1216 4 2 1301 51 97 249 13 200 +1217 4 2 1301 51 98 243 15 198 +1218 4 2 1301 51 98 244 198 15 +1219 4 2 1301 51 137 247 207 14 +1220 4 2 1301 51 161 258 15 212 +1221 4 2 1301 51 160 242 16 214 +1222 4 2 1301 51 259 138 208 11 +1223 4 2 1301 51 182 229 12 217 +1224 4 2 1301 51 76 236 10 192 +1225 4 2 1301 51 180 230 218 9 +1226 4 2 1301 51 180 257 9 218 +1227 4 2 1301 51 119 254 13 202 +1228 4 2 1301 51 118 238 9 203 +1229 4 2 1301 51 167 15 243 292 +1230 4 2 1301 51 258 146 15 288 +1231 4 2 1301 51 44 10 2 116 +1232 4 2 1301 51 19 10 116 2 +1233 4 2 1301 51 8 16 38 179 +1234 4 2 1301 51 6 14 46 117 +1235 4 2 1301 51 23 11 74 3 +1236 4 2 1301 51 22 11 3 74 +1237 4 2 1301 51 16 52 179 8 +1238 4 2 1301 51 13 40 181 5 +1239 4 2 1301 51 17 9 1 118 +1240 4 2 1301 51 25 12 4 77 +1241 4 2 1301 51 20 10 76 2 +1242 4 2 1301 51 4 12 50 182 +1243 4 2 1301 51 12 26 4 77 +1244 4 2 1301 51 14 31 117 6 +1245 4 2 1301 51 75 1 9 28 +1246 4 2 1301 51 114 62 124 205 +1247 4 2 1301 51 119 5 13 43 +1248 4 2 1301 51 12 26 182 4 +1249 4 2 1301 51 41 9 1 180 +1250 4 2 1301 51 1 9 28 180 +1251 4 2 1301 51 41 9 118 1 +1252 4 2 1301 51 54 73 79 192 +1253 4 2 1301 51 5 13 43 181 +1254 4 2 1301 51 17 9 75 1 +1255 4 2 1301 51 19 10 2 76 +1256 4 2 1301 51 13 29 5 119 +1257 4 2 1301 51 71 55 82 195 +1258 4 2 1301 51 175 64 184 219 +1259 4 2 1301 51 56 177 190 218 +1260 4 2 1301 51 57 112 125 202 +1261 4 2 1301 51 61 220 176 187 +1262 4 2 1301 51 113 53 126 203 +1263 4 2 1301 51 55 194 71 78 +1264 4 2 1301 51 62 114 120 204 +1265 4 2 1301 51 193 56 72 84 +1266 4 2 1301 51 64 175 183 217 +1267 4 2 1301 51 73 54 83 194 +1268 4 2 1301 51 53 70 81 193 +1269 4 2 1301 51 61 203 115 127 +1270 4 2 1301 51 217 56 177 185 +1271 4 2 1301 51 55 156 165 215 +1272 4 2 1301 51 204 57 112 123 +1273 4 2 1301 51 60 219 178 189 +1274 4 2 1301 51 178 60 186 220 +1275 4 2 1301 51 92 58 103 197 +1276 4 2 1301 51 56 195 72 85 +1277 4 2 1301 51 213 55 156 168 +1278 4 2 1301 51 62 133 148 209 +1279 4 2 1301 51 134 210 58 145 +1280 4 2 1301 51 155 63 162 212 +1281 4 2 1301 51 202 61 115 121 +1282 4 2 1301 51 147 54 135 208 +1283 4 2 1301 51 53 205 113 122 +1284 4 2 1301 51 59 91 104 199 +1285 4 2 1301 51 218 61 176 188 +1286 4 2 1301 51 198 59 91 100 +1287 4 2 1301 51 64 214 154 164 +1288 4 2 1301 51 60 200 93 106 +1289 4 2 1301 51 192 53 70 80 +1290 4 2 1301 51 133 62 142 207 +1291 4 2 1301 51 58 92 105 198 +1292 4 2 1301 51 63 141 136 208 +1293 4 2 1301 51 146 63 136 210 +1294 4 2 1301 51 94 57 99 200 +1295 4 2 1301 51 58 134 143 207 +1296 4 2 1301 51 155 213 169 63 +1297 4 2 1301 51 157 59 163 214 +1298 4 2 1301 51 199 60 93 102 +1299 4 2 1301 51 59 212 157 167 +1300 4 2 1301 51 57 197 94 101 +1301 4 2 1301 51 135 54 144 209 +1302 4 2 1301 51 215 64 154 166 +1303 4 2 1301 51 10 253 148 209 +1304 4 2 1301 51 95 272 199 16 +1305 4 2 1301 51 96 275 14 197 +1306 4 2 1301 51 192 76 268 10 +1307 4 2 1301 51 282 116 205 10 +1308 4 2 1301 51 118 279 203 9 +1309 4 2 1301 51 219 64 184 294 +1310 4 2 1301 51 55 82 195 267 +1311 4 2 1301 51 84 193 56 270 +1312 4 2 1301 51 62 204 120 281 +1313 4 2 1301 51 194 78 55 271 +1314 4 2 1301 51 81 53 193 266 +1315 4 2 1301 51 60 219 189 297 +1316 4 2 1301 51 195 85 56 269 +1317 4 2 1301 51 194 54 83 265 +1318 4 2 1301 51 123 204 57 277 +1319 4 2 1301 51 220 60 186 298 +1320 4 2 1301 51 121 202 61 276 +1321 4 2 1301 51 218 61 188 293 +1322 4 2 1301 51 80 192 53 264 +1323 4 2 1301 51 63 141 208 284 +1324 4 2 1301 51 148 62 209 286 +1325 4 2 1301 51 146 63 210 288 +1326 4 2 1301 51 57 99 200 273 +1327 4 2 1301 51 58 198 105 274 +1328 4 2 1301 51 163 214 59 289 +1329 4 2 1301 51 212 167 59 292 +1330 4 2 1301 51 143 58 207 287 +1331 4 2 1301 51 166 215 64 290 +1332 4 2 1301 51 54 144 209 283 +1333 4 2 1301 51 83 11 194 265 +1334 4 2 1301 51 204 123 14 277 +1335 4 2 1301 51 11 78 194 271 +1336 4 2 1301 51 13 125 202 280 +1337 4 2 1301 51 217 12 183 295 +1338 4 2 1301 51 16 219 184 294 +1339 4 2 1301 51 82 12 195 267 +1340 4 2 1301 51 204 14 120 281 +1341 4 2 1301 51 220 13 187 296 +1342 4 2 1301 51 85 195 12 269 +1343 4 2 1301 51 122 205 10 278 +1344 4 2 1301 51 219 16 189 297 +1345 4 2 1301 51 13 220 186 298 +1346 4 2 1301 51 9 81 193 266 +1347 4 2 1301 51 193 84 9 270 +1348 4 2 1301 51 167 212 15 292 +1349 4 2 1301 51 15 146 210 288 +1350 4 2 1301 51 216 174 177 218 +1351 4 2 1301 51 217 173 177 216 +1352 4 2 1301 51 201 111 112 202 +1353 4 2 1301 51 204 110 112 201 +1354 4 2 1301 51 66 194 71 191 +1355 4 2 1301 51 173 217 175 216 +1356 4 2 1301 51 69 191 71 195 +1357 4 2 1301 51 73 66 191 194 +1358 4 2 1301 51 67 73 191 192 +1359 4 2 1301 51 174 216 176 218 +1360 4 2 1301 51 219 171 175 216 +1361 4 2 1301 51 192 67 70 191 +1362 4 2 1301 51 114 108 201 205 +1363 4 2 1301 51 191 68 70 193 +1364 4 2 1301 51 110 114 201 204 +1365 4 2 1301 51 201 109 115 203 +1366 4 2 1301 51 111 201 115 202 +1367 4 2 1301 51 216 172 176 220 +1368 4 2 1301 51 191 69 72 195 +1369 4 2 1301 51 68 191 72 193 +1370 4 2 1301 51 113 109 201 203 +1371 4 2 1301 51 108 205 113 201 +1372 4 2 1301 51 171 219 178 216 +1373 4 2 1301 51 172 216 178 220 +1374 4 2 1301 51 131 133 206 209 +1375 4 2 1301 51 133 129 206 207 +1376 4 2 1301 51 211 150 154 214 +1377 4 2 1301 51 129 134 206 207 +1378 4 2 1301 51 153 211 154 215 +1379 4 2 1301 51 157 150 211 214 +1380 4 2 1301 51 151 212 157 211 +1381 4 2 1301 51 134 210 132 206 +1382 4 2 1301 51 94 88 196 200 +1383 4 2 1301 51 196 87 91 199 +1384 4 2 1301 51 155 151 211 212 +1385 4 2 1301 51 155 213 211 152 +1386 4 2 1301 51 135 131 206 209 +1387 4 2 1301 51 198 90 91 196 +1388 4 2 1301 51 89 197 94 196 +1389 4 2 1301 51 196 88 93 200 +1390 4 2 1301 51 130 135 206 208 +1391 4 2 1301 51 153 156 211 215 +1392 4 2 1301 51 87 196 93 199 +1393 4 2 1301 51 213 152 156 211 +1394 4 2 1301 51 90 92 196 198 +1395 4 2 1301 51 92 89 196 197 +1396 4 2 1301 51 132 136 206 210 +1397 4 2 1301 51 136 130 206 208 +1398 4 2 1301 51 43 13 187 181 +1399 4 2 1301 51 16 52 184 179 +1400 4 2 1301 51 14 31 123 117 +1401 4 2 1301 51 22 11 74 83 +1402 4 2 1301 51 19 10 122 116 +1403 4 2 1301 51 12 77 85 26 +1404 4 2 1301 51 23 11 78 74 +1405 4 2 1301 51 38 16 189 179 +1406 4 2 1301 51 13 29 119 125 +1407 4 2 1301 51 17 75 9 81 +1408 4 2 1301 51 25 12 77 82 +1409 4 2 1301 51 50 12 183 182 +1410 4 2 1301 51 75 9 84 28 +1411 4 2 1301 51 13 40 186 181 +1412 4 2 1301 51 14 120 46 117 +1413 4 2 1301 51 49 140 15 146 +1414 4 2 1301 51 15 35 161 167 +1415 4 2 1301 51 145 15 34 140 +1416 4 2 1301 51 10 148 44 139 +1417 4 2 1301 51 210 140 146 15 +1418 4 2 1301 51 161 15 167 212 +1419 4 2 1301 51 139 10 148 209 +1420 4 2 1301 51 14 117 123 204 +1421 4 2 1301 51 11 74 83 194 +1422 4 2 1301 51 74 11 78 194 +1423 4 2 1301 51 220 13 181 187 +1424 4 2 1301 51 16 179 184 219 +1425 4 2 1301 51 13 125 119 202 +1426 4 2 1301 51 116 10 122 205 +1427 4 2 1301 51 195 12 77 85 +1428 4 2 1301 51 182 12 183 217 +1429 4 2 1301 51 82 12 77 195 +1430 4 2 1301 51 117 14 120 204 +1431 4 2 1301 51 179 16 189 219 +1432 4 2 1301 51 9 81 75 193 +1433 4 2 1301 51 13 220 181 186 +1434 4 2 1301 51 9 193 75 84 +1435 4 2 1301 51 216 170 173 177 +1436 4 2 1301 51 170 216 174 177 +1437 4 2 1301 51 107 111 112 201 +1438 4 2 1301 51 170 216 173 175 +1439 4 2 1301 51 110 107 112 201 +1440 4 2 1301 51 65 66 71 191 +1441 4 2 1301 51 65 73 66 191 +1442 4 2 1301 51 216 170 174 176 +1443 4 2 1301 51 73 65 67 191 +1444 4 2 1301 51 111 107 115 201 +1445 4 2 1301 51 114 107 110 201 +1446 4 2 1301 51 67 65 70 191 +1447 4 2 1301 51 191 65 69 71 +1448 4 2 1301 51 216 170 171 175 +1449 4 2 1301 51 65 191 68 70 +1450 4 2 1301 51 107 109 115 201 +1451 4 2 1301 51 65 191 69 72 +1452 4 2 1301 51 107 114 108 201 +1453 4 2 1301 51 170 216 172 176 +1454 4 2 1301 51 191 65 68 72 +1455 4 2 1301 51 107 113 109 201 +1456 4 2 1301 51 107 108 113 201 +1457 4 2 1301 51 170 216 171 178 +1458 4 2 1301 51 216 170 172 178 +1459 4 2 1301 51 129 128 133 206 +1460 4 2 1301 51 128 131 133 206 +1461 4 2 1301 51 128 129 134 206 +1462 4 2 1301 51 149 150 154 211 +1463 4 2 1301 51 149 157 150 211 +1464 4 2 1301 51 149 151 157 211 +1465 4 2 1301 51 128 135 131 206 +1466 4 2 1301 51 149 155 151 211 +1467 4 2 1301 51 153 149 154 211 +1468 4 2 1301 51 86 94 88 196 +1469 4 2 1301 51 86 87 91 196 +1470 4 2 1301 51 90 86 91 196 +1471 4 2 1301 51 132 128 134 206 +1472 4 2 1301 51 86 88 93 196 +1473 4 2 1301 51 155 149 152 211 +1474 4 2 1301 51 87 86 93 196 +1475 4 2 1301 51 86 89 94 196 +1476 4 2 1301 51 149 153 156 211 +1477 4 2 1301 51 92 86 90 196 +1478 4 2 1301 51 152 149 156 211 +1479 4 2 1301 51 86 92 89 196 +1480 4 2 1301 51 128 130 135 206 +1481 4 2 1301 51 136 128 132 206 +1482 4 2 1301 51 128 136 130 206 +1483 4 2 1301 51 156 213 211 215 +1484 4 2 1301 51 196 93 199 200 +1485 4 2 1301 51 135 206 208 209 +1486 4 2 1301 51 206 136 208 210 +1487 4 2 1301 51 55 213 156 215 +1488 4 2 1301 51 58 92 196 197 +1489 4 2 1301 51 92 58 196 198 +1490 4 2 1301 51 134 58 206 207 +1491 4 2 1301 51 134 210 206 58 +1492 4 2 1301 51 200 60 93 199 +1493 4 2 1301 51 136 63 208 210 +1494 4 2 1301 51 59 196 91 199 +1495 4 2 1301 51 59 198 91 196 +1496 4 2 1301 51 197 94 196 200 +1497 4 2 1301 51 54 135 208 209 +1498 4 2 1301 51 63 155 211 212 +1499 4 2 1301 51 155 213 63 211 +1500 4 2 1301 51 197 57 94 200 +1501 4 2 1301 51 133 62 206 209 +1502 4 2 1301 51 62 133 206 207 +1503 4 2 1301 51 154 211 214 215 +1504 4 2 1301 51 59 157 211 214 +1505 4 2 1301 51 212 59 157 211 +1506 4 2 1301 51 64 215 154 214 +1507 4 2 1301 51 73 54 191 192 +1508 4 2 1301 51 54 73 191 194 +1509 4 2 1301 51 191 55 71 195 +1510 4 2 1301 51 194 55 71 191 +1511 4 2 1301 51 114 62 201 204 +1512 4 2 1301 51 62 114 201 205 +1513 4 2 1301 51 191 72 193 195 +1514 4 2 1301 51 175 64 216 217 +1515 4 2 1301 51 64 175 216 219 +1516 4 2 1301 51 56 216 177 218 +1517 4 2 1301 51 56 217 177 216 +1518 4 2 1301 51 205 113 201 203 +1519 4 2 1301 51 205 53 113 203 +1520 4 2 1301 51 56 193 72 195 +1521 4 2 1301 51 219 178 216 220 +1522 4 2 1301 51 219 60 178 220 +1523 4 2 1301 51 57 201 112 202 +1524 4 2 1301 51 57 204 112 201 +1525 4 2 1301 51 216 176 218 220 +1526 4 2 1301 51 201 115 202 203 +1527 4 2 1301 51 70 192 191 193 +1528 4 2 1301 51 61 218 176 220 +1529 4 2 1301 51 203 61 115 202 +1530 4 2 1301 51 53 192 70 193 +1531 4 2 1301 51 436 276 254 121 +1532 4 2 1301 51 437 264 236 80 +1533 4 2 1301 51 439 284 259 141 +1534 4 2 1301 51 99 249 200 273 +1535 4 2 1301 51 252 124 205 282 +1536 4 2 1301 51 166 262 215 290 +1537 4 2 1301 51 79 234 192 268 +1538 4 2 1301 51 440 274 105 244 +1539 4 2 1301 51 252 148 209 286 +1540 4 2 1301 51 144 234 209 283 +1541 4 2 1301 51 125 249 202 280 +1542 4 2 1301 51 183 262 217 295 +1543 4 2 1301 51 152 429 158 169 +1544 4 2 1301 51 145 132 428 140 +1545 4 2 1301 51 121 254 202 276 +1546 4 2 1301 51 127 256 203 279 +1547 4 2 1301 51 246 103 197 275 +1548 4 2 1301 51 104 241 199 272 +1549 4 2 1301 51 80 236 192 264 +1550 4 2 1301 51 187 254 220 296 +1551 4 2 1301 51 188 256 218 293 +1552 4 2 1301 51 141 259 208 284 +1553 4 2 1301 51 244 105 198 274 +1554 4 2 1301 51 429 259 213 291 +1555 4 2 1301 51 246 143 207 287 +1556 4 2 1301 51 122 236 205 278 +1557 4 2 1301 51 163 241 214 289 +1558 4 2 1301 51 244 428 210 285 +1559 4 2 709 52 451 461 477 454 +1560 4 2 709 52 451 475 454 477 +1561 4 2 709 52 473 478 208 456 +1562 4 2 709 52 451 475 477 443 +1563 4 2 709 52 451 475 198 454 +1564 4 2 709 52 259 260 462 284 +1565 4 2 709 52 471 473 456 478 +1566 4 2 709 52 247 246 457 275 +1567 4 2 709 52 241 242 458 272 +1568 4 2 709 52 253 252 480 282 +1569 4 2 709 52 245 244 461 274 +1570 4 2 709 52 236 237 476 264 +1571 4 2 709 52 256 257 469 279 +1572 4 2 709 52 471 478 456 213 +1573 4 2 709 52 465 480 452 455 +1574 4 2 709 52 475 477 443 460 +1575 4 2 709 52 451 475 443 198 +1576 4 2 709 52 471 473 478 448 +1577 4 2 709 52 471 473 194 456 +1578 4 2 709 52 452 480 209 455 +1579 4 2 709 52 442 476 465 205 +1580 4 2 709 52 460 475 212 443 +1581 4 2 709 52 233 456 265 473 +1582 4 2 709 52 249 250 453 273 +1583 4 2 709 52 478 259 456 291 +1584 4 2 709 52 479 263 290 262 +1585 4 2 709 52 254 255 468 276 +1586 4 2 709 52 205 480 465 455 +1587 4 2 709 52 470 472 479 444 +1588 4 2 709 52 445 463 450 466 +1589 4 2 709 52 235 452 234 268 +1590 4 2 709 52 455 442 465 205 +1591 4 2 709 52 208 478 259 456 +1592 4 2 709 52 208 456 233 473 +1593 4 2 709 52 473 478 448 208 +1594 4 2 709 52 447 474 220 468 +1595 4 2 709 52 475 477 15 454 +1596 4 2 709 52 471 478 213 448 +1597 4 2 709 52 447 453 468 202 +1598 4 2 709 52 444 472 479 215 +1599 4 2 709 52 470 472 12 479 +1600 4 2 709 52 265 456 194 473 +1601 4 2 709 52 291 456 478 213 +1602 4 2 709 52 452 480 465 10 +1603 4 2 709 52 470 444 479 217 +1604 4 2 709 52 471 473 448 194 +1605 4 2 709 52 455 442 452 465 +1606 4 2 709 52 472 449 444 470 +1607 4 2 709 52 475 477 460 15 +1608 4 2 709 52 451 461 210 477 +1609 4 2 709 52 445 463 204 450 +1610 4 2 709 52 463 450 466 207 +1611 4 2 709 52 444 467 446 443 +1612 4 2 709 52 200 447 453 468 +1613 4 2 709 52 470 444 217 449 +1614 4 2 709 52 445 463 466 14 +1615 4 2 709 52 452 465 442 192 +1616 4 2 709 52 449 441 444 447 +1617 4 2 709 52 455 442 450 452 +1618 4 2 709 52 441 446 443 444 +1619 4 2 709 52 63 462 260 284 +1620 4 2 709 52 467 219 444 446 +1621 4 2 709 52 455 282 205 480 +1622 4 2 709 52 448 441 443 444 +1623 4 2 709 52 441 449 444 448 +1624 4 2 709 52 477 15 454 244 +1625 4 2 709 52 199 446 467 443 +1626 4 2 709 52 461 58 245 274 +1627 4 2 709 52 448 441 442 450 +1628 4 2 709 52 455 442 205 450 +1629 4 2 709 52 444 467 214 464 +1630 4 2 709 52 447 441 444 446 +1631 4 2 709 52 441 451 445 450 +1632 4 2 709 52 53 476 237 264 +1633 4 2 709 52 441 449 442 447 +1634 4 2 709 52 472 449 470 195 +1635 4 2 709 52 447 474 468 200 +1636 4 2 709 52 196 441 443 451 +1637 4 2 709 52 443 460 477 210 +1638 4 2 709 52 452 450 448 442 +1639 4 2 709 52 472 449 448 444 +1640 4 2 709 52 10 192 465 452 +1641 4 2 709 52 11 213 471 456 +1642 4 2 709 52 12 479 472 215 +1643 4 2 709 52 9 193 481 459 +1644 4 2 709 52 54 473 233 265 +1645 4 2 709 52 197 451 466 445 +1646 4 2 709 52 217 12 479 470 +1647 4 2 709 52 442 476 192 465 +1648 4 2 709 52 449 441 442 448 +1649 4 2 709 52 202 13 453 468 +1650 4 2 709 52 209 480 452 10 +1651 4 2 709 52 466 450 445 451 +1652 4 2 709 52 452 234 54 283 +1653 4 2 709 52 465 480 205 10 +1654 4 2 709 52 194 11 471 456 +1655 4 2 709 52 467 219 464 444 +1656 4 2 709 52 16 214 467 464 +1657 4 2 709 52 207 14 466 463 +1658 4 2 709 52 460 475 15 212 +1659 4 2 709 52 254 255 220 468 +1660 4 2 709 52 235 452 209 234 +1661 4 2 709 52 13 220 474 468 +1662 4 2 709 52 61 468 255 276 +1663 4 2 709 52 444 467 443 214 +1664 4 2 709 52 479 263 262 217 +1665 4 2 709 52 57 453 250 273 +1666 4 2 709 52 249 250 202 453 +1667 4 2 709 52 479 263 64 290 +1668 4 2 709 52 470 472 195 12 +1669 4 2 709 52 198 15 454 475 +1670 4 2 709 52 196 441 446 443 +1671 4 2 709 52 9 218 469 481 +1672 4 2 709 52 477 443 210 451 +1673 4 2 709 52 259 260 213 462 +1674 4 2 709 52 247 246 207 457 +1675 4 2 709 52 253 252 209 480 +1676 4 2 709 52 241 242 214 458 +1677 4 2 709 52 451 196 198 443 +1678 4 2 709 52 16 467 214 458 +1679 4 2 709 52 14 207 466 457 +1680 4 2 709 52 15 210 477 460 +1681 4 2 709 52 196 441 451 445 +1682 4 2 709 52 256 257 218 469 +1683 4 2 709 52 236 237 205 476 +1684 4 2 709 52 452 450 455 209 +1685 4 2 709 52 211 460 443 448 +1686 4 2 709 52 216 449 444 447 +1687 4 2 709 52 451 441 443 448 +1688 4 2 709 52 245 244 210 461 +1689 4 2 709 52 442 476 53 192 +1690 4 2 709 52 53 193 459 442 +1691 4 2 709 52 474 240 60 298 +1692 4 2 709 52 203 9 469 481 +1693 4 2 709 52 59 212 475 443 +1694 4 2 709 52 467 219 16 464 +1695 4 2 709 52 448 441 450 451 +1696 4 2 709 52 466 445 14 197 +1697 4 2 709 52 58 466 197 451 +1698 4 2 709 52 447 474 446 220 +1699 4 2 709 52 201 450 441 445 +1700 4 2 709 52 446 467 16 199 +1701 4 2 709 52 467 219 446 16 +1702 4 2 709 52 252 455 62 286 +1703 4 2 709 52 445 463 14 204 +1704 4 2 709 52 211 448 443 444 +1705 4 2 709 52 200 447 445 453 +1706 4 2 709 52 447 453 202 445 +1707 4 2 709 52 203 9 481 459 +1708 4 2 709 52 442 476 205 53 +1709 4 2 709 52 447 201 441 445 +1710 4 2 709 52 200 441 445 447 +1711 4 2 709 52 219 64 464 444 +1712 4 2 709 52 13 200 453 468 +1713 4 2 709 52 218 481 56 449 +1714 4 2 709 52 198 451 461 58 +1715 4 2 709 52 62 204 463 450 +1716 4 2 709 52 450 201 441 442 +1717 4 2 709 52 193 56 481 449 +1718 4 2 709 52 442 53 203 459 +1719 4 2 709 52 464 261 64 294 +1720 4 2 709 52 460 63 258 288 +1721 4 2 709 52 216 447 444 446 +1722 4 2 709 52 239 446 60 297 +1723 4 2 709 52 200 13 474 468 +1724 4 2 709 52 246 466 58 287 +1725 4 2 709 52 463 62 251 281 +1726 4 2 709 52 467 241 59 289 +1727 4 2 709 52 201 447 441 442 +1728 4 2 709 52 211 460 212 443 +1729 4 2 709 52 200 441 447 446 +1730 4 2 709 52 191 452 448 442 +1731 4 2 709 52 191 449 442 448 +1732 4 2 709 52 445 248 57 277 +1733 4 2 709 52 452 450 209 448 +1734 4 2 709 52 460 443 448 210 +1735 4 2 709 52 466 206 450 451 +1736 4 2 709 52 216 449 217 444 +1737 4 2 709 52 203 449 447 442 +1738 4 2 709 52 56 195 470 449 +1739 4 2 709 52 479 64 217 444 +1740 4 2 709 52 9 459 238 266 +1741 4 2 709 52 459 53 238 266 +1742 4 2 709 52 243 475 59 292 +1743 4 2 709 52 265 456 233 11 +1744 4 2 709 52 62 209 455 450 +1745 4 2 709 52 456 259 11 291 +1746 4 2 709 52 470 56 229 269 +1747 4 2 709 52 196 446 199 443 +1748 4 2 709 52 471 55 232 271 +1749 4 2 709 52 9 469 257 279 +1750 4 2 709 52 55 472 231 267 +1751 4 2 709 52 479 64 444 215 +1752 4 2 709 52 63 478 213 462 +1753 4 2 709 52 198 59 475 443 +1754 4 2 709 52 200 57 453 445 +1755 4 2 709 52 472 449 195 448 +1756 4 2 709 52 270 481 230 9 +1757 4 2 709 52 201 450 205 442 +1758 4 2 709 52 444 472 215 448 +1759 4 2 709 52 196 451 197 445 +1760 4 2 709 52 214 59 467 443 +1761 4 2 709 52 191 449 193 442 +1762 4 2 709 52 447 474 200 446 +1763 4 2 709 52 217 56 470 449 +1764 4 2 709 52 61 468 447 220 +1765 4 2 709 52 60 200 474 446 +1766 4 2 709 52 480 10 253 282 +1767 4 2 709 52 481 56 270 230 +1768 4 2 709 52 467 59 199 443 +1769 4 2 709 52 449 216 218 447 +1770 4 2 709 52 207 62 463 450 +1771 4 2 709 52 64 214 464 444 +1772 4 2 709 52 206 448 450 451 +1773 4 2 709 52 210 443 448 451 +1774 4 2 709 52 450 201 204 445 +1775 4 2 709 52 444 211 214 443 +1776 4 2 709 52 451 461 58 210 +1777 4 2 709 52 254 13 468 296 +1778 4 2 709 52 457 14 247 275 +1779 4 2 709 52 447 468 61 202 +1780 4 2 709 52 16 458 242 272 +1781 4 2 709 52 446 216 219 444 +1782 4 2 709 52 11 471 232 271 +1783 4 2 709 52 203 481 449 193 +1784 4 2 709 52 220 60 474 446 +1785 4 2 709 52 479 262 12 295 +1786 4 2 709 52 453 249 13 280 +1787 4 2 709 52 480 252 455 282 +1788 4 2 709 52 203 481 218 449 +1789 4 2 709 52 14 463 251 281 +1790 4 2 709 52 261 464 16 294 +1791 4 2 709 52 12 470 229 269 +1792 4 2 709 52 203 449 442 193 +1793 4 2 709 52 57 445 202 453 +1794 4 2 709 52 466 206 207 450 +1795 4 2 709 52 10 209 235 452 +1796 4 2 709 52 218 56 481 230 +1797 4 2 709 52 215 12 231 472 +1798 4 2 709 52 15 212 258 460 +1799 4 2 709 52 192 236 10 465 +1800 4 2 709 52 240 200 13 474 +1801 4 2 709 52 268 452 192 10 +1802 4 2 709 52 465 236 10 278 +1803 4 2 709 52 270 481 9 193 +1804 4 2 709 52 9 193 459 266 +1805 4 2 709 52 55 215 231 472 +1806 4 2 709 52 194 456 265 11 +1807 4 2 709 52 13 468 296 220 +1808 4 2 709 52 198 243 15 475 +1809 4 2 709 52 479 12 217 295 +1810 4 2 709 52 13 202 453 280 +1811 4 2 709 52 12 217 229 470 +1812 4 2 709 52 61 220 255 468 +1813 4 2 709 52 475 243 15 292 +1814 4 2 709 52 272 467 199 16 +1815 4 2 709 52 275 466 14 197 +1816 4 2 709 52 291 456 213 11 +1817 4 2 709 52 57 202 250 453 +1818 4 2 709 52 479 263 217 64 +1819 4 2 709 52 207 14 247 457 +1820 4 2 709 52 479 12 262 215 +1821 4 2 709 52 254 468 13 202 +1822 4 2 709 52 16 214 242 458 +1823 4 2 709 52 200 249 13 453 +1824 4 2 709 52 213 55 232 471 +1825 4 2 709 52 467 59 241 199 +1826 4 2 709 52 246 58 466 197 +1827 4 2 709 52 477 15 244 285 +1828 4 2 709 52 240 474 13 298 +1829 4 2 709 52 243 198 59 475 +1830 4 2 709 52 217 56 229 470 +1831 4 2 709 52 450 62 205 455 +1832 4 2 709 52 471 11 194 271 +1833 4 2 709 52 14 207 251 463 +1834 4 2 709 52 261 214 16 464 +1835 4 2 709 52 197 248 57 445 +1836 4 2 709 52 11 213 232 471 +1837 4 2 709 52 63 213 260 462 +1838 4 2 709 52 203 449 218 447 +1839 4 2 709 52 282 10 205 480 +1840 4 2 709 52 252 205 62 455 +1841 4 2 709 52 466 206 451 58 +1842 4 2 709 52 15 212 475 292 +1843 4 2 709 52 472 12 231 267 +1844 4 2 709 52 209 10 253 480 +1845 4 2 709 52 463 14 204 281 +1846 4 2 709 52 469 9 203 279 +1847 4 2 709 52 16 464 219 294 +1848 4 2 709 52 10 205 465 278 +1849 4 2 709 52 447 216 220 446 +1850 4 2 709 52 239 199 60 446 +1851 4 2 709 52 15 477 210 285 +1852 4 2 709 52 470 12 195 269 +1853 4 2 709 52 195 12 472 267 +1854 4 2 709 52 200 441 196 445 +1855 4 2 709 52 53 205 237 476 +1856 4 2 709 52 203 53 238 459 +1857 4 2 709 52 201 447 202 445 +1858 4 2 709 52 13 474 220 298 +1859 4 2 709 52 207 62 251 463 +1860 4 2 709 52 235 10 452 268 +1861 4 2 709 52 452 54 234 192 +1862 4 2 709 52 214 261 64 464 +1863 4 2 709 52 210 58 245 461 +1864 4 2 709 52 194 473 54 265 +1865 4 2 709 52 212 63 258 460 +1866 4 2 709 52 209 452 54 283 +1867 4 2 709 52 206 448 209 450 +1868 4 2 709 52 191 452 442 192 +1869 4 2 709 52 63 210 460 448 +1870 4 2 709 52 478 284 63 208 +1871 4 2 709 52 211 460 448 63 +1872 4 2 709 52 447 201 203 442 +1873 4 2 709 52 15 460 258 288 +1874 4 2 709 52 62 455 209 286 +1875 4 2 709 52 192 476 53 264 +1876 4 2 709 52 9 218 257 469 +1877 4 2 709 52 58 466 207 287 +1878 4 2 709 52 214 467 59 289 +1879 4 2 709 52 202 468 61 276 +1880 4 2 709 52 58 461 198 274 +1881 4 2 709 52 15 210 460 288 +1882 4 2 709 52 200 441 446 196 +1883 4 2 709 52 60 446 219 297 +1884 4 2 709 52 200 453 57 273 +1885 4 2 709 52 200 240 60 474 +1886 4 2 709 52 479 64 215 290 +1887 4 2 709 52 220 474 60 298 +1888 4 2 709 52 204 445 57 277 +1889 4 2 709 52 209 54 452 448 +1890 4 2 709 52 191 452 54 448 +1891 4 2 709 52 63 460 210 288 +1892 4 2 709 52 219 464 64 294 +1893 4 2 709 52 59 475 212 292 +1894 4 2 709 52 195 472 55 267 +1895 4 2 709 52 62 463 204 281 +1896 4 2 709 52 448 211 215 444 +1897 4 2 709 52 56 470 195 269 +1898 4 2 709 52 55 471 194 271 +1899 4 2 709 52 54 208 233 473 +1900 4 2 709 52 248 197 14 445 +1901 4 2 709 52 193 442 203 459 +1902 4 2 709 52 63 478 448 213 +1903 4 2 709 52 199 239 16 446 +1904 4 2 709 52 449 191 195 448 +1905 4 2 709 52 195 55 472 448 +1906 4 2 709 52 55 194 471 448 +1907 4 2 709 52 193 203 481 459 +1908 4 2 709 52 206 451 210 448 +1909 4 2 709 52 53 459 193 266 +1910 4 2 709 52 193 481 56 270 +1911 4 2 709 52 481 218 230 9 +1912 4 2 709 52 204 14 445 277 +1913 4 2 709 52 446 16 219 297 +1914 4 2 709 52 218 203 469 481 +1915 4 2 709 52 55 215 472 448 +1916 4 2 709 52 248 445 14 277 +1917 4 2 709 52 446 239 16 297 +1918 4 2 709 52 63 478 208 448 +1919 4 2 709 52 194 54 473 448 +1920 4 2 709 52 213 55 471 448 +1921 4 2 709 52 272 467 16 458 +1922 4 2 709 52 275 466 457 14 +1923 4 2 709 52 209 252 455 480 +1924 4 2 709 52 444 64 216 219 +1925 4 2 709 52 64 444 216 217 +1926 4 2 709 52 62 450 206 209 +1927 4 2 709 52 450 62 206 207 +1928 4 2 709 52 211 444 214 215 +1929 4 2 709 52 444 64 214 215 +1930 4 2 709 52 59 443 196 199 +1931 4 2 709 52 443 59 196 198 +1932 4 2 709 52 442 201 203 205 +1933 4 2 709 52 53 442 203 205 +1934 4 2 709 52 449 56 216 217 +1935 4 2 709 52 56 449 216 218 +1936 4 2 709 52 218 61 203 447 +1937 4 2 709 52 62 450 201 204 +1938 4 2 709 52 450 62 201 205 +1939 4 2 709 52 244 198 15 454 +1940 4 2 709 52 59 443 211 212 +1941 4 2 709 52 443 59 211 214 +1942 4 2 709 52 56 449 193 195 +1943 4 2 709 52 449 191 193 195 +1944 4 2 709 52 211 460 63 212 +1945 4 2 709 52 447 216 218 220 +1946 4 2 709 52 61 447 218 220 +1947 4 2 709 52 447 201 202 203 +1948 4 2 709 52 61 447 202 203 +1949 4 2 709 52 9 203 238 459 +1950 4 2 709 52 442 191 192 193 +1951 4 2 709 52 53 442 192 193 +1952 4 2 709 52 446 60 219 220 +1953 4 2 709 52 216 446 219 220 +1954 4 2 709 52 445 57 201 204 +1955 4 2 709 52 57 445 201 202 +1956 4 2 709 52 191 452 192 54 +1957 4 2 709 52 196 445 197 200 +1958 4 2 709 52 445 57 197 200 +1959 4 2 709 52 451 58 206 210 +1960 4 2 709 52 446 196 199 200 +1961 4 2 709 52 60 446 199 200 +1962 4 2 709 52 466 206 58 207 +1963 4 2 709 52 448 206 208 210 +1964 4 2 709 52 63 448 208 210 +1965 4 2 709 52 63 448 211 213 +1966 4 2 709 52 206 448 208 209 +1967 4 2 709 52 448 54 208 209 +1968 4 2 709 52 448 54 191 194 +1969 4 2 709 52 448 211 213 215 +1970 4 2 709 52 55 448 213 215 +1971 4 2 709 52 55 448 191 194 +1972 4 2 709 52 448 55 191 195 +1973 4 2 709 52 233 456 208 11 +1974 4 2 709 52 54 208 473 448 +1975 4 2 709 52 208 259 11 456 +1976 4 2 709 52 478 63 284 462 +1977 4 2 709 52 203 256 61 293 +1978 4 2 709 52 451 58 196 197 +1979 4 2 709 52 58 451 196 198 +1980 4 2 709 52 461 477 244 210 +1981 4 2 709 52 236 465 476 205 +1982 4 2 709 52 218 203 61 293 +1983 4 2 709 52 476 465 236 192 +1984 4 2 709 52 198 461 451 454 +1985 4 2 709 52 259 478 462 213 +1986 4 2 709 52 259 462 478 284 +1987 4 2 709 52 200 249 453 273 +1988 4 2 709 52 215 262 479 290 +1989 4 2 709 52 268 452 234 192 +1990 4 2 709 52 252 205 455 282 +1991 4 2 709 52 275 466 246 457 +1992 4 2 709 52 272 467 458 241 +1993 4 2 709 52 461 454 244 477 +1994 4 2 709 52 244 454 461 198 +1995 4 2 709 52 246 466 207 457 +1996 4 2 709 52 467 241 214 458 +1997 4 2 709 52 252 209 455 286 +1998 4 2 709 52 209 234 452 283 +1999 4 2 709 52 202 249 453 280 +2000 4 2 709 52 217 262 479 295 +2001 4 2 709 52 203 256 218 469 +2002 4 2 709 52 202 254 468 276 +2003 4 2 709 52 203 256 469 279 +2004 4 2 709 52 275 466 197 246 +2005 4 2 709 52 272 467 241 199 +2006 4 2 709 52 192 236 476 264 +2007 4 2 709 52 296 468 254 220 +2008 4 2 709 52 208 259 478 284 +2009 4 2 709 52 218 256 203 293 +2010 4 2 709 52 244 198 461 274 +2011 4 2 709 52 246 207 466 287 +2012 4 2 709 52 205 236 465 278 +2013 4 2 709 52 214 241 467 289 +2014 4 2 709 52 213 259 478 291 +2015 4 2 709 52 244 210 477 285 +$EndElements diff --git a/H5Fed/grids/sphere.geo b/H5Fed/grids/sphere.geo new file mode 100644 index 0000000..ab6f5e8 --- /dev/null +++ b/H5Fed/grids/sphere.geo @@ -0,0 +1,135 @@ +// rights - 2002-2005, benedikt oswald, +// project - aq +// file name - sphere.geo +// file type - GMSH script file +// objective - model cube in a cube, 2 spherical objects mesh to investigate sub lambda resolution capability +// modified - 2005 jan 25, benedikt oswald, creation +// modified - 2005 jan 25, benedikt oswald, added background hexahedron, subsurface hexahedron +// modified - 2005 feb 01, benedikt oswald, adapted to the simple.geo problem +// modified - 2005 mar 08, benedikt oswald, adapted to the cube in cube geometry +// modified - 2005 mar 09, benedikt oswald, adapted to cube in cube and spherical particle configuration +// modified - 2005 mar 11, benedikt oswald, adapted to investigation of sub-lambda resolution capability +// modified - 2005 mar 22, benedikt oswald, adapted to be based on reference background medium subLambda310.geo +// modified - 2005 mar 23, benedikt oswald, adapted to model a microresonator geometry +// modified - 2005 mar 29, benedikt oswald, adapted to model a high quality sphere for a Hertzian dipole benchmark +// modified - 2005 +// inheritance - +// feature - models a microresonator geometry; a dielectric sphere within an air sphere; the dielectric +// feature - sphere will be excited by a Hertzian dipole in the vicinity of the sphere; +// feature - + + +// 1 modeling constants + +lcair=1.20; // characteristic length in fractions of lambda@1 GHz for air domain +lcsubsurface=1.20; // characteristic length in fractions of lambda@1 GHz for subsurface domain +lcil1=0.80; // characteristic length in fractions of lambda@1 GHz for icelens region +lcil2=0.40; // characteristic length in fractions of lambda@1 GHz for icelens 2 region +lambda=3.0e-1; // wavelength of electromagntic wave at a frequency of 1 GHz + +lx=3.0; // x dim of computational domain +ly=3.0; // y dim of computational domain +lz=2.0; // z dim of computational domain + +cx=0.5*lx; // calculate center of computational domain +cy=0.5*ly; // calculate center of computational domain +cz=0.5*lz; // calculate center of computational domain + +dxl=0.3; // thickness of PML region +dxh=0.3; // thickness of PML region + +dyl=0.3; // thickness of PML region +dyh=0.3; // thickness of PML region + +dzl=0.30; // thickness of PML region +dzh=0.60; // thickness of PML region + +xminic=dxl; // x min of inner cube +xmaxic=lx-dxh; // x max of inner cube +yminic=dyl; // y min of inner cube +ymaxic=ly-dyh; // y max of inner cube +zminic=dzl; // z min of inner cube +zmaxic=lz-dzh; // z max of inner cube + +dsx=0.10; // x distance separating the two spherical scatterers +dsy=0.00; // y distance separating the two spherical scatterers +dsz=0.00; // z distance separating the two spherical scatterers + +r1=1.0; // radius of air sphere +ilcx=0.0; // x center of air sphere +ilcy=0.0; // y center of +ilcz=0.0; // z center of + +r2=2.0e-6; // radius of dielectric sphere +il2cx=0.0; // x center of dielectric sphere +il2cy=0.0; // y center of dielectric sphere +il2cz=0.0; // z center of dielectric sphere + + +// 1.2 Define physical material domains + +vacuum=609; // physical entity vacuum +air=709; // physical entity air +subsurface=809; // physical entity subsurface +pml=1301; // physical entity pml material +icelens1=4001; // physical entity icelens +icelens2=4003; // physical entity icelens 2 +dielsphere=4005; // physical entity dielectric sphere +vacuum_background_bnd=12701; // boundary to background, i.e. vacuum +air_soil_bnd=12702; // interior boundary, separating air and subsurface material +soil_icelens1_bnd=12703; // interior boundary, separating background subsurface from icelens particle +soil_icelens2_bnd=12705; // interior boundary, separating background subsurface from icelens 2 particle +dielectric_sphere_bnd=12707; // interior boundary, separting air background from dielectric sphere + + +// 2.2.1 Define air sphere 1 + +ilp1 = newp; Point(ilp1) = {ilcx, ilcy, ilcz, lcil1 * lambda} ; +ilp2 = newp; Point(ilp2) = {ilcx+r1, ilcy, ilcz, lcil1 * lambda} ; +ilp3 = newp; Point(ilp3) = {ilcx, ilcy+r1, ilcz, lcil1 * lambda} ; +ilp4 = newp; Point(ilp4) = {ilcx, ilcy, ilcz+r1, lcil1 * lambda} ; +ilp5 = newp; Point(ilp5) = {ilcx-r1, ilcy, ilcz, lcil1 * lambda} ; +ilp6 = newp; Point(ilp6) = {ilcx, ilcy-r1, ilcz, lcil1 * lambda} ; +ilp7 = newp; Point(ilp7) = {ilcx, ilcy, ilcz-r1, lcil1 * lambda} ; + +ilc1 = newreg; Circle(ilc1) = {ilp2,ilp1,ilp7}; +ilc2 = newreg; Circle(ilc2) = {ilp7,ilp1,ilp5}; +ilc3 = newreg; Circle(ilc3) = {ilp5,ilp1,ilp4}; +ilc4 = newreg; Circle(ilc4) = {ilp4,ilp1,ilp2}; +ilc5 = newreg; Circle(ilc5) = {ilp2,ilp1,ilp3}; +ilc6 = newreg; Circle(ilc6) = {ilp3,ilp1,ilp5}; +ilc7 = newreg; Circle(ilc7) = {ilp5,ilp1,ilp6}; +ilc8 = newreg; Circle(ilc8) = {ilp6,ilp1,ilp2}; +ilc9 = newreg; Circle(ilc9) = {ilp7,ilp1,ilp3}; +ilc10 = newreg; Circle(ilc10) = {ilp3,ilp1,ilp4}; +ilc11 = newreg; Circle(ilc11) = {ilp4,ilp1,ilp6}; +ilc12 = newreg; Circle(ilc12) = {ilp6,ilp1,ilp7}; + +// We need non-plane surfaces to define the spherical icelens: +// here we use ruled surfaces, which can have 3 or 4 +// sides: + +ill1 = newreg; Line Loop(ill1) = {ilc5,ilc10,ilc4}; ilruls1=newreg; Ruled Surface(ilruls1) = {ill1}; +ill2 = newreg; Line Loop(ill2) = {ilc9,-ilc5,ilc1}; ilruls2=newreg; Ruled Surface(ilruls2) = {ill2}; +ill3 = newreg; Line Loop(ill3) = {ilc12,-ilc8,-ilc1}; ilruls3=newreg; Ruled Surface(ilruls3) = {ill3}; +ill4 = newreg; Line Loop(ill4) = {ilc8,-ilc4,ilc11}; ilruls4=newreg; Ruled Surface(ilruls4) = {ill4}; +ill5 = newreg; Line Loop(ill5) = {-ilc10,ilc6,ilc3}; ilruls5=newreg; Ruled Surface(ilruls5) = {ill5}; +ill6 = newreg; Line Loop(ill6) = {-ilc11,-ilc3,ilc7}; ilruls6=newreg; Ruled Surface(ilruls6) = {ill6}; +ill7 = newreg; Line Loop(ill7) = {-ilc2,-ilc7,-ilc12};ilruls7=newreg; Ruled Surface(ilruls7) = {ill7}; +ill8 = newreg; Line Loop(ill8) = {-ilc6,-ilc9,ilc2}; ilruls8=newreg; Ruled Surface(ilruls8) = {ill8}; + +ilsloop0 = newreg; +Surface Loop(ilsloop0) = {ill8+1,ill5+1,ill1+1,ill2+1,ill3+1,ill7+1,ill6+1,ill4+1}; + + +// 2.3.3 Define volume of air sphere + +vil1=newv; Volume(vil1) = {ilsloop0}; + + +// 3.0 define physical entitites + +Physical Point(vacuum_background_bnd) = {ilp1,ilp2,ilp3,ilp4,ilp5,ilp6,ilp7}; +Physical Surface(vacuum_background_bnd) = {ilruls1,ilruls2,ilruls3,ilruls4,ilruls5,ilruls6,ilruls7,ilruls8}; +Physical Volume(air) = {vil1}; + diff --git a/H5Fed/grids/sphere.msh b/H5Fed/grids/sphere.msh new file mode 100644 index 0000000..14b1937 --- /dev/null +++ b/H5Fed/grids/sphere.msh @@ -0,0 +1,2887 @@ +$MeshFormat +2 0 8 +$EndMeshFormat +$Nodes +456 +1 0 0 0 +2 1 0 0 +3 0 1 0 +4 0 0 1 +5 -1 0 0 +6 0 -1 0 +7 0 0 -1 +8 0.9659258262890713 0 -0.2588190451025093 +9 0.8660254037844484 0 -0.4999999999999832 +10 0.7071067811865634 0 -0.7071067811865316 +11 0.5000000000000127 0 -0.8660254037844314 +12 0.2588190451025276 0 -0.9659258262890664 +13 -0.2588190451025093 0 -0.9659258262890713 +14 -0.4999999999999832 0 -0.8660254037844484 +15 -0.7071067811865316 0 -0.7071067811865634 +16 -0.8660254037844314 0 -0.5000000000000127 +17 -0.9659258262890664 0 -0.2588190451025276 +18 -0.9659258262890713 0 0.2588190451025093 +19 -0.8660254037844484 0 0.4999999999999832 +20 -0.7071067811865634 0 0.7071067811865316 +21 -0.5000000000000127 0 0.8660254037844314 +22 -0.2588190451025276 0 0.9659258262890664 +23 0.2588190451025093 0 0.9659258262890713 +24 0.4999999999999832 0 0.8660254037844484 +25 0.7071067811865316 0 0.7071067811865634 +26 0.8660254037844314 0 0.5000000000000127 +27 0.9659258262890664 0 0.2588190451025276 +28 0.9659258262890713 0.2588190451025093 0 +29 0.8660254037844484 0.4999999999999832 0 +30 0.7071067811865634 0.7071067811865316 0 +31 0.5000000000000127 0.8660254037844314 0 +32 0.2588190451025276 0.9659258262890664 0 +33 -0.2588190451025093 0.9659258262890713 0 +34 -0.4999999999999832 0.8660254037844484 0 +35 -0.7071067811865316 0.7071067811865634 0 +36 -0.8660254037844314 0.5000000000000127 0 +37 -0.9659258262890664 0.2588190451025276 0 +38 -0.9659258262890713 -0.2588190451025093 0 +39 -0.8660254037844484 -0.4999999999999832 0 +40 -0.7071067811865634 -0.7071067811865316 0 +41 -0.5000000000000127 -0.8660254037844314 0 +42 -0.2588190451025276 -0.9659258262890664 0 +43 0.2588190451025093 -0.9659258262890713 0 +44 0.4999999999999832 -0.8660254037844484 0 +45 0.7071067811865316 -0.7071067811865634 0 +46 0.8660254037844314 -0.5000000000000127 0 +47 0.9659258262890664 -0.2588190451025276 0 +48 0 0.2588190451025093 -0.9659258262890713 +49 0 0.4999999999999832 -0.8660254037844484 +50 0 0.7071067811865316 -0.7071067811865634 +51 0 0.8660254037844314 -0.5000000000000127 +52 0 0.9659258262890664 -0.2588190451025276 +53 0 0.9659258262890713 0.2588190451025093 +54 0 0.8660254037844484 0.4999999999999832 +55 0 0.7071067811865634 0.7071067811865316 +56 0 0.5000000000000127 0.8660254037844314 +57 0 0.2588190451025276 0.9659258262890664 +58 0 -0.2588190451025093 0.9659258262890713 +59 0 -0.4999999999999832 0.8660254037844484 +60 0 -0.7071067811865316 0.7071067811865634 +61 0 -0.8660254037844314 0.5000000000000127 +62 0 -0.9659258262890664 0.2588190451025276 +63 0 -0.9659258262890713 -0.2588190451025093 +64 0 -0.8660254037844484 -0.4999999999999832 +65 0 -0.7071067811865634 -0.7071067811865316 +66 0 -0.5000000000000127 -0.8660254037844314 +67 0 -0.2588190451025276 -0.9659258262890664 +68 0.5774186069889122 0.5772355870821736 0.5773965962047585 +69 0.390392285772598 0.4082691941076035 0.8251739453749256 +70 0.4084444477225842 0.8250286836092601 0.3905145535500446 +71 0.8251728143022465 0.3902585355056509 0.4083969906164653 +72 0.7016584759513361 0.3163140321570269 0.6384518930338482 +73 0.638498507859896 0.7015263921831146 0.3165128189230242 +74 0.3165720336494572 0.6383436304461482 0.7016406374336794 +75 0.2439044212016629 0.7953373568322576 0.5549319200465039 +76 0.5548515558393082 0.243814333486285 0.7954222824710366 +77 0.7954466081552514 0.5547429523641115 0.243977403754238 +78 0.2356839468014399 0.2355194756848956 0.9428593044362087 +79 0.9428303853371506 0.2356287620921389 0.2356907771968406 +80 0.2358720200949641 0.942714697680165 0.2359097141204913 +81 0.4438102903186575 0.7188479138186062 0.5350608511938695 +82 0.5349591428204158 0.4436822461288893 0.7190026066855966 +83 0.7190204643934706 0.5348207012798241 0.4438197004238543 +84 0.8316325733762089 0.2266244951822125 0.5069799855019377 +85 0.2268712482736458 0.5069337737636513 0.83159600323447 +86 0.5070484865831129 0.831503655642602 0.2269537287245879 +87 0.604133264599484 0.5608214857834193 -0.5661291900606654 +88 0.8130894502831405 0.4114256871426828 -0.4118440017539476 +89 0.3994488243296763 0.8318409400988611 -0.3853341736756905 +90 0.3905691345898091 0.4082449199176736 -0.8251027368745824 +91 0.3165944211817845 0.6383307869375054 -0.7016422022189038 +92 0.7017426546769071 0.3163538841284018 -0.6383396093318856 +93 0.7016912665918319 0.6383695293460984 -0.3164075498257238 +94 0.2441423283104637 0.7953406704268992 -0.5548233494481835 +95 0.5549598474857641 0.7953386503772524 -0.2438366516151797 +96 0.5550234846662147 0.2438054375426155 -0.7953036402492681 +97 0.9428976436559798 0.235554705299599 -0.2354952836039876 +98 0.2358388217326213 0.9427827837463852 -0.2356706964332257 +99 0.2358773550853395 0.235600146003675 -0.9427908746157178 +100 0.5181553326338426 0.7222575905452489 -0.4581037399958199 +101 0.5378168378783106 0.4420896655358806 -0.7178503877272829 +102 0.2270325986180768 0.5068417618990799 -0.8316054750977873 +103 0.8316739271891225 0.2267285265845373 -0.5068733936069202 +104 0.8316224037673011 0.5069468475547354 -0.226745239464854 +105 0.5772320701905324 -0.5775433433118849 -0.5772753448221858 +106 0.8250773850390755 -0.4085500287226788 -0.3903024716147447 +107 0.408280887672241 -0.3905902261590574 -0.8250738238485346 +108 0.3902775348683724 -0.8252434770628433 -0.4082393526911887 +109 0.3162958581056802 -0.7017911302406847 -0.638315079487538 +110 0.6383471412697228 -0.3167145796788303 -0.7015730946253813 +111 0.7015067281069789 -0.6385820696922792 -0.3163878015680964 +112 0.795374222530574 -0.2440651563808817 -0.5548092404471053 +113 0.2438508105542683 -0.555036549188262 -0.795281348224425 +114 0.5547382322693932 -0.7954883361519874 -0.2438520882861974 +115 0.9427957353764078 -0.2358425218806323 -0.2356151954674142 +116 0.235632652755004 -0.2359116672304446 -0.9427740676040954 +117 0.2356476222405443 -0.9428684058207187 -0.2355197632492027 +118 0.7188835304664984 -0.4439619867974023 -0.5348871387846431 +119 0.4436881444421617 -0.5351149448245689 -0.7188830363727879 +120 0.5348144649879299 -0.7191050140074361 -0.4436900692139499 +121 0.5069160106180056 -0.2270536242622747 -0.8315552733337885 +122 0.8314847168925864 -0.5071799235292553 -0.2267369202310746 +123 0.2267280698498097 -0.8317093181772447 -0.5068076868104345 +124 0.5772555028905972 -0.5773134740824709 0.577481806661795 +125 0.408285211811147 -0.8251206920540258 0.3904890832880746 +126 0.8250822528102796 -0.3903735138580489 0.4084710750209333 +127 0.3902184165539368 -0.4083816104089102 0.8252005183111374 +128 0.701569568194412 -0.3164043944624696 0.6385048198881478 +129 0.3163513009106281 -0.6384255477802367 0.7016656359209685 +130 0.6383633581996625 -0.7015893085691981 0.3166459632054457 +131 0.2437710795029402 -0.7953997176727772 0.5549008832159361 +132 0.5547257091383696 -0.2440263110972606 0.7954444028126921 +133 0.7953235684973977 -0.5548689586987745 0.2440943834893802 +134 0.235563151647849 -0.9428183994035307 0.2358042765359055 +135 0.9427845483774466 -0.2357292563213827 0.2357732329583299 +136 0.2355635077876042 -0.2356395001382591 0.9428594136663868 +137 0.4436748358918169 -0.7189363383143998 0.5350538134622882 +138 0.7188914608392092 -0.5349068347087219 0.4439253760467338 +139 0.5347708924313034 -0.4438100510248577 0.7190638071197819 +140 0.8315440158844749 -0.2267949698961331 0.5070502477101421 +141 0.5069529227871254 -0.8315597091831362 0.226952028057782 +142 0.226687437239603 -0.5070015236649638 0.8316070180255677 +143 -0.560826132388517 0.6040118664056207 0.5662541076856511 +144 -0.4082140986476672 0.3904021177101261 0.8251953926778192 +145 -0.4114443966139846 0.8129714156317898 0.4120575464507411 +146 -0.8318129910976259 0.3993779768820576 0.3854697846538192 +147 -0.6383046670794423 0.3164556888734402 0.7017285461339972 +148 -0.6383806935958679 0.7016130183975885 0.3165584737857727 +149 -0.3163772424890282 0.7015670073893766 0.638521074572526 +150 -0.7953325940169355 0.2439684701719327 0.5549123578333633 +151 -0.7953488347381557 0.5548907072492444 0.2439626636433938 +152 -0.2437689786623419 0.5548374074153345 0.7954446302104554 +153 -0.2355039837071383 0.2356997377421673 0.9428593223735069 +154 -0.2356675786637241 0.9427915074468615 0.2358070613506237 +155 -0.942729287587636 0.2358385347761147 0.235884908105714 +156 -0.4420718765580962 0.5376780403971451 0.7179653625980525 +157 -0.722248098179987 0.5180743863813239 0.4582102559882585 +158 -0.5068050631092904 0.2268137659874418 0.8316875899912025 +159 -0.2266821858172585 0.8315502424695126 0.5070935748294649 +160 -0.5069455912572971 0.8315663516666147 0.2269469843515745 +161 -0.5611296571146357 -0.5754295799059724 0.5949908469491614 +162 -0.4116951067131573 -0.4127729607830743 0.8124814127555403 +163 -0.4084327984666175 -0.8250250597771862 0.3905333530200064 +164 -0.8319452431968473 -0.3991435652558402 0.3854271363976702 +165 -0.6384264670364124 -0.3162504339276715 0.7017102779126719 +166 -0.6384816176489836 -0.7015150860625911 0.3165719687968478 +167 -0.3165565683146147 -0.6383346013907986 0.7016558014025035 +168 -0.7954055139956299 -0.2438259131914989 0.5548695725952254 +169 -0.7954388131570722 -0.5547388068549844 0.2440168651352363 +170 -0.2439828885924241 -0.7952943620031206 0.5549587830813555 +171 -0.2356221058222947 -0.2355061963798143 0.9428780722174419 +172 -0.9428551681773489 -0.2355096908367245 0.2357102702807973 +173 -0.2357885683929464 -0.9427394853462792 0.2358944795509976 +174 -0.4421628668078288 -0.7185966612833216 0.5367591145344928 +175 -0.7224685089775901 -0.5155555574383112 0.4606969764657481 +176 -0.2268206256120686 -0.5069286115085051 0.8316130710907187 +177 -0.5069413949122642 -0.2266349842655279 0.831653999227961 +178 -0.5070435340177852 -0.8314902334987898 0.2270042941285054 +179 -0.5774497056851279 -0.577279664738451 -0.577321423544601 +180 -0.8252176837149967 -0.3902777495283821 -0.408291278715833 +181 -0.4084574857638908 -0.8250943919954002 -0.3903633754787471 +182 -0.3905177722955768 -0.4083149992589799 -0.8250912400839908 +183 -0.6384982787881436 -0.7015610545559774 -0.3164364468595954 +184 -0.316577648620635 -0.6383859631847046 -0.701599571882751 +185 -0.7017118726722944 -0.3163766876599058 -0.6383621544923803 +186 -0.795463445209769 -0.5547716301766874 -0.243857306440779 +187 -0.554957471547011 -0.2438344668992958 -0.7953415440235025 +188 -0.2440280646317487 -0.7953555197244363 -0.5548523659765372 +189 -0.2358033218754393 -0.9427929429083917 -0.2356655984545527 +190 -0.9428761860648079 -0.2355905174484787 -0.2355457455403515 +191 -0.2358342533749838 -0.2356714301214506 -0.9427837431178894 +192 -0.7190497436879845 -0.5348507420448297 -0.4437359078226607 +193 -0.4438798808157396 -0.7189080503444906 -0.5349223251376507 +194 -0.5350558452050904 -0.4437038638103351 -0.7189173230853261 +195 -0.5070493159128454 -0.8315663926767551 -0.2267295411534512 +196 -0.8316632223869077 -0.2266924948839944 -0.5068992369956744 +197 -0.2270334073339045 -0.506943346384664 -0.8315441285157673 +198 -0.5773694023433795 0.5774187880331619 -0.5772626061542135 +199 -0.3903371683959208 0.8251998856300642 -0.4082681370416339 +200 -0.4083251741763964 0.3905514695108651 -0.8250708686540438 +201 -0.8251397454616132 0.4084499680609054 -0.3902764751329847 +202 -0.6383972036504657 0.3165208328223637 -0.7016149676146257 +203 -0.7016080661663857 0.6384961919669582 -0.3163364275092762 +204 -0.3164992094695519 0.701663288743967 -0.6383548264962388 +205 -0.7953869951992356 0.244031604386656 -0.5548045996498749 +206 -0.5547987516037972 0.7954659334012069 -0.2437898965279919 +207 -0.2438666116533826 0.5549869859564786 -0.7953111134679378 +208 -0.2356071526491075 0.9428761050577354 -0.2355290310941403 +209 -0.9428192529839283 0.235791345113778 -0.2355726890926478 +210 -0.2357100963511136 0.2359156521167049 -0.9427537163087534 +211 -0.5349207476752772 0.7190298340079574 -0.4436844432371889 +212 -0.4437540095051124 0.5350749959117673 -0.7188721410559977 +213 -0.7189776051267929 0.4438650354248381 -0.5348405663205764 +214 -0.5068936549053258 0.2269568021701343 -0.8315992903744411 +215 -0.2268000408392938 0.8316182584062364 -0.5069262077334956 +216 -0.8315624948465579 0.5070486335587142 -0.2267278979028819 +583 -0.00445123083815902 0.03361298194556267 0.04175060395290018 +584 -0.05989243584884493 -0.4327399331426503 0.2395108428058018 +585 -0.09720718836639883 0.2970620718185536 0.6210451218848672 +586 0.4905852623491346 0.1958654230486855 0.07985663522018309 +587 -0.442307093104937 0.1699639942200502 -0.198597864275025 +588 0.04307148424055462 0.444801712406303 -0.2104697882281486 +589 0.08273149545010636 -0.1807913705803891 -0.480192449962713 +590 0.3704299979450907 -0.2956592181356898 -0.04838003465637772 +591 0.3324771769035622 -0.1600148089391612 0.4246558982276204 +592 -0.4184990773720901 -0.2169641312780048 0.2913854786806764 +593 -0.3449992874348486 0.3899797079447699 0.0273306418023496 +594 -0.3067999443491745 -0.3418839382686555 -0.2291186755630513 +595 0.382090971748106 0.1298241237872446 -0.4104484766545275 +596 -0.1359686795994353 0.1810434531316137 -0.5472076197670374 +597 0.1094663949584964 0.4794458098539821 0.2629960135021535 +598 -0.1469867551729543 -0.2867642731252083 0.4860466370389489 +599 0.1037555674744097 -0.5362821924123117 -0.2132449218043708 +600 0.2949931280586138 0.1947477687119672 0.4936675380225324 +601 -0.3594431376109409 0.4399959354541163 -0.2225929957605241 +602 -0.291270561629794 -0.1538881627845034 -0.5478455917759218 +603 -0.3505171425715828 0.2133886510019561 0.444473974784352 +604 -0.4654862972972447 -0.4290295737347114 0.08626907917954643 +605 0.2708666941011889 -0.531481458290942 0.2587547902938928 +606 0.562021929764308 -0.1209501700583735 0.2608279316906893 +607 0.7155534538246595 -0.06989009013553314 -0.1191459389579079 +608 0.432135953779848 -0.2565085937561152 -0.4174048727395559 +609 0.3739841887814577 0.5395228579734608 -0.06042830788749697 +610 -0.5466295436722854 0.2477677955961847 0.08713237851261164 +611 -0.7275758093863677 -0.1618698416905494 -0.04630832501202489 +612 0.1471894257121962 0.1144769870352899 -0.5679059085400214 +613 0.1119358464479022 0.00014573141489943 0.6456741541879727 +614 -0.05917544329714807 0.630596782730555 -0.01268711877969454 +615 -0.1078986383031515 0.5046301031618403 0.3603799341860357 +616 -0.118643423317255 -0.4829636215314191 -0.2954131223767898 +617 0.1987737505682514 -0.4170955528150125 0.4849469069366495 +618 0.2269798800157361 0.3574990969400048 -0.500600005722508 +619 -0.1957579069702858 -0.5877238515517208 -0.05756067041185948 +620 -0.3107421892300735 -0.05147120748668405 0.4536320032899748 +621 -0.4239720392702462 0.1935073059471168 -0.6232377152524906 +622 -0.3419162018573752 -0.451970868753694 0.4048853362766286 +623 0.7257729542072564 0.2285926599594307 -0.1743448464133809 +624 -0.1704975990507738 0.01741756975334827 -0.2537436682012721 +625 0.0893423966007923 -0.7342118554561312 0.1448173642044326 +626 0.2934669459183501 0.05038303914233931 -0.01447673479146534 +627 -0.3612580969852551 0.1532791968662017 0.2240064620449025 +628 0.2846193979997211 0.2083219943605224 0.2494985641716946 +629 -0.2534064225780064 -0.2662234704393987 0.04852829787403218 +630 0.112744440107208 -0.312691177723144 -0.01298593661208691 +631 0.5053159074359285 0.4570419826637797 0.2852698621603876 +632 -0.516943751009932 -0.2151595797097685 -0.3993696253975682 +633 0.09874757848069443 0.4950557242714989 0.5531189118373648 +634 -0.1245109293695119 0.2225207397252627 -0.1287606463386554 +635 0.3267039870618893 -0.5377191280705796 -0.4509534696750916 +636 0.5421633509423743 0.09044360016339875 0.4995250473732978 +637 -0.05239543291471497 -0.1256606584700473 0.3137190201032626 +638 -0.09024977491449952 0.4162151556886213 -0.5781569183372238 +639 0.3618395096415362 -0.6339200974479356 -0.1743965255092664 +640 0.02483998730434421 0.1789988869091249 -0.3175552062496942 +641 -0.5766787361519669 0.5366675139595989 -0.07977799938047252 +642 -0.08394018525404814 -0.08658249593537337 -0.7101979890682272 +643 -0.6030580639407491 0.02526408305243393 0.3009417053406659 +644 -0.10298169244674 0.6261874076848069 -0.2791315335061879 +645 0.4855518656278585 -0.368261104245252 0.3870842405815841 +646 0.5335719930743383 0.3837264508530264 -0.3526103173614748 +647 0.7169616242357238 0.09024624243028291 0.08886569035295204 +648 0.5362528099417564 -0.5183553270036727 0.138893180000467 +649 -0.6578161167453882 -0.2010160153212854 0.2475909820243608 +650 0.1588879299417462 0.2602737269378841 -0.08971151718732109 +651 -0.2722031134728249 0.6621369910020154 -0.05919853428042919 +652 -0.5780170544457613 0.3466968466960951 -0.3941974403589452 +653 -0.7268185530075841 0.06619107233386445 -0.1171260771089371 +654 0.1661017915214337 -0.2536053889804873 -0.6904247604329752 +655 -0.1626174233880279 -0.6920709179881319 0.3298132459406297 +656 0.3567236916407489 -0.09760759063468687 0.663125859195861 +657 0.6939213676071915 -0.3235292386431903 -0.1080182052041431 +658 -0.4197693597120146 0.4945961021043294 0.3108477494335399 +659 0.1576391202230465 0.7207603209448301 -0.09647708587395172 +660 -0.5213061685696559 -0.5500735309572456 -0.1551084535452548 +661 -0.5741698206458109 -0.3382555407704131 0.4647283860317164 +662 0.4514399789669577 0.01325422745769647 -0.5714785213745579 +663 -0.1257269884515421 -0.7117296017853986 -0.3126569618360516 +664 0.2328720630262108 -0.2835636468069386 0.6744617645227937 +665 -0.1324663496121905 0.03586803199153549 0.5941876487493112 +666 0.6387429043026126 0.3917359777313141 0.06922299327253323 +667 -0.05385274799041136 0.2811540460275944 0.1338308229928323 +668 -0.3476241041495199 0.3805515497937316 -0.5433970352034702 +669 0.1794031190395323 -0.09677959925105678 0.1798288387057513 +670 -0.3295639977440223 -0.4313554700391035 -0.5269091737068974 +671 0.06010736319618243 0.3104334722085622 -0.7304244648718694 +672 0.6251863452444897 0.04538856965230699 -0.3401042569408679 +673 0.306788110760203 0.6604067980118801 0.1888231157272154 +674 0.07875875800880899 -0.4558100845330146 -0.5792768053893934 +675 -0.2701452761202235 0.6895426651269294 0.1749426712081894 +676 -0.2793254771308081 0.05634386862304704 -0.7097976501143739 +677 0.1455990962885341 -0.7467614615956613 0.3322348416077079 +678 -0.01044985316048661 -0.269022677396456 -0.2222152642590018 +679 0.1918160269877615 0.3215803628789636 0.6754439340634777 +680 0.05360671902916853 0.7227883027043349 0.194258937515382 +681 0.2748878349227991 0.516590360428631 -0.3179710585121232 +682 -0.1797288274105012 -0.5736872127434138 0.50132338115292 +683 0.5565555336297748 -0.460912967527817 -0.3064110534620869 +684 0.2162474382047613 -0.1745483065384364 -0.262633007112005 +685 -0.5330573828044168 -0.00576127592399373 0.05628809614531313 +686 -0.3097316228152295 0.4514702715732936 0.5572857492128177 +687 -0.6324313535904469 -0.0100670230028251 -0.3855569620440271 +688 0.364734806319045 -0.004649073877991019 0.2622356450282263 +689 -0.2861590854565508 0.05185611240923234 -0.01674470537323147 +690 -0.2054390916730991 -0.2504070279766183 0.2626744605816903 +691 0.1448375668480107 -0.3186303485674661 0.2429750045802792 +692 0.6965111599720805 -0.1952133320952352 -0.3295730775241263 +693 0.4378708418502357 0.2864931097421859 -0.5930467337982307 +694 0.6515831763224887 0.2756165790414886 0.2894771176195469 +695 -0.1444292720883658 -0.3172337421318576 -0.6907241540508896 +696 -0.7950737576465219 -0.07325691368794075 0.1083906113223671 +697 -0.33276062876337 -0.6989527865954026 0.1245843775516413 +698 -0.6090788185375107 0.5034184910688446 0.1607813324311983 +699 -0.3595292769159487 -0.6007922262006261 -0.3235996400123093 +700 0.3164419410758844 0.5550295741124497 0.4671714904535754 +701 -0.3922474477310147 -0.2673574455109878 0.578704246248456 +702 0.7464675908915359 -0.2961748866275392 0.1446752473257387 +703 -0.6800172167932799 0.2996192866170032 -0.1385319299737118 +704 0.3519160123127583 -0.2899436437430198 0.1988705851999224 +705 0.01598933116088636 -0.3201301718310032 0.7266205000098165 +706 0.07417132848503669 -0.6266570949089307 -0.4569255045841113 +707 0.5940436981481612 -0.1450392891159261 0.5096117348737847 +708 -0.5094525920628745 -0.08356652916535973 -0.6048256555505623 +709 -0.3646455678109366 -0.1013954053781728 -0.174123110182922 +710 -0.56006736737866 0.1078163195258531 0.5623833342594969 +711 0.3246380112835498 -0.7158353823474634 0.1653590239286668 +712 0.3770687846023993 -0.480585099863198 0.5897378856365383 +713 0.2880288922398304 -0.0930248356523788 -0.4716310419863014 +714 0.114974999589476 0.05605094900866683 0.4379517349754723 +715 -0.09292793951569953 -0.4001030786686622 -0.04890831563309731 +716 0.3329844496745567 0.1537762692191931 0.722901579450928 +717 -0.119041244640166 0.4407446349423464 -0.07342170511887591 +718 -0.1065878576446391 -0.02106675047726318 -0.4724915288861549 +719 0.3298580512883397 0.3925711749496897 0.1008950084835346 +720 -0.3604500521498304 0.1833911762666445 0.67436271123237 +721 -0.1943345148483554 0.2854959187414657 -0.7382248626682881 +722 0.5983793281240332 0.5432223714353678 -0.1162525716015897 +723 -0.02828883941141548 -0.7034481105755812 -0.08617385483293151 +724 -0.1257330588529113 0.5641792754732138 0.5886719547550963 +725 -0.2119534044708505 0.3286568733081355 0.3190372350647347 +726 -0.1746444757391062 0.3313944843235035 -0.3371865830888897 +727 0.1435203183057825 -0.7370406338874532 -0.3018888471643751 +728 0.5223142706986088 0.3289174112771577 0.4952214559644549 +729 0.7638845191184691 -0.1158023812656688 0.08931066700528109 +730 0.5251846276693783 0.6076499557424511 0.1252755286370129 +731 0.0563870039141085 0.2980548468494095 0.4082511238999375 +732 -0.5824108530328573 -0.4526702725951958 0.2849005525432871 +733 -0.3276913243550611 -0.15656387143408 -0.7407092569844994 +734 0.1884933024434664 -0.5146743212829709 0.04622483696117951 +735 -0.1392403130290616 -0.7463767268040075 0.109284551740256 +736 -0.6428152018139111 0.3003634695270586 0.3146414711715254 +737 0.2890899074742057 0.1422614340610296 -0.749598504415997 +738 0.383241974775039 -0.3852689690536741 -0.6130951380885138 +739 0.09377267029980231 0.5780332028537128 -0.547148671768742 +740 0.1169120352258025 0.5020853257077352 0.02093127718598663 +741 0.7409049691014363 -0.02568602598469041 0.3174595290402019 +742 -0.3789816063721065 0.05132588008432339 -0.4233087578092709 +743 -0.6754903191140691 -0.3990731645852773 -0.02478114369103361 +744 0.5923970305917278 -0.5523191641252656 -0.1079154301631891 +745 -0.7135096506158857 -0.2175083805332647 -0.2617930245313313 +746 -0.4559694094484946 -0.210456577803589 0.01516368728762586 +747 -0.005954166843869187 0.117071009632849 -0.798098430935401 +748 0.4844684325214299 -0.05746196228082025 0.05832047692995731 +749 0.4466265244759159 -0.5864025173473707 0.3645675533359979 +750 0.04814467649438461 -0.01829586983755785 -0.2232275374308123 +751 0.6202840723969503 -0.1152969326425481 -0.5070796597371519 +752 -0.3123583376433227 0.5871580851310059 -0.4420817177578218 +753 -0.5242131991671314 -0.6295897896416942 0.06333186755677395 +754 -0.7401880919352519 0.1736842735769535 -0.3287399461295324 +755 -0.3488864155251243 -0.08551608148511801 0.7175207958455633 +756 -0.06932983380530568 0.807353640445843 -0.0825937067526256 +757 0.2769072919454768 -0.3843413184286245 -0.2387047087761148 +758 0.4697500551136281 -0.1209476952493688 -0.2402004419430114 +759 0.08641028890428967 -0.1817356786064249 0.4828908680973621 +760 0.4101865242287495 0.6726842550432943 -0.2246561206969862 +761 -0.5068974221694421 0.3537096750196483 0.5371052609422501 +762 0.364167941588269 0.5013380785541652 -0.5467878237707388 +763 -0.7631939463378244 0.1410645492132435 0.116123860836219 +764 0.467603560208685 0.116679506215786 -0.1772424340745952 +765 0.1063955058755895 -0.3862798045930459 -0.3738392043045043 +766 -0.4836742777368865 0.6324275234345542 0.1025438883277153 +767 -2.50911471924925e-05 0.6621292870916158 0.4506440890443646 +768 -0.5611872404250191 -0.1226140586322874 0.5496683615951006 +769 -0.1444114209410898 -0.1634080443427632 0.7285602250951081 +770 -0.2307656709593202 -0.4025906990799936 0.6316387473427063 +771 -0.04113881483149243 -0.2044386067196197 0.1123472200915667 +772 0.1206732857800276 -0.06482711592479161 -0.8056742899784969 +773 -0.5751019588495343 -0.4373509935116864 -0.3542278712228018 +774 -0.1096192061082726 -0.2558629923385226 -0.4368990864030985 +775 -0.138902168211068 0.5011031894103584 0.1326797714384199 +776 0.1366977439871474 0.7047032491813338 -0.3224302327324037 +777 -0.739290938611848 0.3441393488667192 0.09563383473169162 +778 0.02214100287275557 0.1008754529618358 0.8077069380712051 +779 -0.08050654693903765 0.1134338233798468 0.3251431234637739 +780 0.2538587836685375 0.3710831141354109 -0.687862960690147 +781 0.2762381732405685 -0.6427924818047275 0.442361599846673 +782 -0.4396945172902513 -0.6185976268832477 0.2870100913781158 +783 0.2392406325436163 0.2574836747747186 -0.3190059423898472 +784 -0.3145920924496409 -0.7371109256549299 -0.1133765476741374 +785 0.1819391328571082 -0.7642361378813186 -0.07655087143267339 +786 0.4460782507214776 -0.1943238061536582 -0.6333526184359275 +787 -0.1284414112356104 0.8215101591486963 0.1057368736008642 +788 -0.1221373624834839 -0.15351157722686 -0.07846332391146428 +789 0.06337903756889897 -0.6659043410777294 0.5073402056639156 +790 0.4525383674299762 -0.3079662593164251 0.5914742669259374 +791 -0.3929626827494766 -0.4696203810585571 0.5984206831194016 +792 -0.2291245672719227 -0.0527450851596552 0.1710954446792374 +793 0.6096180799828064 0.1385892617058966 -0.534378682859491 +794 -0.3409365810745629 -0.4788263473102627 -0.06391018648928343 +795 0.5497875623769474 0.08976497934286473 0.24999138414983 +796 -0.269267901519622 0.6350535647631677 0.4390437235387762 +797 -0.1478249297161554 -0.5649803026701656 -0.5484007839799773 +798 0.0811811635257178 -0.5643184213409866 0.3307626156977559 +799 -0.2784735383672962 -0.1640637932705361 -0.3420857319998343 +800 0.559038623782844 -0.2555950507582416 0.08480721502307874 +801 0.6778290934572896 -0.3118451395229231 0.3387297241642669 +802 -0.1407471940995646 0.7634166776101294 0.3175584699708008 +803 -0.778183456253927 -0.315774723339522 0.1454456060719504 +804 -0.7572232807567061 0.1396731150600601 0.3496605961012748 +805 0.4339410877753369 0.3183749504733616 -0.1017183611822504 +806 0.2844145560972428 0.3996349932905519 0.3418081331160913 +807 -0.2847386634649692 -0.4662632538422202 0.1797720837150963 +808 -0.3642314723883446 0.6922678776453214 -0.2486323238010833 +809 -0.6056393327751091 0.1293230692513879 -0.5691710897398843 +810 0.2593465205822736 0.05239537134575108 -0.2476814209247658 +811 -0.5197972810494668 -0.306139326394575 -0.1572783233687249 +812 0.2509921326488727 -0.2986975996934404 -0.4770845517552965 +813 0.4620733056574535 0.6415101076223563 0.3341731381775337 +814 0.5856484687059453 -0.332759646280267 -0.4953277957681605 +815 -0.01475511683327933 -0.4934695923842009 0.6113032549302191 +816 0.1134492444073874 -0.1214965902866684 -0.04993744764976522 +817 0.3104593127302551 -0.09626395504614699 -0.7446853837288547 +818 0.1240848580515664 -0.09904450436361455 0.8171799086596487 +819 -0.4718335235922349 -0.2993843130127402 -0.6099693240609336 +820 -0.5553977181014929 -0.08261179485097682 -0.1862082193602684 +821 0.04821673418534868 0.389294553050709 -0.3955823047301855 +822 0.1507447633392687 0.02700256544169646 -0.3908342939684326 +$EndNodes +$Elements +2422 +1 15 2 12701 1 1 +2 15 2 12701 2 2 +3 15 2 12701 3 3 +4 15 2 12701 4 4 +5 15 2 12701 5 5 +6 15 2 12701 6 6 +7 15 2 12701 7 7 +8 2 2 12701 14 24 78 23 +9 2 2 12701 14 54 80 53 +10 2 2 12701 14 77 79 28 +11 2 2 12701 14 78 24 76 +12 2 2 12701 14 29 77 28 +13 2 2 12701 14 80 54 75 +14 2 2 12701 14 69 78 76 +15 2 2 12701 14 71 79 77 +16 2 2 12701 14 70 80 75 +17 2 2 12701 14 25 84 72 +18 2 2 12701 14 30 86 73 +19 2 2 12701 14 55 85 74 +20 2 2 12701 14 73 81 68 +21 2 2 12701 14 70 81 73 +22 2 2 12701 14 72 83 68 +23 2 2 12701 14 71 83 72 +24 2 2 12701 14 74 82 68 +25 2 2 12701 14 69 82 74 +26 2 2 12701 14 26 84 25 +27 2 2 12701 14 31 86 30 +28 2 2 12701 14 56 85 55 +29 2 2 12701 14 56 78 85 +30 2 2 12701 14 79 84 27 +31 2 2 12701 14 31 80 86 +32 2 2 12701 14 73 77 30 +33 2 2 12701 14 72 76 25 +34 2 2 12701 14 74 75 55 +35 2 2 12701 14 78 56 57 +36 2 2 12701 14 27 84 26 +37 2 2 12701 14 80 31 32 +38 2 2 12701 14 30 77 29 +39 2 2 12701 14 25 76 24 +40 2 2 12701 14 55 75 54 +41 2 2 12701 14 73 86 70 +42 2 2 12701 14 74 85 69 +43 2 2 12701 14 72 84 71 +44 2 2 12701 14 68 81 74 +45 2 2 12701 14 68 83 73 +46 2 2 12701 14 68 82 72 +47 2 2 12701 14 69 85 78 +48 2 2 12701 14 71 84 79 +49 2 2 12701 14 70 86 80 +50 2 2 12701 14 23 78 4 +51 2 2 12701 14 28 79 2 +52 2 2 12701 14 4 78 57 +53 2 2 12701 14 3 80 32 +54 2 2 12701 14 53 80 3 +55 2 2 12701 14 2 79 27 +56 2 2 12701 14 72 82 76 +57 2 2 12701 14 73 83 77 +58 2 2 12701 14 74 81 75 +59 2 2 12701 14 75 81 70 +60 2 2 12701 14 76 82 69 +61 2 2 12701 14 77 83 71 +62 2 2 12701 16 88 92 87 +63 2 2 12701 16 87 93 88 +64 2 2 12701 16 11 99 96 +65 2 2 12701 16 31 98 32 +66 2 2 12701 16 51 98 94 +67 2 2 12701 16 99 11 12 +68 2 2 12701 16 98 31 95 +69 2 2 12701 16 98 51 52 +70 2 2 12701 16 94 100 91 +71 2 2 12701 16 91 100 87 +72 2 2 12701 16 96 99 90 +73 2 2 12701 16 89 98 95 +74 2 2 12701 16 94 98 89 +75 2 2 12701 16 89 100 94 +76 2 2 12701 16 91 102 50 +77 2 2 12701 16 92 103 10 +78 2 2 12701 16 30 104 93 +79 2 2 12701 16 91 101 90 +80 2 2 12701 16 87 101 91 +81 2 2 12701 16 50 102 49 +82 2 2 12701 16 29 104 30 +83 2 2 12701 16 10 103 9 +84 2 2 12701 16 29 97 104 +85 2 2 12701 16 9 97 8 +86 2 2 12701 16 48 102 99 +87 2 2 12701 16 50 94 91 +88 2 2 12701 16 10 96 92 +89 2 2 12701 16 93 95 30 +90 2 2 12701 16 97 29 28 +91 2 2 12701 16 97 9 103 +92 2 2 12701 16 49 102 48 +93 2 2 12701 16 11 96 10 +94 2 2 12701 16 51 94 50 +95 2 2 12701 16 30 95 31 +96 2 2 12701 16 90 102 91 +97 2 2 12701 16 93 104 88 +98 2 2 12701 16 88 103 92 +99 2 2 12701 16 92 101 87 +100 2 2 12701 16 87 100 93 +101 2 2 12701 16 88 104 97 +102 2 2 12701 16 97 103 88 +103 2 2 12701 16 99 102 90 +104 2 2 12701 16 3 98 52 +105 2 2 12701 16 2 97 28 +106 2 2 12701 16 7 99 12 +107 2 2 12701 16 48 99 7 +108 2 2 12701 16 32 98 3 +109 2 2 12701 16 8 97 2 +110 2 2 12701 16 96 101 92 +111 2 2 12701 16 93 100 95 +112 2 2 12701 16 95 100 89 +113 2 2 12701 16 90 101 96 +114 2 2 12701 18 66 116 113 +115 2 2 12701 18 9 115 112 +116 2 2 12701 18 44 117 114 +117 2 2 12701 18 116 66 67 +118 2 2 12701 18 115 9 8 +119 2 2 12701 18 117 44 43 +120 2 2 12701 18 113 116 107 +121 2 2 12701 18 112 115 106 +122 2 2 12701 18 114 117 108 +123 2 2 12701 18 109 123 65 +124 2 2 12701 18 110 121 10 +125 2 2 12701 18 111 122 45 +126 2 2 12701 18 105 118 111 +127 2 2 12701 18 111 118 106 +128 2 2 12701 18 109 120 108 +129 2 2 12701 18 105 120 109 +130 2 2 12701 18 105 119 110 +131 2 2 12701 18 110 119 107 +132 2 2 12701 18 65 123 64 +133 2 2 12701 18 10 121 11 +134 2 2 12701 18 45 122 46 +135 2 2 12701 18 46 115 47 +136 2 2 12701 18 11 116 12 +137 2 2 12701 18 63 123 117 +138 2 2 12701 18 45 114 111 +139 2 2 12701 18 65 113 109 +140 2 2 12701 18 10 112 110 +141 2 2 12701 18 115 46 122 +142 2 2 12701 18 116 11 121 +143 2 2 12701 18 64 123 63 +144 2 2 12701 18 44 114 45 +145 2 2 12701 18 66 113 65 +146 2 2 12701 18 9 112 10 +147 2 2 12701 18 108 123 109 +148 2 2 12701 18 107 121 110 +149 2 2 12701 18 106 122 111 +150 2 2 12701 18 109 119 105 +151 2 2 12701 18 110 118 105 +152 2 2 12701 18 111 120 105 +153 2 2 12701 18 115 122 106 +154 2 2 12701 18 116 121 107 +155 2 2 12701 18 117 123 108 +156 2 2 12701 18 6 117 43 +157 2 2 12701 18 2 115 8 +158 2 2 12701 18 47 115 2 +159 2 2 12701 18 7 116 67 +160 2 2 12701 18 63 117 6 +161 2 2 12701 18 12 116 7 +162 2 2 12701 18 112 118 110 +163 2 2 12701 18 113 119 109 +164 2 2 12701 18 114 120 111 +165 2 2 12701 18 106 118 112 +166 2 2 12701 18 107 119 113 +167 2 2 12701 18 108 120 114 +168 2 2 12701 20 46 135 133 +169 2 2 12701 20 24 136 132 +170 2 2 12701 20 61 134 131 +171 2 2 12701 20 135 46 47 +172 2 2 12701 20 136 24 23 +173 2 2 12701 20 134 61 62 +174 2 2 12701 20 133 135 126 +175 2 2 12701 20 132 136 127 +176 2 2 12701 20 131 134 125 +177 2 2 12701 20 128 140 25 +178 2 2 12701 20 129 142 60 +179 2 2 12701 20 130 141 45 +180 2 2 12701 20 124 137 130 +181 2 2 12701 20 130 137 125 +182 2 2 12701 20 124 138 128 +183 2 2 12701 20 128 138 126 +184 2 2 12701 20 124 139 129 +185 2 2 12701 20 129 139 127 +186 2 2 12701 20 25 140 26 +187 2 2 12701 20 60 142 59 +188 2 2 12701 20 45 141 44 +189 2 2 12701 20 43 141 134 +190 2 2 12701 20 59 136 58 +191 2 2 12701 20 26 135 27 +192 2 2 12701 20 25 132 128 +193 2 2 12701 20 45 133 130 +194 2 2 12701 20 60 131 129 +195 2 2 12701 20 44 141 43 +196 2 2 12701 20 136 59 142 +197 2 2 12701 20 135 26 140 +198 2 2 12701 20 24 132 25 +199 2 2 12701 20 46 133 45 +200 2 2 12701 20 61 131 60 +201 2 2 12701 20 126 140 128 +202 2 2 12701 20 127 142 129 +203 2 2 12701 20 125 141 130 +204 2 2 12701 20 128 139 124 +205 2 2 12701 20 129 137 124 +206 2 2 12701 20 130 138 124 +207 2 2 12701 20 134 141 125 +208 2 2 12701 20 136 142 127 +209 2 2 12701 20 135 140 126 +210 2 2 12701 20 6 134 62 +211 2 2 12701 20 4 136 23 +212 2 2 12701 20 43 134 6 +213 2 2 12701 20 27 135 2 +214 2 2 12701 20 58 136 4 +215 2 2 12701 20 2 135 47 +216 2 2 12701 20 132 139 128 +217 2 2 12701 20 131 137 129 +218 2 2 12701 20 133 138 130 +219 2 2 12701 20 125 137 131 +220 2 2 12701 20 126 138 133 +221 2 2 12701 20 127 139 132 +222 2 2 12701 22 145 148 143 +223 2 2 12701 22 143 149 145 +224 2 2 12701 22 152 153 57 +225 2 2 12701 22 36 155 151 +226 2 2 12701 22 19 155 18 +227 2 2 12701 22 56 152 57 +228 2 2 12701 22 147 157 150 +229 2 2 12701 22 155 36 37 +230 2 2 12701 22 155 19 150 +231 2 2 12701 22 143 157 147 +232 2 2 12701 22 144 153 152 +233 2 2 12701 22 151 155 146 +234 2 2 12701 22 146 155 150 +235 2 2 12701 22 150 157 146 +236 2 2 12701 22 20 158 147 +237 2 2 12701 22 148 160 35 +238 2 2 12701 22 55 159 149 +239 2 2 12701 22 144 156 147 +240 2 2 12701 22 147 156 143 +241 2 2 12701 22 21 158 20 +242 2 2 12701 22 35 160 34 +243 2 2 12701 22 54 159 55 +244 2 2 12701 22 54 154 159 +245 2 2 12701 22 34 154 33 +246 2 2 12701 22 153 158 22 +247 2 2 12701 22 147 150 20 +248 2 2 12701 22 35 151 148 +249 2 2 12701 22 149 152 55 +250 2 2 12701 22 154 54 53 +251 2 2 12701 22 154 34 160 +252 2 2 12701 22 22 158 21 +253 2 2 12701 22 55 152 56 +254 2 2 12701 22 20 150 19 +255 2 2 12701 22 36 151 35 +256 2 2 12701 22 147 158 144 +257 2 2 12701 22 145 160 148 +258 2 2 12701 22 149 159 145 +259 2 2 12701 22 148 157 143 +260 2 2 12701 22 143 156 149 +261 2 2 12701 22 145 159 154 +262 2 2 12701 22 144 158 153 +263 2 2 12701 22 154 160 145 +264 2 2 12701 22 18 155 5 +265 2 2 12701 22 4 153 22 +266 2 2 12701 22 33 154 3 +267 2 2 12701 22 57 153 4 +268 2 2 12701 22 5 155 37 +269 2 2 12701 22 3 154 53 +270 2 2 12701 22 151 157 148 +271 2 2 12701 22 149 156 152 +272 2 2 12701 22 146 157 151 +273 2 2 12701 22 152 156 144 +274 2 2 12701 24 162 165 161 +275 2 2 12701 24 161 167 162 +276 2 2 12701 24 39 172 38 +277 2 2 12701 24 170 173 62 +278 2 2 12701 24 19 172 168 +279 2 2 12701 24 172 39 169 +280 2 2 12701 24 61 170 62 +281 2 2 12701 24 172 19 18 +282 2 2 12701 24 168 175 165 +283 2 2 12701 24 165 175 161 +284 2 2 12701 24 164 172 169 +285 2 2 12701 24 168 172 164 +286 2 2 12701 24 163 173 170 +287 2 2 12701 24 164 175 168 +288 2 2 12701 24 165 177 20 +289 2 2 12701 24 40 178 166 +290 2 2 12701 24 60 176 167 +291 2 2 12701 24 163 174 166 +292 2 2 12701 24 166 174 161 +293 2 2 12701 24 20 177 21 +294 2 2 12701 24 41 178 40 +295 2 2 12701 24 59 176 60 +296 2 2 12701 24 59 171 176 +297 2 2 12701 24 21 171 22 +298 2 2 12701 24 173 178 42 +299 2 2 12701 24 20 168 165 +300 2 2 12701 24 166 169 40 +301 2 2 12701 24 167 170 60 +302 2 2 12701 24 171 59 58 +303 2 2 12701 24 42 178 41 +304 2 2 12701 24 171 21 177 +305 2 2 12701 24 40 169 39 +306 2 2 12701 24 19 168 20 +307 2 2 12701 24 60 170 61 +308 2 2 12701 24 162 177 165 +309 2 2 12701 24 166 178 163 +310 2 2 12701 24 167 176 162 +311 2 2 12701 24 161 175 166 +312 2 2 12701 24 161 174 167 +313 2 2 12701 24 162 176 171 +314 2 2 12701 24 171 177 162 +315 2 2 12701 24 163 178 173 +316 2 2 12701 24 38 172 5 +317 2 2 12701 24 4 171 58 +318 2 2 12701 24 22 171 4 +319 2 2 12701 24 5 172 18 +320 2 2 12701 24 62 173 6 +321 2 2 12701 24 6 173 42 +322 2 2 12701 24 166 175 169 +323 2 2 12701 24 167 174 170 +324 2 2 12701 24 170 174 163 +325 2 2 12701 24 169 175 164 +326 2 2 12701 26 64 189 188 +327 2 2 12701 26 39 190 186 +328 2 2 12701 26 14 191 187 +329 2 2 12701 26 189 64 63 +330 2 2 12701 26 190 39 38 +331 2 2 12701 26 191 14 13 +332 2 2 12701 26 188 189 181 +333 2 2 12701 26 187 191 182 +334 2 2 12701 26 186 190 180 +335 2 2 12701 26 184 197 65 +336 2 2 12701 26 183 195 40 +337 2 2 12701 26 185 196 15 +338 2 2 12701 26 184 194 182 +339 2 2 12701 26 179 194 184 +340 2 2 12701 26 183 193 181 +341 2 2 12701 26 179 193 183 +342 2 2 12701 26 185 192 180 +343 2 2 12701 26 179 192 185 +344 2 2 12701 26 65 197 66 +345 2 2 12701 26 40 195 41 +346 2 2 12701 26 15 196 16 +347 2 2 12701 26 17 196 190 +348 2 2 12701 26 66 191 67 +349 2 2 12701 26 41 189 42 +350 2 2 12701 26 15 187 185 +351 2 2 12701 26 40 186 183 +352 2 2 12701 26 65 188 184 +353 2 2 12701 26 16 196 17 +354 2 2 12701 26 191 66 197 +355 2 2 12701 26 189 41 195 +356 2 2 12701 26 14 187 15 +357 2 2 12701 26 39 186 40 +358 2 2 12701 26 64 188 65 +359 2 2 12701 26 182 197 184 +360 2 2 12701 26 180 196 185 +361 2 2 12701 26 181 195 183 +362 2 2 12701 26 183 192 179 +363 2 2 12701 26 185 194 179 +364 2 2 12701 26 184 193 179 +365 2 2 12701 26 190 196 180 +366 2 2 12701 26 189 195 181 +367 2 2 12701 26 191 197 182 +368 2 2 12701 26 42 189 6 +369 2 2 12701 26 6 189 63 +370 2 2 12701 26 67 191 7 +371 2 2 12701 26 7 191 13 +372 2 2 12701 26 5 190 38 +373 2 2 12701 26 17 190 5 +374 2 2 12701 26 186 192 183 +375 2 2 12701 26 188 193 184 +376 2 2 12701 26 187 194 185 +377 2 2 12701 26 180 192 186 +378 2 2 12701 26 181 193 188 +379 2 2 12701 26 182 194 187 +380 2 2 12701 28 16 209 205 +381 2 2 12701 28 34 208 206 +382 2 2 12701 28 49 210 207 +383 2 2 12701 28 209 16 17 +384 2 2 12701 28 208 34 33 +385 2 2 12701 28 210 49 48 +386 2 2 12701 28 205 209 201 +387 2 2 12701 28 206 208 199 +388 2 2 12701 28 207 210 200 +389 2 2 12701 28 202 214 15 +390 2 2 12701 28 203 216 35 +391 2 2 12701 28 204 215 50 +392 2 2 12701 28 202 212 200 +393 2 2 12701 28 198 212 202 +394 2 2 12701 28 198 213 203 +395 2 2 12701 28 203 213 201 +396 2 2 12701 28 204 211 199 +397 2 2 12701 28 198 211 204 +398 2 2 12701 28 15 214 14 +399 2 2 12701 28 35 216 36 +400 2 2 12701 28 50 215 51 +401 2 2 12701 28 51 208 52 +402 2 2 12701 28 37 216 209 +403 2 2 12701 28 14 210 13 +404 2 2 12701 28 15 205 202 +405 2 2 12701 28 35 206 203 +406 2 2 12701 28 50 207 204 +407 2 2 12701 28 208 51 215 +408 2 2 12701 28 36 216 37 +409 2 2 12701 28 210 14 214 +410 2 2 12701 28 16 205 15 +411 2 2 12701 28 34 206 35 +412 2 2 12701 28 49 207 50 +413 2 2 12701 28 201 216 203 +414 2 2 12701 28 200 214 202 +415 2 2 12701 28 199 215 204 +416 2 2 12701 28 202 213 198 +417 2 2 12701 28 204 212 198 +418 2 2 12701 28 203 211 198 +419 2 2 12701 28 208 215 199 +420 2 2 12701 28 209 216 201 +421 2 2 12701 28 210 214 200 +422 2 2 12701 28 37 209 5 +423 2 2 12701 28 13 210 7 +424 2 2 12701 28 7 210 48 +425 2 2 12701 28 5 209 17 +426 2 2 12701 28 3 208 33 +427 2 2 12701 28 52 208 3 +428 2 2 12701 28 205 213 202 +429 2 2 12701 28 206 211 203 +430 2 2 12701 28 207 212 204 +431 2 2 12701 28 199 211 206 +432 2 2 12701 28 201 213 205 +433 2 2 12701 28 200 212 207 +434 4 2 709 30 798 677 781 789 +435 4 2 709 30 780 618 693 762 +436 4 2 709 30 605 798 677 781 +437 4 2 709 30 684 822 750 810 +438 4 2 709 30 608 814 738 786 +439 4 2 709 30 622 791 682 770 +440 4 2 709 30 812 786 608 738 +441 4 2 709 30 792 637 690 771 +442 4 2 709 30 814 608 751 786 +443 4 2 709 30 602 819 708 733 +444 4 2 709 30 795 606 688 748 +445 4 2 709 30 822 783 810 595 +446 4 2 709 30 822 640 750 810 +447 4 2 709 30 615 796 724 767 +448 4 2 709 30 746 820 709 811 +449 4 2 709 30 791 622 701 770 +450 4 2 709 30 822 783 640 810 +451 4 2 709 30 812 589 684 713 +452 4 2 709 30 684 822 810 713 +453 4 2 709 30 629 792 690 771 +454 4 2 709 30 799 602 718 774 +455 4 2 709 30 812 786 713 608 +456 4 2 709 30 595 822 713 810 +457 4 2 709 30 787 614 651 756 +458 4 2 709 30 788 715 771 629 +459 4 2 709 30 802 615 767 796 +460 4 2 709 30 583 816 771 788 +461 4 2 709 30 684 812 757 765 +462 4 2 709 30 684 822 713 589 +463 4 2 709 30 794 604 660 753 +464 4 2 709 30 617 605 781 798 +465 4 2 709 30 608 812 684 713 +466 4 2 709 30 713 817 662 786 +467 4 2 709 30 632 820 687 745 +468 4 2 709 30 589 812 684 765 +469 4 2 709 30 784 735 619 697 +470 4 2 709 30 791 622 661 701 +471 4 2 709 30 800 606 702 729 +472 4 2 709 30 820 611 745 811 +473 4 2 709 30 814 608 692 751 +474 4 2 709 30 595 793 662 693 +475 4 2 709 30 807 604 629 794 +476 4 2 709 30 615 796 686 724 +477 4 2 709 30 816 630 771 788 +478 4 2 709 30 632 820 745 811 +479 4 2 709 30 767 615 633 724 +480 4 2 709 30 614 775 717 740 +481 4 2 709 30 801 606 702 800 +482 4 2 709 30 678 816 750 788 +483 4 2 709 30 662 793 672 751 +484 4 2 709 30 605 781 677 711 +485 4 2 709 30 678 816 684 750 +486 4 2 709 30 617 798 781 789 +487 4 2 709 30 605 781 711 749 +488 4 2 709 30 602 819 632 708 +489 4 2 709 30 812 589 674 765 +490 4 2 709 30 774 589 678 765 +491 4 2 709 30 614 787 651 675 +492 4 2 709 30 588 740 614 717 +493 4 2 709 30 678 816 788 630 +494 4 2 709 30 651 775 717 614 +495 4 2 709 30 821 618 681 783 +496 4 2 709 30 583 816 669 771 +497 4 2 709 30 605 798 625 677 +498 4 2 709 30 792 788 771 629 +499 4 2 709 30 604 782 732 753 +500 4 2 709 30 589 812 654 713 +501 4 2 709 30 777 610 736 763 +502 4 2 709 30 733 602 642 676 +503 4 2 709 30 617 664 712 790 +504 4 2 709 30 599 785 723 727 +505 4 2 709 30 711 605 625 677 +506 4 2 709 30 651 775 614 675 +507 4 2 709 30 812 608 684 757 +508 4 2 709 30 603 761 710 720 +509 4 2 709 30 777 610 698 736 +510 4 2 709 30 813 631 673 730 +511 4 2 709 30 793 595 662 672 +512 4 2 709 30 604 811 743 746 +513 4 2 709 30 695 602 642 733 +514 4 2 709 30 788 771 715 630 +515 4 2 709 30 816 583 750 788 +516 4 2 709 30 773 745 811 632 +517 4 2 709 30 630 788 678 715 +518 4 2 709 30 812 635 757 765 +519 4 2 709 30 598 682 815 770 +520 4 2 709 30 611 803 649 696 +521 4 2 709 30 770 598 622 701 +522 4 2 709 30 795 586 647 748 +523 4 2 709 30 800 606 729 748 +524 4 2 709 30 598 682 770 622 +525 4 2 709 30 816 630 669 771 +526 4 2 709 30 746 820 685 709 +527 4 2 709 30 764 783 595 810 +528 4 2 709 30 812 608 635 738 +529 4 2 709 30 812 589 654 674 +530 4 2 709 30 733 602 676 708 +531 4 2 709 30 657 800 702 729 +532 4 2 709 30 599 616 678 765 +533 4 2 709 30 616 774 678 765 +534 4 2 709 30 794 604 629 746 +535 4 2 709 30 605 617 691 798 +536 4 2 709 30 746 820 811 611 +537 4 2 709 30 753 604 660 743 +538 4 2 709 30 784 697 619 794 +539 4 2 709 30 811 604 660 794 +540 4 2 709 30 595 822 612 713 +541 4 2 709 30 611 820 653 685 +542 4 2 709 30 604 811 746 794 +543 4 2 709 30 807 619 697 794 +544 4 2 709 30 586 795 688 748 +545 4 2 709 30 812 786 738 654 +546 4 2 709 30 811 611 745 743 +547 4 2 709 30 614 756 644 651 +548 4 2 709 30 786 608 662 713 +549 4 2 709 30 596 721 638 671 +550 4 2 709 30 734 605 625 711 +551 4 2 709 30 594 811 660 794 +552 4 2 709 30 591 790 656 664 +553 4 2 709 30 586 795 647 694 +554 4 2 709 30 637 771 669 691 +555 4 2 709 30 598 815 705 770 +556 4 2 709 30 765 589 678 684 +557 4 2 709 30 742 602 718 799 +558 4 2 709 30 624 788 689 709 +559 4 2 709 30 795 586 688 628 +560 4 2 709 30 588 717 614 644 +561 4 2 709 30 604 811 660 743 +562 4 2 709 30 678 765 684 757 +563 4 2 709 30 746 820 611 685 +564 4 2 709 30 624 799 709 742 +565 4 2 709 30 782 604 697 753 +566 4 2 709 30 684 822 589 750 +567 4 2 709 30 758 608 684 713 +568 4 2 709 30 762 739 780 618 +569 4 2 709 30 807 604 697 782 +570 4 2 709 30 784 735 723 619 +571 4 2 709 30 635 812 674 765 +572 4 2 709 30 678 816 630 684 +573 4 2 709 30 608 786 662 751 +574 4 2 709 30 742 809 621 708 +575 4 2 709 30 820 632 709 811 +576 4 2 709 30 621 596 676 721 +577 4 2 709 30 799 624 709 788 +578 4 2 709 30 785 599 639 727 +579 4 2 709 30 758 672 692 751 +580 4 2 709 30 771 630 669 691 +581 4 2 709 30 761 603 686 720 +582 4 2 709 30 721 596 638 668 +583 4 2 709 30 591 645 707 790 +584 4 2 709 30 742 809 708 687 +585 4 2 709 30 640 821 588 783 +586 4 2 709 30 795 606 647 741 +587 4 2 709 30 640 821 726 588 +588 4 2 709 30 634 750 624 640 +589 4 2 709 30 624 742 718 799 +590 4 2 709 30 750 718 640 822 +591 4 2 709 30 619 663 723 784 +592 4 2 709 30 750 640 718 624 +593 4 2 709 30 822 783 595 612 +594 4 2 709 30 606 800 704 748 +595 4 2 709 30 604 794 697 753 +596 4 2 709 30 614 787 680 756 +597 4 2 709 30 607 758 672 692 +598 4 2 709 30 707 645 606 801 +599 4 2 709 30 604 807 732 782 +600 4 2 709 30 798 815 789 617 +601 4 2 709 30 765 599 616 706 +602 4 2 709 30 801 606 707 741 +603 4 2 709 30 649 592 661 732 +604 4 2 709 30 608 758 692 751 +605 4 2 709 30 696 611 653 685 +606 4 2 709 30 656 591 707 790 +607 4 2 709 30 615 802 675 796 +608 4 2 709 30 604 807 697 794 +609 4 2 709 30 635 765 674 706 +610 4 2 709 30 737 671 612 780 +611 4 2 709 30 792 788 583 771 +612 4 2 709 30 784 660 794 699 +613 4 2 709 30 769 598 705 770 +614 4 2 709 30 588 634 717 726 +615 4 2 709 30 821 588 783 681 +616 4 2 709 30 741 606 647 729 +617 4 2 709 30 620 768 701 755 +618 4 2 709 30 811 611 743 746 +619 4 2 709 30 806 600 731 628 +620 4 2 709 30 818 613 656 664 +621 4 2 709 30 780 618 671 612 +622 4 2 709 30 597 767 615 633 +623 4 2 709 30 820 653 745 611 +624 4 2 709 30 771 637 690 584 +625 4 2 709 30 794 594 629 715 +626 4 2 709 30 749 605 648 711 +627 4 2 709 30 822 783 612 640 +628 4 2 709 30 619 794 699 784 +629 4 2 709 30 717 614 644 651 +630 4 2 709 30 811 594 709 746 +631 4 2 709 30 792 592 629 690 +632 4 2 709 30 810 640 650 783 +633 4 2 709 30 747 721 596 671 +634 4 2 709 30 619 807 715 794 +635 4 2 709 30 807 584 629 690 +636 4 2 709 30 597 806 633 731 +637 4 2 709 30 807 622 690 592 +638 4 2 709 30 618 821 681 739 +639 4 2 709 30 807 629 715 794 +640 4 2 709 30 626 586 748 764 +641 4 2 709 30 591 669 688 704 +642 4 2 709 30 655 798 682 789 +643 4 2 709 30 586 805 764 626 +644 4 2 709 30 798 605 625 734 +645 4 2 709 30 609 730 673 719 +646 4 2 709 30 763 653 685 696 +647 4 2 709 30 610 777 703 763 +648 4 2 709 30 606 795 647 748 +649 4 2 709 30 797 616 663 706 +650 4 2 709 30 589 774 674 765 +651 4 2 709 30 731 597 615 633 +652 4 2 709 30 615 667 725 775 +653 4 2 709 30 798 655 677 789 +654 4 2 709 30 822 589 612 713 +655 4 2 709 30 742 632 687 708 +656 4 2 709 30 599 727 663 706 +657 4 2 709 30 584 771 629 690 +658 4 2 709 30 762 618 681 739 +659 4 2 709 30 807 622 732 782 +660 4 2 709 30 643 804 736 763 +661 4 2 709 30 602 718 642 676 +662 4 2 709 30 645 617 712 790 +663 4 2 709 30 616 599 678 715 +664 4 2 709 30 594 794 660 699 +665 4 2 709 30 727 599 663 723 +666 4 2 709 30 592 622 661 732 +667 4 2 709 30 606 591 688 704 +668 4 2 709 30 595 810 758 764 +669 4 2 709 30 596 621 668 721 +670 4 2 709 30 800 590 704 748 +671 4 2 709 30 748 607 647 729 +672 4 2 709 30 619 663 616 723 +673 4 2 709 30 784 660 753 794 +674 4 2 709 30 799 602 632 742 +675 4 2 709 30 608 812 635 757 +676 4 2 709 30 746 685 689 709 +677 4 2 709 30 806 597 633 700 +678 4 2 709 30 654 812 674 738 +679 4 2 709 30 784 697 794 753 +680 4 2 709 30 785 625 711 734 +681 4 2 709 30 802 615 680 767 +682 4 2 709 30 816 583 669 626 +683 4 2 709 30 783 588 640 650 +684 4 2 709 30 622 592 661 701 +685 4 2 709 30 713 817 786 654 +686 4 2 709 30 821 596 726 638 +687 4 2 709 30 712 617 749 781 +688 4 2 709 30 792 592 690 620 +689 4 2 709 30 655 807 697 782 +690 4 2 709 30 810 684 713 758 +691 4 2 709 30 737 671 747 612 +692 4 2 709 30 812 786 654 713 +693 4 2 709 30 606 741 702 729 +694 4 2 709 30 595 783 618 612 +695 4 2 709 30 747 596 721 676 +696 4 2 709 30 617 605 749 781 +697 4 2 709 30 718 596 642 676 +698 4 2 709 30 643 763 685 696 +699 4 2 709 30 605 734 691 704 +700 4 2 709 30 805 586 666 719 +701 4 2 709 30 779 667 725 731 +702 4 2 709 30 775 667 717 740 +703 4 2 709 30 607 800 657 729 +704 4 2 709 30 742 602 632 708 +705 4 2 709 30 606 748 647 729 +706 4 2 709 30 792 788 689 583 +707 4 2 709 30 594 616 678 715 +708 4 2 709 30 598 769 701 770 +709 4 2 709 30 592 661 701 768 +710 4 2 709 30 651 775 593 717 +711 4 2 709 30 616 599 663 706 +712 4 2 709 30 806 631 700 728 +713 4 2 709 30 599 616 663 723 +714 4 2 709 30 599 765 678 757 +715 4 2 709 30 596 726 638 668 +716 4 2 709 30 696 643 649 685 +717 4 2 709 30 792 583 637 771 +718 4 2 709 30 594 799 709 788 +719 4 2 709 30 606 795 636 741 +720 4 2 709 30 764 595 672 758 +721 4 2 709 30 588 634 726 640 +722 4 2 709 30 767 597 615 680 +723 4 2 709 30 812 635 674 738 +724 4 2 709 30 629 807 690 592 +725 4 2 709 30 594 632 709 799 +726 4 2 709 30 607 800 729 748 +727 4 2 709 30 595 713 612 662 +728 4 2 709 30 704 591 669 691 +729 4 2 709 30 772 612 737 747 +730 4 2 709 30 748 606 688 704 +731 4 2 709 30 792 788 629 689 +732 4 2 709 30 600 731 628 714 +733 4 2 709 30 637 771 691 584 +734 4 2 709 30 589 822 718 750 +735 4 2 709 30 798 815 682 789 +736 4 2 709 30 821 596 640 726 +737 4 2 709 30 814 608 683 692 +738 4 2 709 30 637 792 690 620 +739 4 2 709 30 606 801 702 741 +740 4 2 709 30 730 631 673 719 +741 4 2 709 30 602 774 642 718 +742 4 2 709 30 817 612 737 772 +743 4 2 709 30 624 788 678 750 +744 4 2 709 30 811 594 746 794 +745 4 2 709 30 591 617 664 759 +746 4 2 709 30 626 586 688 748 +747 4 2 709 30 614 740 659 680 +748 4 2 709 30 625 723 734 785 +749 4 2 709 30 594 788 629 715 +750 4 2 709 30 594 811 632 773 +751 4 2 709 30 594 709 632 811 +752 4 2 709 30 695 602 670 774 +753 4 2 709 30 603 779 627 725 +754 4 2 709 30 608 758 684 757 +755 4 2 709 30 619 794 715 616 +756 4 2 709 30 599 715 630 678 +757 4 2 709 30 675 802 680 787 +758 4 2 709 30 589 750 678 684 +759 4 2 709 30 606 741 636 707 +760 4 2 709 30 789 131 677 781 +761 4 2 709 30 765 599 635 757 +762 4 2 709 30 794 594 715 616 +763 4 2 709 30 591 606 645 704 +764 4 2 709 30 598 620 637 690 +765 4 2 709 30 771 584 630 691 +766 4 2 709 30 726 624 640 634 +767 4 2 709 30 607 764 672 758 +768 4 2 709 30 594 799 678 774 +769 4 2 709 30 807 735 697 619 +770 4 2 709 30 616 594 678 774 +771 4 2 709 30 609 730 666 722 +772 4 2 709 30 590 757 630 684 +773 4 2 709 30 776 659 681 760 +774 4 2 709 30 771 583 637 669 +775 4 2 709 30 774 589 642 718 +776 4 2 709 30 806 673 719 597 +777 4 2 709 30 605 798 691 734 +778 4 2 709 30 821 588 644 726 +779 4 2 709 30 774 602 642 695 +780 4 2 709 30 586 694 647 666 +781 4 2 709 30 617 591 664 790 +782 4 2 709 30 763 610 643 685 +783 4 2 709 30 795 647 694 741 +784 4 2 709 30 625 798 655 677 +785 4 2 709 30 742 621 676 708 +786 4 2 709 30 594 794 629 746 +787 4 2 709 30 669 626 688 748 +788 4 2 709 30 771 584 629 715 +789 4 2 709 30 594 746 629 709 +790 4 2 709 30 775 597 667 740 +791 4 2 709 30 630 757 678 684 +792 4 2 709 30 632 819 670 773 +793 4 2 709 30 602 742 676 708 +794 4 2 709 30 788 594 678 715 +795 4 2 709 30 811 594 660 773 +796 4 2 709 30 622 807 690 584 +797 4 2 709 30 740 775 680 614 +798 4 2 709 30 723 599 734 785 +799 4 2 709 30 740 597 673 680 +800 4 2 709 30 631 730 666 719 +801 4 2 709 30 758 590 684 757 +802 4 2 709 30 588 634 640 650 +803 4 2 709 30 816 590 630 684 +804 4 2 709 30 707 606 645 591 +805 4 2 709 30 615 667 775 597 +806 4 2 709 30 593 766 641 698 +807 4 2 709 30 604 592 629 746 +808 4 2 709 30 740 609 673 719 +809 4 2 709 30 622 807 655 782 +810 4 2 709 30 805 609 666 722 +811 4 2 709 30 807 735 655 697 +812 4 2 709 30 619 663 784 699 +813 4 2 709 30 620 592 701 768 +814 4 2 709 30 788 594 629 709 +815 4 2 709 30 585 633 679 731 +816 4 2 709 30 740 588 614 659 +817 4 2 709 30 593 775 667 717 +818 4 2 709 30 663 797 699 616 +819 4 2 709 30 761 603 658 686 +820 4 2 709 30 587 709 624 689 +821 4 2 709 30 584 807 629 715 +822 4 2 709 30 814 635 608 738 +823 4 2 709 30 602 799 670 774 +824 4 2 709 30 640 810 650 750 +825 4 2 709 30 596 747 642 676 +826 4 2 709 30 606 801 645 800 +827 4 2 709 30 606 800 645 704 +828 4 2 709 30 601 717 651 593 +829 4 2 709 30 597 740 673 719 +830 4 2 709 30 759 617 664 705 +831 4 2 709 30 596 621 676 742 +832 4 2 709 30 763 610 653 703 +833 4 2 709 30 617 645 712 749 +834 4 2 709 30 810 626 758 764 +835 4 2 709 30 584 771 630 715 +836 4 2 709 30 806 673 597 700 +837 4 2 709 30 588 634 650 717 +838 4 2 709 30 612 640 718 822 +839 4 2 709 30 610 763 643 736 +840 4 2 709 30 806 673 631 719 +841 4 2 709 30 589 612 718 822 +842 4 2 709 30 603 725 658 686 +843 4 2 709 30 599 765 635 706 +844 4 2 709 30 610 763 653 685 +845 4 2 709 30 759 669 691 637 +846 4 2 709 30 611 696 649 685 +847 4 2 709 30 821 618 638 739 +848 4 2 709 30 154 802 675 787 +849 4 2 709 30 595 810 713 758 +850 4 2 709 30 601 808 644 752 +851 4 2 709 30 597 775 615 680 +852 4 2 709 30 610 643 685 627 +853 4 2 709 30 756 614 644 659 +854 4 2 709 30 631 806 719 628 +855 4 2 709 30 759 591 656 664 +856 4 2 709 30 726 601 634 717 +857 4 2 709 30 624 799 718 774 +858 4 2 709 30 659 614 680 756 +859 4 2 709 30 694 586 631 666 +860 4 2 709 30 819 602 632 670 +861 4 2 709 30 788 629 689 709 +862 4 2 709 30 818 613 769 778 +863 4 2 709 30 602 819 733 695 +864 4 2 709 30 798 655 682 584 +865 4 2 709 30 604 807 629 592 +866 4 2 709 30 726 588 644 717 +867 4 2 709 30 820 653 687 745 +868 4 2 709 30 714 600 688 628 +869 4 2 709 30 612 596 671 747 +870 4 2 709 30 806 597 628 731 +871 4 2 709 30 599 757 630 734 +872 4 2 709 30 599 785 639 734 +873 4 2 709 30 613 778 665 769 +874 4 2 709 30 819 602 670 695 +875 4 2 709 30 592 792 629 746 +876 4 2 709 30 821 588 681 776 +877 4 2 709 30 591 617 645 790 +878 4 2 709 30 613 665 714 759 +879 4 2 709 30 740 680 775 597 +880 4 2 709 30 586 626 688 628 +881 4 2 709 30 588 740 717 650 +882 4 2 709 30 619 663 699 616 +883 4 2 709 30 648 702 800 801 +884 4 2 709 30 620 769 665 755 +885 4 2 709 30 597 806 628 719 +886 4 2 709 30 606 688 636 795 +887 4 2 709 30 806 673 700 631 +888 4 2 709 30 752 726 601 668 +889 4 2 709 30 820 587 709 742 +890 4 2 709 30 615 796 658 686 +891 4 2 709 30 734 630 691 704 +892 4 2 709 30 613 759 656 664 +893 4 2 709 30 757 590 630 734 +894 4 2 709 30 725 615 658 686 +895 4 2 709 30 594 794 699 616 +896 4 2 709 30 814 635 683 608 +897 4 2 709 30 630 704 669 691 +898 4 2 709 30 727 599 635 706 +899 4 2 709 30 758 607 657 692 +900 4 2 709 30 792 685 627 689 +901 4 2 709 30 797 616 670 699 +902 4 2 709 30 584 598 637 690 +903 4 2 709 30 618 780 671 739 +904 4 2 709 30 583 788 624 750 +905 4 2 709 30 595 793 693 646 +906 4 2 709 30 617 605 645 749 +907 4 2 709 30 715 734 599 630 +908 4 2 709 30 799 594 678 788 +909 4 2 709 30 749 605 645 648 +910 4 2 709 30 766 593 658 698 +911 4 2 709 30 587 742 624 709 +912 4 2 709 30 681 821 776 739 +913 4 2 709 30 757 599 630 678 +914 4 2 709 30 643 804 710 736 +915 4 2 709 30 799 632 709 742 +916 4 2 709 30 775 614 675 680 +917 4 2 709 30 617 591 691 759 +918 4 2 709 30 773 594 660 699 +919 4 2 709 30 629 746 689 709 +920 4 2 709 30 583 792 637 779 +921 4 2 709 30 798 584 691 734 +922 4 2 709 30 820 632 687 742 +923 4 2 709 30 794 619 699 616 +924 4 2 709 30 629 792 689 746 +925 4 2 709 30 609 681 659 760 +926 4 2 709 30 641 777 610 698 +927 4 2 709 30 612 718 640 596 +928 4 2 709 30 608 757 635 683 +929 4 2 709 30 609 805 666 719 +930 4 2 709 30 603 620 665 720 +931 4 2 709 30 586 719 631 666 +932 4 2 709 30 615 667 731 725 +933 4 2 709 30 618 762 646 693 +934 4 2 709 30 624 799 678 788 +935 4 2 709 30 587 820 687 742 +936 4 2 709 30 754 587 652 703 +937 4 2 709 30 742 602 676 718 +938 4 2 709 30 612 772 642 747 +939 4 2 709 30 637 792 620 779 +940 4 2 709 30 601 651 644 808 +941 4 2 709 30 603 585 686 720 +942 4 2 709 30 612 780 693 737 +943 4 2 709 30 612 780 618 693 +944 4 2 709 30 752 726 668 638 +945 4 2 709 30 730 609 666 719 +946 4 2 709 30 587 754 653 703 +947 4 2 709 30 620 755 665 720 +948 4 2 709 30 592 768 649 661 +949 4 2 709 30 614 787 675 680 +950 4 2 709 30 759 669 637 714 +951 4 2 709 30 626 764 748 758 +952 4 2 709 30 641 777 703 610 +953 4 2 709 30 596 742 676 718 +954 4 2 709 30 615 667 597 731 +955 4 2 709 30 734 590 630 704 +956 4 2 709 30 800 590 648 704 +957 4 2 709 30 620 603 710 720 +958 4 2 709 30 595 612 618 693 +959 4 2 709 30 817 612 662 737 +960 4 2 709 30 718 596 624 640 +961 4 2 709 30 585 724 615 686 +962 4 2 709 30 605 704 645 648 +963 4 2 709 30 765 616 674 706 +964 4 2 709 30 716 600 613 679 +965 4 2 709 30 792 685 689 746 +966 4 2 709 30 598 769 705 759 +967 4 2 709 30 775 615 658 725 +968 4 2 709 30 613 818 656 716 +969 4 2 709 30 811 660 743 773 +970 4 2 709 30 599 723 715 616 +971 4 2 709 30 598 584 622 690 +972 4 2 709 30 634 750 583 624 +973 4 2 709 30 632 820 709 742 +974 4 2 709 30 651 775 675 593 +975 4 2 709 30 669 748 688 704 +976 4 2 709 30 774 797 670 695 +977 4 2 709 30 635 639 683 757 +978 4 2 709 30 584 734 630 691 +979 4 2 709 30 713 817 612 662 +980 4 2 709 30 589 774 642 695 +981 4 2 709 30 607 764 623 672 +982 4 2 709 30 610 689 627 685 +983 4 2 709 30 762 618 646 681 +984 4 2 709 30 778 613 679 716 +985 4 2 709 30 616 594 670 699 +986 4 2 709 30 723 619 715 616 +987 4 2 709 30 616 797 674 706 +988 4 2 709 30 739 618 638 671 +989 4 2 709 30 604 592 649 732 +990 4 2 709 30 796 615 658 675 +991 4 2 709 30 599 639 635 757 +992 4 2 709 30 645 648 704 800 +993 4 2 709 30 640 821 783 612 +994 4 2 709 30 807 604 732 592 +995 4 2 709 30 592 598 622 690 +996 4 2 709 30 759 669 591 691 +997 4 2 709 30 592 598 690 620 +998 4 2 709 30 602 799 632 670 +999 4 2 709 30 820 587 685 709 +1000 4 2 709 30 592 746 649 685 +1001 4 2 709 30 746 611 649 685 +1002 4 2 709 30 588 821 644 776 +1003 4 2 709 30 622 807 732 592 +1004 4 2 709 30 788 583 624 689 +1005 4 2 709 30 585 603 686 725 +1006 4 2 709 30 615 585 633 724 +1007 4 2 709 30 112 814 692 751 +1008 4 2 709 30 799 594 670 774 +1009 4 2 709 30 766 593 651 675 +1010 4 2 709 30 709 587 685 689 +1011 4 2 709 30 617 605 691 704 +1012 4 2 709 30 714 591 669 688 +1013 4 2 709 30 796 149 686 724 +1014 4 2 709 30 601 808 641 651 +1015 4 2 709 30 618 821 612 783 +1016 4 2 709 30 774 797 616 670 +1017 4 2 709 30 757 599 639 734 +1018 4 2 709 30 588 776 644 659 +1019 4 2 709 30 626 810 650 764 +1020 4 2 709 30 779 637 714 665 +1021 4 2 709 30 587 624 634 689 +1022 4 2 709 30 643 610 736 627 +1023 4 2 709 30 805 650 764 626 +1024 4 2 709 30 731 585 615 725 +1025 4 2 709 30 820 587 653 685 +1026 4 2 709 30 615 633 585 731 +1027 4 2 709 30 626 628 669 688 +1028 4 2 709 30 689 583 624 634 +1029 4 2 709 30 588 776 659 681 +1030 4 2 709 30 137 781 712 749 +1031 4 2 709 30 591 636 656 707 +1032 4 2 709 30 818 613 705 769 +1033 4 2 709 30 645 648 800 801 +1034 4 2 709 30 775 593 667 725 +1035 4 2 709 30 710 620 755 768 +1036 4 2 709 30 637 779 620 665 +1037 4 2 709 30 610 593 641 698 +1038 4 2 709 30 636 795 694 741 +1039 4 2 709 30 818 613 664 705 +1040 4 2 709 30 685 592 643 649 +1041 4 2 709 30 752 726 644 601 +1042 4 2 709 30 613 759 664 705 +1043 4 2 709 30 601 644 651 717 +1044 4 2 709 30 585 603 665 720 +1045 4 2 709 30 592 604 649 746 +1046 4 2 709 30 717 601 634 593 +1047 4 2 709 30 770 167 791 682 +1048 4 2 709 30 659 588 614 644 +1049 4 2 709 30 599 635 639 727 +1050 4 2 709 30 650 609 719 805 +1051 4 2 709 30 636 600 716 728 +1052 4 2 709 30 601 726 644 717 +1053 4 2 709 30 725 667 779 627 +1054 4 2 709 30 615 775 658 675 +1055 4 2 709 30 799 624 678 774 +1056 4 2 709 30 740 609 659 673 +1057 4 2 709 30 681 618 646 783 +1058 4 2 709 30 598 592 622 701 +1059 4 2 709 30 764 607 748 758 +1060 4 2 709 30 178 782 697 753 +1061 4 2 709 30 667 583 634 650 +1062 4 2 709 30 766 593 641 651 +1063 4 2 709 30 592 768 643 649 +1064 4 2 709 30 592 598 620 701 +1065 4 2 709 30 725 585 615 686 +1066 4 2 709 30 650 634 667 717 +1067 4 2 709 30 597 767 633 700 +1068 4 2 709 30 604 753 732 743 +1069 4 2 709 30 774 589 674 695 +1070 4 2 709 30 613 818 716 778 +1071 4 2 709 30 774 797 695 674 +1072 4 2 709 30 631 813 673 700 +1073 4 2 709 30 742 596 624 718 +1074 4 2 709 30 769 598 620 665 +1075 4 2 709 30 659 740 673 680 +1076 4 2 709 30 591 617 691 704 +1077 4 2 709 30 589 774 678 750 +1078 4 2 709 30 650 609 740 719 +1079 4 2 709 30 623 646 764 805 +1080 4 2 709 30 586 805 623 764 +1081 4 2 709 30 769 620 701 755 +1082 4 2 709 30 761 603 710 736 +1083 4 2 709 30 764 783 810 650 +1084 4 2 709 30 805 783 764 650 +1085 4 2 709 30 594 774 616 670 +1086 4 2 709 30 717 593 634 667 +1087 4 2 709 30 600 716 613 656 +1088 4 2 709 30 665 637 714 759 +1089 4 2 709 30 819 187 708 733 +1090 4 2 709 30 816 583 626 750 +1091 4 2 709 30 587 820 653 687 +1092 4 2 709 30 759 669 714 591 +1093 4 2 709 30 584 655 622 807 +1094 4 2 709 30 810 626 650 750 +1095 4 2 709 30 634 750 640 650 +1096 4 2 709 30 654 589 642 695 +1097 4 2 709 30 821 644 776 739 +1098 4 2 709 30 584 622 655 682 +1099 4 2 709 30 665 603 779 620 +1100 4 2 709 30 86 813 673 730 +1101 4 2 709 30 774 589 718 750 +1102 4 2 709 30 594 773 670 699 +1103 4 2 709 30 740 667 717 650 +1104 4 2 709 30 605 617 645 704 +1105 4 2 709 30 603 779 620 627 +1106 4 2 709 30 792 627 620 779 +1107 4 2 709 30 598 682 622 584 +1108 4 2 709 30 813 73 631 730 +1109 4 2 709 30 799 594 632 670 +1110 4 2 709 30 628 714 669 688 +1111 4 2 709 30 589 654 674 695 +1112 4 2 709 30 769 613 759 665 +1113 4 2 709 30 162 791 701 770 +1114 4 2 709 30 758 595 662 713 +1115 4 2 709 30 720 620 755 710 +1116 4 2 709 30 593 601 641 651 +1117 4 2 709 30 814 110 738 786 +1118 4 2 709 30 754 587 653 687 +1119 4 2 709 30 658 610 736 698 +1120 4 2 709 30 598 769 620 701 +1121 4 2 709 30 817 116 654 772 +1122 4 2 709 30 758 662 672 751 +1123 4 2 709 30 608 758 662 713 +1124 4 2 709 30 807 584 619 715 +1125 4 2 709 30 636 600 656 716 +1126 4 2 709 30 726 624 596 640 +1127 4 2 709 30 715 734 630 584 +1128 4 2 709 30 807 735 584 655 +1129 4 2 709 30 646 595 618 693 +1130 4 2 709 30 593 775 658 725 +1131 4 2 709 30 645 591 704 617 +1132 4 2 709 30 595 646 618 783 +1133 4 2 709 30 750 684 626 816 +1134 4 2 709 30 805 586 623 666 +1135 4 2 709 30 758 608 662 751 +1136 4 2 709 30 588 681 650 783 +1137 4 2 709 30 595 758 662 672 +1138 4 2 709 30 600 806 728 628 +1139 4 2 709 30 800 648 657 702 +1140 4 2 709 30 769 613 705 759 +1141 4 2 709 30 693 595 612 662 +1142 4 2 709 30 737 612 662 693 +1143 4 2 709 30 603 627 658 725 +1144 4 2 709 30 608 758 683 692 +1145 4 2 709 30 800 590 748 758 +1146 4 2 709 30 793 595 672 646 +1147 4 2 709 30 593 766 658 675 +1148 4 2 709 30 591 606 636 707 +1149 4 2 709 30 778 585 613 665 +1150 4 2 709 30 774 616 674 765 +1151 4 2 709 30 586 628 631 719 +1152 4 2 709 30 110 814 751 786 +1153 4 2 709 30 606 636 688 591 +1154 4 2 709 30 620 710 643 768 +1155 4 2 709 30 585 779 725 731 +1156 4 2 709 30 802 53 680 787 +1157 4 2 709 30 639 785 711 734 +1158 4 2 709 30 704 590 630 669 +1159 4 2 709 30 590 816 630 669 +1160 4 2 709 30 610 689 685 587 +1161 4 2 709 30 603 761 658 736 +1162 4 2 709 30 666 586 623 647 +1163 4 2 709 30 594 773 632 670 +1164 4 2 709 30 775 593 658 675 +1165 4 2 709 30 766 35 641 698 +1166 4 2 709 30 605 734 648 711 +1167 4 2 709 30 805 783 681 646 +1168 4 2 709 30 643 592 620 768 +1169 4 2 709 30 583 667 634 689 +1170 4 2 709 30 715 734 723 599 +1171 4 2 709 30 596 642 612 718 +1172 4 2 709 30 658 610 698 593 +1173 4 2 709 30 624 774 718 750 +1174 4 2 709 30 743 604 649 732 +1175 4 2 709 30 626 586 719 628 +1176 4 2 709 30 779 669 714 637 +1177 4 2 709 30 764 783 646 595 +1178 4 2 709 30 615 675 680 775 +1179 4 2 709 30 774 797 674 616 +1180 4 2 709 30 821 596 612 640 +1181 4 2 709 30 596 612 642 747 +1182 4 2 709 30 750 626 684 810 +1183 4 2 709 30 598 665 637 620 +1184 4 2 709 30 742 809 652 621 +1185 4 2 709 30 774 624 678 750 +1186 4 2 709 30 806 600 633 731 +1187 4 2 709 30 611 746 649 743 +1188 4 2 709 30 646 595 672 764 +1189 4 2 709 30 773 745 743 811 +1190 4 2 709 30 805 783 646 764 +1191 4 2 709 30 792 685 746 592 +1192 4 2 709 30 584 798 625 734 +1193 4 2 709 30 703 587 610 653 +1194 4 2 709 30 609 805 646 722 +1195 4 2 709 30 652 752 601 668 +1196 4 2 709 30 798 617 691 584 +1197 4 2 709 30 790 127 664 712 +1198 4 2 709 30 598 769 759 665 +1199 4 2 709 30 134 711 625 677 +1200 4 2 709 30 805 586 719 626 +1201 4 2 709 30 623 805 666 722 +1202 4 2 709 30 634 750 650 583 +1203 4 2 709 30 589 718 612 642 +1204 4 2 709 30 746 604 649 743 +1205 4 2 709 30 12 817 737 772 +1206 4 2 709 30 652 809 687 754 +1207 4 2 709 30 600 591 714 688 +1208 4 2 709 30 55 767 633 724 +1209 4 2 709 30 731 600 633 679 +1210 4 2 709 30 665 598 637 759 +1211 4 2 709 30 810 626 684 758 +1212 4 2 709 30 742 596 621 668 +1213 4 2 709 30 650 805 719 626 +1214 4 2 709 30 601 726 634 587 +1215 4 2 709 30 623 646 672 764 +1216 4 2 709 30 803 611 649 743 +1217 4 2 709 30 750 583 626 650 +1218 4 2 709 30 779 669 637 583 +1219 4 2 709 30 600 714 613 679 +1220 4 2 709 30 731 600 679 714 +1221 4 2 709 30 586 764 647 748 +1222 4 2 709 30 610 689 593 627 +1223 4 2 709 30 703 601 587 652 +1224 4 2 709 30 587 685 610 653 +1225 4 2 709 30 803 172 649 696 +1226 4 2 709 30 805 681 609 646 +1227 4 2 709 30 760 609 646 722 +1228 4 2 709 30 638 821 644 726 +1229 4 2 709 30 10 793 662 751 +1230 4 2 709 30 627 643 620 603 +1231 4 2 709 30 603 643 736 627 +1232 4 2 709 30 38 803 611 696 +1233 4 2 709 30 159 802 767 796 +1234 4 2 709 30 590 800 657 758 +1235 4 2 709 30 768 165 661 701 +1236 4 2 709 30 646 623 722 805 +1237 4 2 709 30 681 609 646 760 +1238 4 2 709 30 584 735 625 655 +1239 4 2 709 30 714 591 656 759 +1240 4 2 709 30 586 764 623 647 +1241 4 2 709 30 607 800 748 758 +1242 4 2 709 30 620 710 603 643 +1243 4 2 709 30 615 680 675 802 +1244 4 2 709 30 798 584 625 655 +1245 4 2 709 30 603 736 643 710 +1246 4 2 709 30 821 638 644 739 +1247 4 2 709 30 714 600 613 656 +1248 4 2 709 30 758 657 683 692 +1249 4 2 709 30 590 757 639 734 +1250 4 2 709 30 600 806 700 728 +1251 4 2 709 30 626 628 719 650 +1252 4 2 709 30 586 795 694 628 +1253 4 2 709 30 807 735 619 584 +1254 4 2 709 30 590 758 626 748 +1255 4 2 709 30 636 795 688 628 +1256 4 2 709 30 764 607 647 748 +1257 4 2 709 30 800 607 657 758 +1258 4 2 709 30 806 631 728 628 +1259 4 2 709 30 600 628 636 688 +1260 4 2 709 30 603 779 725 585 +1261 4 2 709 30 667 583 779 792 +1262 4 2 709 30 590 748 669 704 +1263 4 2 709 30 725 667 627 593 +1264 4 2 709 30 726 624 634 587 +1265 4 2 709 30 588 681 659 740 +1266 4 2 709 30 798 815 584 682 +1267 4 2 709 30 703 601 652 641 +1268 4 2 709 30 627 593 658 725 +1269 4 2 709 30 607 764 647 623 +1270 4 2 709 30 759 637 691 584 +1271 4 2 709 30 681 609 659 740 +1272 4 2 709 30 759 598 637 584 +1273 4 2 709 30 734 605 648 704 +1274 4 2 709 30 752 726 638 644 +1275 4 2 709 30 744 590 657 683 +1276 4 2 709 30 803 649 732 743 +1277 4 2 709 30 600 591 688 636 +1278 4 2 709 30 585 779 714 665 +1279 4 2 709 30 742 726 624 596 +1280 4 2 709 30 610 689 587 593 +1281 4 2 709 30 628 586 631 694 +1282 4 2 709 30 805 783 650 681 +1283 4 2 709 30 613 714 656 759 +1284 4 2 709 30 815 60 682 789 +1285 4 2 709 30 665 779 603 585 +1286 4 2 709 30 601 587 634 593 +1287 4 2 709 30 90 780 693 762 +1288 4 2 709 30 598 682 584 815 +1289 4 2 709 30 731 597 628 667 +1290 4 2 709 30 592 792 627 620 +1291 4 2 709 30 587 754 652 687 +1292 4 2 709 30 634 587 689 593 +1293 4 2 709 30 779 585 714 731 +1294 4 2 709 30 665 585 613 714 +1295 4 2 709 30 598 617 759 705 +1296 4 2 709 30 781 125 711 749 +1297 4 2 709 30 679 600 633 700 +1298 4 2 709 30 749 124 645 712 +1299 4 2 709 30 590 816 626 684 +1300 4 2 709 30 628 779 714 731 +1301 4 2 709 30 758 608 683 757 +1302 4 2 709 30 816 590 626 669 +1303 4 2 709 30 585 778 613 679 +1304 4 2 709 30 610 703 641 593 +1305 4 2 709 30 627 603 658 736 +1306 4 2 709 30 600 591 656 714 +1307 4 2 709 30 652 742 621 668 +1308 4 2 709 30 742 726 596 668 +1309 4 2 709 30 41 697 784 753 +1310 4 2 709 30 742 809 687 652 +1311 4 2 709 30 781 125 677 711 +1312 4 2 709 30 658 610 593 627 +1313 4 2 709 30 600 679 716 728 +1314 4 2 709 30 598 617 705 815 +1315 4 2 709 30 658 610 627 736 +1316 4 2 709 30 590 748 626 669 +1317 4 2 709 30 821 596 638 612 +1318 4 2 709 30 600 591 636 656 +1319 4 2 709 30 583 667 689 792 +1320 4 2 709 30 627 667 779 792 +1321 4 2 709 30 713 589 612 654 +1322 4 2 709 30 724 159 767 796 +1323 4 2 709 30 713 817 654 612 +1324 4 2 709 30 742 726 587 624 +1325 4 2 709 30 612 817 654 772 +1326 4 2 709 30 590 734 648 704 +1327 4 2 709 30 643 592 627 620 +1328 4 2 709 30 612 596 638 671 +1329 4 2 709 30 650 609 805 681 +1330 4 2 709 30 48 747 671 721 +1331 4 2 709 30 758 590 626 684 +1332 4 2 709 30 600 806 633 700 +1333 4 2 709 30 590 758 683 757 +1334 4 2 709 30 772 7 642 747 +1335 4 2 709 30 652 742 587 687 +1336 4 2 709 30 737 671 780 99 +1337 4 2 709 30 618 821 638 612 +1338 4 2 709 30 780 90 693 737 +1339 4 2 709 30 648 590 657 744 +1340 4 2 709 30 151 777 698 736 +1341 4 2 709 30 631 628 694 728 +1342 4 2 709 30 797 65 674 706 +1343 4 2 709 30 790 124 712 645 +1344 4 2 709 30 587 703 610 593 +1345 4 2 709 30 706 663 64 727 +1346 4 2 709 30 683 590 639 744 +1347 4 2 709 30 735 173 655 697 +1348 4 2 709 30 667 627 689 792 +1349 4 2 709 30 792 685 592 627 +1350 4 2 709 30 618 612 638 671 +1351 4 2 709 30 802 145 675 796 +1352 4 2 709 30 592 643 627 685 +1353 4 2 709 30 683 639 590 757 +1354 4 2 709 30 205 809 652 754 +1355 4 2 709 30 165 791 661 701 +1356 4 2 709 30 628 600 636 728 +1357 4 2 709 30 679 600 700 728 +1358 4 2 709 30 754 209 653 703 +1359 4 2 709 30 782 166 732 753 +1360 4 2 709 30 710 147 720 761 +1361 4 2 709 30 590 758 657 683 +1362 4 2 709 30 703 601 641 593 +1363 4 2 709 30 33 787 651 756 +1364 4 2 709 30 148 766 658 698 +1365 4 2 709 30 667 634 689 593 +1366 4 2 709 30 650 609 681 740 +1367 4 2 709 30 122 744 657 683 +1368 4 2 709 30 779 628 667 731 +1369 4 2 709 30 617 759 691 584 +1370 4 2 709 30 784 735 697 42 +1371 4 2 709 30 703 601 593 587 +1372 4 2 709 30 621 200 668 721 +1373 4 2 709 30 768 177 701 755 +1374 4 2 709 30 14 733 676 708 +1375 4 2 709 30 817 11 662 786 +1376 4 2 709 30 793 9 672 751 +1377 4 2 709 30 740 597 667 719 +1378 4 2 709 30 58 818 705 769 +1379 4 2 709 30 648 657 590 800 +1380 4 2 709 30 598 617 584 759 +1381 4 2 709 30 583 626 628 669 +1382 4 2 709 30 642 654 612 589 +1383 4 2 709 30 27 741 647 729 +1384 4 2 709 30 164 803 649 732 +1385 4 2 709 30 585 731 679 714 +1386 4 2 709 30 681 588 650 740 +1387 4 2 709 30 183 773 660 699 +1388 4 2 709 30 667 740 719 650 +1389 4 2 709 30 136 818 664 705 +1390 4 2 709 30 598 617 815 584 +1391 4 2 709 30 627 667 689 593 +1392 4 2 709 30 714 585 613 679 +1393 4 2 709 30 798 815 617 584 +1394 4 2 709 30 784 660 699 195 +1395 4 2 709 30 762 780 739 91 +1396 4 2 709 30 803 38 611 743 +1397 4 2 709 30 809 16 687 754 +1398 4 2 709 30 106 814 683 692 +1399 4 2 709 30 804 155 736 763 +1400 4 2 709 30 733 191 642 695 +1401 4 2 709 30 597 719 628 667 +1402 4 2 709 30 11 817 662 737 +1403 4 2 709 30 155 777 736 763 +1404 4 2 709 30 201 754 652 703 +1405 4 2 709 30 140 801 707 741 +1406 4 2 709 30 734 639 648 711 +1407 4 2 709 30 622 174 682 791 +1408 4 2 709 30 730 30 666 722 +1409 4 2 709 30 164 732 649 661 +1410 4 2 709 30 163 782 655 697 +1411 4 2 709 30 9 692 672 751 +1412 4 2 709 30 47 729 657 702 +1413 4 2 709 30 40 753 660 743 +1414 4 2 709 30 763 5 653 696 +1415 4 2 709 30 737 671 99 747 +1416 4 2 709 30 628 636 694 728 +1417 4 2 709 30 641 777 698 36 +1418 4 2 709 30 628 650 667 719 +1419 4 2 709 30 83 728 631 694 +1420 4 2 709 30 15 809 687 708 +1421 4 2 709 30 789 61 655 677 +1422 4 2 709 30 642 612 654 772 +1423 4 2 709 30 741 135 702 729 +1424 4 2 709 30 607 115 657 692 +1425 4 2 709 30 815 176 705 770 +1426 4 2 709 30 132 790 656 707 +1427 4 2 709 30 744 590 639 648 +1428 4 2 709 30 13 733 642 676 +1429 4 2 709 30 601 587 652 668 +1430 4 2 709 30 786 10 662 751 +1431 4 2 709 30 144 761 686 720 +1432 4 2 709 30 767 597 680 700 +1433 4 2 709 30 818 136 664 656 +1434 4 2 709 30 652 742 668 587 +1435 4 2 709 30 726 601 668 587 +1436 4 2 709 30 161 622 661 791 +1437 4 2 709 30 626 583 628 650 +1438 4 2 709 30 5 611 653 696 +1439 4 2 709 30 638 49 671 721 +1440 4 2 709 30 597 700 673 680 +1441 4 2 709 30 730 77 631 666 +1442 4 2 709 30 123 727 635 706 +1443 4 2 709 30 107 786 654 738 +1444 4 2 709 30 819 185 632 708 +1445 4 2 709 30 790 128 645 707 +1446 4 2 709 30 43 785 625 711 +1447 4 2 709 30 742 726 668 587 +1448 4 2 709 30 793 96 662 693 +1449 4 2 709 30 590 734 639 648 +1450 4 2 709 30 117 639 727 785 +1451 4 2 709 30 747 210 676 721 +1452 4 2 709 30 54 802 680 767 +1453 4 2 709 30 779 669 628 714 +1454 4 2 709 30 641 777 36 703 +1455 4 2 709 30 739 638 644 752 +1456 4 2 709 30 143 761 658 686 +1457 4 2 709 30 786 817 107 654 +1458 4 2 709 30 128 801 645 707 +1459 4 2 709 30 583 667 628 650 +1460 4 2 709 30 141 648 711 749 +1461 4 2 709 30 814 635 738 105 +1462 4 2 709 30 87 693 646 762 +1463 4 2 709 30 129 781 617 712 +1464 4 2 709 30 667 583 628 779 +1465 4 2 709 30 804 150 710 736 +1466 4 2 709 30 723 584 619 735 +1467 4 2 709 30 63 727 663 723 +1468 4 2 709 30 125 781 137 749 +1469 4 2 709 30 584 723 619 715 +1470 4 2 709 30 647 607 2 729 +1471 4 2 709 30 584 723 625 735 +1472 4 2 709 30 77 694 631 666 +1473 4 2 709 30 819 179 670 773 +1474 4 2 709 30 670 197 695 797 +1475 4 2 709 30 708 14 621 676 +1476 4 2 709 30 621 809 652 202 +1477 4 2 709 30 801 135 702 741 +1478 4 2 709 30 68 813 631 700 +1479 4 2 709 30 785 727 63 723 +1480 4 2 709 30 181 784 663 699 +1481 4 2 709 30 795 636 694 628 +1482 4 2 709 30 787 33 651 675 +1483 4 2 709 30 723 584 625 734 +1484 4 2 709 30 715 734 584 723 +1485 4 2 709 30 779 669 583 628 +1486 4 2 709 30 777 37 703 763 +1487 4 2 709 30 207 638 668 721 +1488 4 2 709 30 170 789 655 682 +1489 4 2 709 30 214 721 621 676 +1490 4 2 709 30 796 143 658 686 +1491 4 2 709 30 785 6 625 723 +1492 4 2 709 30 770 167 682 815 +1493 4 2 709 30 6 735 625 723 +1494 4 2 709 30 182 733 819 695 +1495 4 2 709 30 814 635 105 683 +1496 4 2 709 30 98 760 659 776 +1497 4 2 709 30 801 133 648 702 +1498 4 2 709 30 692 106 657 683 +1499 4 2 709 30 152 724 585 686 +1500 4 2 709 30 706 64 663 797 +1501 4 2 709 30 47 607 657 729 +1502 4 2 709 30 78 778 679 716 +1503 4 2 709 30 34 766 651 675 +1504 4 2 709 30 182 670 695 819 +1505 4 2 709 30 196 745 632 687 +1506 4 2 709 30 813 70 673 700 +1507 4 2 709 30 741 26 636 707 +1508 4 2 709 30 114 683 639 744 +1509 4 2 709 30 728 68 631 700 +1510 4 2 709 30 185 819 632 773 +1511 4 2 709 30 809 14 621 708 +1512 4 2 709 30 747 13 642 676 +1513 4 2 709 30 699 188 797 663 +1514 4 2 709 30 96 737 662 693 +1515 4 2 709 30 767 75 633 700 +1516 4 2 709 30 150 761 710 736 +1517 4 2 709 30 793 92 693 646 +1518 4 2 709 30 12 772 737 747 +1519 4 2 709 30 89 776 681 760 +1520 4 2 709 30 21 720 755 710 +1521 4 2 709 30 127 790 664 656 +1522 4 2 709 30 169 803 732 743 +1523 4 2 709 30 735 62 625 655 +1524 4 2 709 30 773 745 632 180 +1525 4 2 709 30 109 706 635 674 +1526 4 2 709 30 37 763 653 703 +1527 4 2 709 30 193 797 670 699 +1528 4 2 709 30 113 654 674 738 +1529 4 2 709 30 784 189 663 723 +1530 4 2 709 30 773 179 670 699 +1531 4 2 709 30 145 796 658 675 +1532 4 2 709 30 161 661 622 732 +1533 4 2 709 30 4 818 769 778 +1534 4 2 709 30 728 84 636 694 +1535 4 2 709 30 23 818 716 656 +1536 4 2 709 30 773 186 660 743 +1537 4 2 709 30 127 790 139 712 +1538 4 2 709 30 787 3 680 756 +1539 4 2 709 30 73 813 86 730 +1540 4 2 709 30 784 660 195 753 +1541 4 2 709 30 142 712 617 664 +1542 4 2 709 30 62 677 625 655 +1543 4 2 709 30 808 215 644 752 +1544 4 2 709 30 780 102 671 739 +1545 4 2 709 30 736 157 658 698 +1546 4 2 709 30 761 157 658 736 +1547 4 2 709 30 635 639 727 108 +1548 4 2 709 30 671 739 49 638 +1549 4 2 709 30 621 202 652 668 +1550 4 2 709 30 21 710 755 768 +1551 4 2 709 30 782 161 622 732 +1552 4 2 709 30 818 23 716 778 +1553 4 2 709 30 168 768 661 649 +1554 4 2 709 30 129 789 617 781 +1555 4 2 709 30 784 735 42 723 +1556 4 2 709 30 639 120 635 683 +1557 4 2 709 30 74 679 633 700 +1558 4 2 709 30 67 772 642 654 +1559 4 2 709 30 766 160 658 675 +1560 4 2 709 30 113 635 738 674 +1561 4 2 709 30 804 19 643 710 +1562 4 2 709 30 17 754 653 687 +1563 4 2 709 30 93 760 646 722 +1564 4 2 709 30 648 138 645 749 +1565 4 2 709 30 18 763 643 696 +1566 4 2 709 30 76 636 716 728 +1567 4 2 709 30 585 633 724 56 +1568 4 2 709 30 66 797 674 695 +1569 4 2 709 30 611 17 653 745 +1570 4 2 709 30 138 648 645 801 +1571 4 2 709 30 654 66 674 695 +1572 4 2 709 30 94 739 681 776 +1573 4 2 709 30 176 769 705 770 +1574 4 2 709 30 79 694 647 741 +1575 4 2 709 30 781 129 137 712 +1576 4 2 709 30 756 208 644 651 +1577 4 2 709 30 208 808 644 651 +1578 4 2 709 30 53 802 154 787 +1579 4 2 709 30 692 8 672 607 +1580 4 2 709 30 652 752 668 198 +1581 4 2 709 30 753 169 732 743 +1582 4 2 709 30 585 633 56 679 +1583 4 2 709 30 94 762 681 739 +1584 4 2 709 30 67 654 642 695 +1585 4 2 709 30 19 768 643 710 +1586 4 2 709 30 655 174 622 782 +1587 4 2 709 30 31 609 722 730 +1588 4 2 709 30 609 31 722 760 +1589 4 2 709 30 636 25 656 707 +1590 4 2 709 30 186 745 743 773 +1591 4 2 709 30 84 741 636 694 +1592 4 2 709 30 639 44 711 785 +1593 4 2 709 30 611 190 745 743 +1594 4 2 709 30 124 749 137 712 +1595 4 2 709 30 708 196 632 687 +1596 4 2 709 30 199 808 211 752 +1597 4 2 709 30 817 12 116 772 +1598 4 2 709 30 655 622 174 682 +1599 4 2 709 30 110 814 112 751 +1600 4 2 709 30 739 51 644 776 +1601 4 2 709 30 722 104 623 646 +1602 4 2 709 30 617 142 705 815 +1603 4 2 709 30 607 8 672 623 +1604 4 2 709 30 18 804 643 763 +1605 4 2 709 30 3 787 33 756 +1606 4 2 709 30 745 17 653 687 +1607 4 2 709 30 3 659 680 756 +1608 4 2 709 30 813 70 86 673 +1609 4 2 709 30 609 31 673 730 +1610 4 2 709 30 129 815 617 789 +1611 4 2 709 30 769 162 701 770 +1612 4 2 709 30 162 769 701 755 +1613 4 2 709 30 668 638 204 752 +1614 4 2 709 30 61 789 131 677 +1615 4 2 709 30 46 744 648 657 +1616 4 2 709 30 29 722 623 666 +1617 4 2 709 30 720 144 585 686 +1618 4 2 709 30 802 54 159 767 +1619 4 2 709 30 145 802 159 796 +1620 4 2 709 30 702 46 648 657 +1621 4 2 709 30 24 636 656 716 +1622 4 2 709 30 100 762 646 681 +1623 4 2 709 30 617 705 142 664 +1624 4 2 709 30 70 813 81 700 +1625 4 2 709 30 760 100 646 681 +1626 4 2 709 30 781 125 131 677 +1627 4 2 709 30 34 641 651 766 +1628 4 2 709 30 808 34 641 651 +1629 4 2 709 30 666 28 647 623 +1630 4 2 709 30 729 47 135 702 +1631 4 2 709 30 621 202 214 809 +1632 4 2 709 30 41 697 753 178 +1633 4 2 709 30 790 124 139 712 +1634 4 2 709 30 732 164 175 661 +1635 4 2 709 30 149 724 152 686 +1636 4 2 709 30 724 159 796 149 +1637 4 2 709 30 216 652 641 703 +1638 4 2 709 30 79 647 694 666 +1639 4 2 709 30 57 778 585 679 +1640 4 2 709 30 64 727 123 706 +1641 4 2 709 30 166 782 178 753 +1642 4 2 709 30 769 22 665 755 +1643 4 2 709 30 37 777 155 763 +1644 4 2 709 30 182 733 187 819 +1645 4 2 709 30 803 38 172 696 +1646 4 2 709 30 52 659 644 776 +1647 4 2 709 30 649 18 643 696 +1648 4 2 709 30 162 770 167 791 +1649 4 2 709 30 768 165 168 661 +1650 4 2 709 30 813 68 81 700 +1651 4 2 709 30 793 92 96 693 +1652 4 2 709 30 782 163 178 697 +1653 4 2 709 30 32 680 659 673 +1654 4 2 709 30 761 143 156 686 +1655 4 2 709 30 814 106 112 692 +1656 4 2 709 30 679 82 716 728 +1657 4 2 709 30 778 22 665 769 +1658 4 2 709 30 106 814 118 683 +1659 4 2 709 30 111 744 122 683 +1660 4 2 709 30 62 677 134 625 +1661 4 2 709 30 780 90 91 762 +1662 4 2 709 30 659 31 609 760 +1663 4 2 709 30 52 644 659 756 +1664 4 2 709 30 125 749 141 711 +1665 4 2 709 30 786 107 110 738 +1666 4 2 709 30 11 817 121 786 +1667 4 2 709 30 151 36 698 777 +1668 4 2 709 30 762 90 101 693 +1669 4 2 709 30 814 105 118 683 +1670 4 2 709 30 804 18 155 763 +1671 4 2 709 30 647 607 623 2 +1672 4 2 709 30 90 780 99 737 +1673 4 2 709 30 818 4 23 778 +1674 4 2 709 30 185 819 187 708 +1675 4 2 709 30 768 19 643 649 +1676 4 2 709 30 105 738 119 635 +1677 4 2 709 30 182 670 819 194 +1678 4 2 709 30 128 790 132 707 +1679 4 2 709 30 801 128 140 707 +1680 4 2 709 30 623 103 672 646 +1681 4 2 709 30 808 601 641 203 +1682 4 2 709 30 201 205 652 754 +1683 4 2 709 30 103 793 672 646 +1684 4 2 709 30 22 720 665 755 +1685 4 2 709 30 203 601 641 652 +1686 4 2 709 30 817 11 12 737 +1687 4 2 709 30 747 48 210 721 +1688 4 2 709 30 733 14 187 708 +1689 4 2 709 30 803 164 169 732 +1690 4 2 709 30 127 712 142 664 +1691 4 2 709 30 125 711 134 677 +1692 4 2 709 30 659 609 31 673 +1693 4 2 709 30 760 93 95 722 +1694 4 2 709 30 819 179 194 670 +1695 4 2 709 30 784 181 195 699 +1696 4 2 709 30 82 679 700 728 +1697 4 2 709 30 183 773 186 660 +1698 4 2 709 30 791 167 174 682 +1699 4 2 709 30 48 747 99 671 +1700 4 2 709 30 648 44 639 744 +1701 4 2 709 30 44 648 639 711 +1702 4 2 709 30 710 147 158 720 +1703 4 2 709 30 778 153 585 665 +1704 4 2 709 30 153 720 585 665 +1705 4 2 709 30 679 69 78 716 +1706 4 2 709 30 749 124 138 645 +1707 4 2 709 30 733 13 14 676 +1708 4 2 709 30 165 768 177 701 +1709 4 2 709 30 9 692 751 112 +1710 4 2 709 30 144 761 156 686 +1711 4 2 709 30 741 27 135 729 +1712 4 2 709 30 789 129 131 781 +1713 4 2 709 30 9 793 10 751 +1714 4 2 709 30 786 107 817 121 +1715 4 2 709 30 164 803 172 649 +1716 4 2 709 30 735 42 173 697 +1717 4 2 709 30 58 818 136 705 +1718 4 2 709 30 26 741 140 707 +1719 4 2 709 30 761 147 150 710 +1720 4 2 709 30 744 46 122 657 +1721 4 2 709 30 38 803 39 743 +1722 4 2 709 30 162 791 165 701 +1723 4 2 709 30 699 183 195 660 +1724 4 2 709 30 87 693 762 101 +1725 4 2 709 30 22 769 171 755 +1726 4 2 709 30 5 763 18 696 +1727 4 2 709 30 90 737 96 693 +1728 4 2 709 30 791 161 165 661 +1729 4 2 709 30 17 754 209 653 +1730 4 2 709 30 105 814 110 738 +1731 4 2 709 30 621 14 214 676 +1732 4 2 709 30 41 697 42 784 +1733 4 2 709 30 182 733 695 191 +1734 4 2 709 30 802 145 154 675 +1735 4 2 709 30 16 809 205 754 +1736 4 2 709 30 99 780 102 671 +1737 4 2 709 30 73 730 77 631 +1738 4 2 709 30 611 5 38 696 +1739 4 2 709 30 772 67 116 654 +1740 4 2 709 30 809 205 652 202 +1741 4 2 709 30 785 727 117 63 +1742 4 2 709 30 736 151 157 698 +1743 4 2 709 30 71 728 83 694 +1744 4 2 709 30 754 201 209 703 +1745 4 2 709 30 39 803 169 743 +1746 4 2 709 30 109 706 123 635 +1747 4 2 709 30 601 808 752 203 +1748 4 2 709 30 793 9 103 672 +1749 4 2 709 30 46 702 47 657 +1750 4 2 709 30 728 68 83 631 +1751 4 2 709 30 780 91 102 739 +1752 4 2 709 30 143 149 686 796 +1753 4 2 709 30 214 721 200 621 +1754 4 2 709 30 761 144 147 720 +1755 4 2 709 30 673 75 680 700 +1756 4 2 709 30 652 752 203 601 +1757 4 2 709 30 815 705 176 59 +1758 4 2 709 30 815 59 142 705 +1759 4 2 709 30 91 762 94 739 +1760 4 2 709 30 63 727 64 663 +1761 4 2 709 30 215 739 644 752 +1762 4 2 709 30 622 174 791 161 +1763 4 2 709 30 75 680 700 767 +1764 4 2 709 30 35 36 641 698 +1765 4 2 709 30 161 732 175 661 +1766 4 2 709 30 51 739 94 776 +1767 4 2 709 30 752 50 739 638 +1768 4 2 709 30 15 809 16 687 +1769 4 2 709 30 35 766 148 698 +1770 4 2 709 30 29 722 666 30 +1771 4 2 709 30 683 105 120 635 +1772 4 2 709 30 33 787 154 675 +1773 4 2 709 30 7 772 12 747 +1774 4 2 709 30 130 648 141 749 +1775 4 2 709 30 670 197 797 184 +1776 4 2 709 30 107 817 116 654 +1777 4 2 709 30 62 735 173 655 +1778 4 2 709 30 808 199 215 752 +1779 4 2 709 30 711 43 134 625 +1780 4 2 709 30 721 48 49 671 +1781 4 2 709 30 766 34 160 675 +1782 4 2 709 30 699 188 663 181 +1783 4 2 709 30 728 71 84 694 +1784 4 2 709 30 19 804 150 710 +1785 4 2 709 30 200 207 668 721 +1786 4 2 709 30 14 809 15 708 +1787 4 2 709 30 700 74 75 633 +1788 4 2 709 30 769 58 171 705 +1789 4 2 709 30 720 21 158 710 +1790 4 2 709 30 724 159 55 767 +1791 4 2 709 30 106 683 122 657 +1792 4 2 709 30 697 163 173 655 +1793 4 2 709 30 111 683 114 744 +1794 4 2 709 30 692 106 115 657 +1795 4 2 709 30 797 64 65 706 +1796 4 2 709 30 77 694 83 631 +1797 4 2 709 30 36 216 641 703 +1798 4 2 709 30 31 730 86 673 +1799 4 2 709 30 670 197 182 695 +1800 4 2 709 30 802 53 54 680 +1801 4 2 709 30 36 37 703 777 +1802 4 2 709 30 60 789 170 682 +1803 4 2 709 30 776 89 98 760 +1804 4 2 709 30 659 52 98 776 +1805 4 2 709 30 166 753 169 732 +1806 4 2 709 30 670 193 184 797 +1807 4 2 709 30 2 729 27 647 +1808 4 2 709 30 13 733 191 642 +1809 4 2 709 30 727 108 123 635 +1810 4 2 709 30 787 3 53 680 +1811 4 2 709 30 107 654 113 738 +1812 4 2 709 30 724 55 56 633 +1813 4 2 709 30 772 7 67 642 +1814 4 2 709 30 34 641 766 35 +1815 4 2 709 30 72 728 84 636 +1816 4 2 709 30 622 174 161 782 +1817 4 2 709 30 789 61 170 655 +1818 4 2 709 30 181 784 189 663 +1819 4 2 709 30 6 735 62 625 +1820 4 2 709 30 74 679 85 633 +1821 4 2 709 30 33 651 208 756 +1822 4 2 709 30 809 14 214 621 +1823 4 2 709 30 179 699 193 670 +1824 4 2 709 30 770 167 815 176 +1825 4 2 709 30 164 649 168 661 +1826 4 2 709 30 49 638 207 721 +1827 4 2 709 30 679 56 85 633 +1828 4 2 709 30 200 621 668 202 +1829 4 2 709 30 72 636 76 728 +1830 4 2 709 30 785 6 43 625 +1831 4 2 709 30 656 23 24 716 +1832 4 2 709 30 692 8 607 115 +1833 4 2 709 30 64 797 188 663 +1834 4 2 709 30 768 21 177 755 +1835 4 2 709 30 755 162 177 701 +1836 4 2 709 30 174 655 682 170 +1837 4 2 709 30 763 5 37 653 +1838 4 2 709 30 695 67 191 642 +1839 4 2 709 30 790 127 132 656 +1840 4 2 709 30 10 786 110 751 +1841 4 2 709 30 705 136 142 664 +1842 4 2 709 30 747 12 99 737 +1843 4 2 709 30 216 652 703 201 +1844 4 2 709 30 736 157 150 761 +1845 4 2 709 30 768 19 20 710 +1846 4 2 709 30 801 140 135 741 +1847 4 2 709 30 7 747 13 642 +1848 4 2 709 30 707 25 26 636 +1849 4 2 709 30 13 747 210 676 +1850 4 2 709 30 699 188 193 797 +1851 4 2 709 30 639 120 108 635 +1852 4 2 709 30 214 721 676 210 +1853 4 2 709 30 143 761 157 658 +1854 4 2 709 30 186 745 773 180 +1855 4 2 709 30 703 37 209 653 +1856 4 2 709 30 27 741 79 647 +1857 4 2 709 30 786 10 11 662 +1858 4 2 709 30 68 73 631 813 +1859 4 2 709 30 639 108 117 727 +1860 4 2 709 30 113 635 119 738 +1861 4 2 709 30 722 93 104 646 +1862 4 2 709 30 730 30 77 666 +1863 4 2 709 30 633 55 75 767 +1864 4 2 709 30 2 607 47 729 +1865 4 2 709 30 743 40 186 660 +1866 4 2 709 30 698 148 157 658 +1867 4 2 709 30 47 607 115 657 +1868 4 2 709 30 785 43 44 711 +1869 4 2 709 30 128 801 138 645 +1870 4 2 709 30 818 23 136 656 +1871 4 2 709 30 773 179 185 819 +1872 4 2 709 30 61 677 62 655 +1873 4 2 709 30 23 778 78 716 +1874 4 2 709 30 16 754 17 687 +1875 4 2 709 30 4 818 58 769 +1876 4 2 709 30 148 766 160 658 +1877 4 2 709 30 20 710 21 768 +1878 4 2 709 30 638 49 50 739 +1879 4 2 709 30 6 785 63 723 +1880 4 2 709 30 815 60 167 682 +1881 4 2 709 30 790 124 645 128 +1882 4 2 709 30 778 57 78 679 +1883 4 2 709 30 737 11 96 662 +1884 4 2 709 30 41 784 195 753 +1885 4 2 709 30 161 782 166 732 +1886 4 2 709 30 648 130 138 749 +1887 4 2 709 30 745 180 196 632 +1888 4 2 709 30 639 120 683 114 +1889 4 2 709 30 723 63 189 663 +1890 4 2 709 30 662 10 96 793 +1891 4 2 709 30 174 655 163 782 +1892 4 2 709 30 68 728 82 700 +1893 4 2 709 30 179 773 183 699 +1894 4 2 709 30 87 693 92 646 +1895 4 2 709 30 639 44 114 744 +1896 4 2 709 30 660 40 195 753 +1897 4 2 709 30 198 668 204 752 +1898 4 2 709 30 30 31 722 730 +1899 4 2 709 30 760 89 100 681 +1900 4 2 709 30 797 65 66 674 +1901 4 2 709 30 762 87 100 646 +1902 4 2 709 30 741 26 84 636 +1903 4 2 709 30 31 95 722 760 +1904 4 2 709 30 744 45 46 648 +1905 4 2 709 30 796 143 145 658 +1906 4 2 709 30 21 720 22 755 +1907 4 2 709 30 801 133 138 648 +1908 4 2 709 30 17 611 190 745 +1909 4 2 709 30 671 49 739 102 +1910 4 2 709 30 113 635 674 109 +1911 4 2 709 30 797 66 197 695 +1912 4 2 709 30 133 801 135 702 +1913 4 2 709 30 659 3 52 756 +1914 4 2 709 30 735 6 42 723 +1915 4 2 709 30 33 675 34 651 +1916 4 2 709 30 724 56 152 585 +1917 4 2 709 30 654 66 113 674 +1918 4 2 709 30 712 129 142 617 +1919 4 2 709 30 646 88 104 623 +1920 4 2 709 30 180 773 185 632 +1921 4 2 709 30 5 611 17 653 +1922 4 2 709 30 675 145 160 658 +1923 4 2 709 30 702 46 133 648 +1924 4 2 709 30 206 808 641 203 +1925 4 2 709 30 52 756 208 644 +1926 4 2 709 30 753 40 169 743 +1927 4 2 709 30 65 706 109 674 +1928 4 2 709 30 652 198 668 202 +1929 4 2 709 30 728 76 82 716 +1930 4 2 709 30 125 781 131 137 +1931 4 2 709 30 92 793 103 646 +1932 4 2 709 30 656 127 136 664 +1933 4 2 709 30 185 708 196 632 +1934 4 2 709 30 60 815 129 789 +1935 4 2 709 30 692 8 9 672 +1936 4 2 709 30 778 4 22 769 +1937 4 2 709 30 769 171 176 705 +1938 4 2 709 30 18 649 172 696 +1939 4 2 709 30 784 42 189 723 +1940 4 2 709 30 155 151 736 777 +1941 4 2 709 30 25 707 132 656 +1942 4 2 709 30 51 776 52 644 +1943 4 2 709 30 89 776 94 681 +1944 4 2 709 30 29 623 28 666 +1945 4 2 709 30 611 38 190 743 +1946 4 2 709 30 93 760 100 646 +1947 4 2 709 30 648 44 141 711 +1948 4 2 709 30 769 162 171 755 +1949 4 2 709 30 208 808 215 644 +1950 4 2 709 30 66 654 67 695 +1951 4 2 709 30 668 204 638 207 +1952 4 2 709 30 57 778 153 585 +1953 4 2 709 30 808 34 206 641 +1954 4 2 709 30 84 694 79 741 +1955 4 2 709 30 687 196 15 708 +1956 4 2 709 30 29 722 104 623 +1957 4 2 709 30 814 110 112 118 +1958 4 2 709 30 819 185 187 194 +1959 4 2 709 30 129 815 142 617 +1960 4 2 709 30 24 636 25 656 +1961 4 2 709 30 44 648 45 744 +1962 4 2 709 30 144 686 152 585 +1963 4 2 709 30 636 24 76 716 +1964 4 2 709 30 808 34 651 208 +1965 4 2 709 30 162 769 176 770 +1966 4 2 709 30 182 819 187 194 +1967 4 2 709 30 760 89 95 100 +1968 4 2 709 30 813 70 73 86 +1969 4 2 709 30 216 652 203 641 +1970 4 2 709 30 199 808 206 211 +1971 4 2 709 30 680 32 80 673 +1972 4 2 709 30 94 762 100 681 +1973 4 2 709 30 3 659 32 680 +1974 4 2 709 30 44 117 785 639 +1975 4 2 709 30 720 144 153 585 +1976 4 2 709 30 150 155 736 804 +1977 4 2 709 30 56 679 57 585 +1978 4 2 709 30 781 129 131 137 +1979 4 2 709 30 77 79 694 666 +1980 4 2 709 30 186 745 190 743 +1981 4 2 709 30 666 28 79 647 +1982 4 2 709 30 623 88 103 646 +1983 4 2 709 30 623 2 28 647 +1984 4 2 709 30 17 196 687 745 +1985 4 2 709 30 673 75 700 70 +1986 4 2 709 30 69 679 82 716 +1987 4 2 709 30 19 643 18 804 +1988 4 2 709 30 790 128 132 139 +1989 4 2 709 30 796 145 149 159 +1990 4 2 709 30 659 31 760 98 +1991 4 2 709 30 19 768 168 649 +1992 4 2 709 30 19 18 643 649 +1993 4 2 709 30 161 791 167 174 +1994 4 2 709 30 607 2 8 623 +1995 4 2 709 30 782 163 166 178 +1996 4 2 709 30 82 679 74 700 +1997 4 2 709 30 127 790 132 139 +1998 4 2 709 30 659 31 32 673 +1999 4 2 709 30 90 693 96 101 +2000 4 2 709 30 732 164 169 175 +2001 4 2 709 30 693 92 96 101 +2002 4 2 709 30 74 700 75 81 +2003 4 2 709 30 75 680 767 54 +2004 4 2 709 30 107 738 113 119 +2005 4 2 709 30 127 712 129 142 +2006 4 2 709 30 106 814 112 118 +2007 4 2 709 30 90 780 91 102 +2008 4 2 709 30 199 752 204 215 +2009 4 2 709 30 778 22 153 665 +2010 4 2 709 30 22 720 153 665 +2011 4 2 709 30 166 732 169 175 +2012 4 2 709 30 739 51 215 644 +2013 4 2 709 30 8 623 9 672 +2014 4 2 709 30 149 686 152 156 +2015 4 2 709 30 712 124 129 137 +2016 4 2 709 30 801 133 126 138 +2017 4 2 709 30 9 623 103 672 +2018 4 2 709 30 125 749 130 141 +2019 4 2 709 30 673 75 80 680 +2020 4 2 709 30 652 752 198 203 +2021 4 2 709 30 180 773 186 192 +2022 4 2 709 30 712 127 129 139 +2023 4 2 709 30 752 50 638 204 +2024 4 2 709 30 773 183 186 192 +2025 4 2 709 30 70 813 73 81 +2026 4 2 709 30 162 167 770 176 +2027 4 2 709 30 749 125 130 137 +2028 4 2 709 30 201 652 205 213 +2029 4 2 709 30 814 105 110 118 +2030 4 2 709 30 126 801 128 140 +2031 4 2 709 30 752 50 215 739 +2032 4 2 709 30 107 786 110 121 +2033 4 2 709 30 749 124 130 138 +2034 4 2 709 30 738 107 110 119 +2035 4 2 709 30 167 682 170 174 +2036 4 2 709 30 164 661 168 175 +2037 4 2 709 30 163 782 166 174 +2038 4 2 709 30 711 125 134 141 +2039 4 2 709 30 752 199 204 211 +2040 4 2 709 30 68 728 72 82 +2041 4 2 709 30 106 683 111 122 +2042 4 2 709 30 780 90 99 102 +2043 4 2 709 30 727 108 117 123 +2044 4 2 709 30 686 144 152 156 +2045 4 2 709 30 745 180 190 196 +2046 4 2 709 30 813 68 73 81 +2047 4 2 709 30 762 90 91 101 +2048 4 2 709 30 700 70 75 81 +2049 4 2 709 30 124 749 130 137 +2050 4 2 709 30 124 712 129 139 +2051 4 2 709 30 145 802 154 159 +2052 4 2 709 30 72 728 76 82 +2053 4 2 709 30 200 621 202 214 +2054 4 2 709 30 181 699 183 195 +2055 4 2 709 30 144 761 147 156 +2056 4 2 709 30 162 701 165 177 +2057 4 2 709 30 683 106 111 118 +2058 4 2 709 30 789 60 61 131 +2059 4 2 709 30 146 736 151 157 +2060 4 2 709 30 808 211 752 203 +2061 4 2 709 30 784 181 189 195 +2062 4 2 709 30 93 760 95 100 +2063 4 2 709 30 69 679 78 85 +2064 4 2 709 30 143 686 149 156 +2065 4 2 709 30 635 105 109 119 +2066 4 2 709 30 683 105 111 120 +2067 4 2 709 30 809 15 16 205 +2068 4 2 709 30 9 751 10 112 +2069 4 2 709 30 144 720 153 158 +2070 4 2 709 30 68 700 74 81 +2071 4 2 709 30 664 127 136 142 +2072 4 2 709 30 801 135 140 126 +2073 4 2 709 30 699 188 181 193 +2074 4 2 709 30 73 631 77 83 +2075 4 2 709 30 728 68 72 83 +2076 4 2 709 30 698 148 151 157 +2077 4 2 709 30 635 108 109 120 +2078 4 2 709 30 108 635 109 123 +2079 4 2 709 30 198 752 204 211 +2080 4 2 709 30 14 708 15 187 +2081 4 2 709 30 695 182 191 197 +2082 4 2 709 30 105 738 110 119 +2083 4 2 709 30 699 181 183 193 +2084 4 2 709 30 773 179 183 192 +2085 4 2 709 30 205 202 213 652 +2086 4 2 709 30 55 724 56 152 +2087 4 2 709 30 817 107 116 121 +2088 4 2 709 30 105 683 111 118 +2089 4 2 709 30 801 126 128 138 +2090 4 2 709 30 753 40 41 178 +2091 4 2 709 30 105 635 109 120 +2092 4 2 709 30 163 697 173 178 +2093 4 2 709 30 71 728 72 83 +2094 4 2 709 30 766 34 35 160 +2095 4 2 709 30 793 9 10 103 +2096 4 2 709 30 70 673 80 86 +2097 4 2 709 30 730 30 31 86 +2098 4 2 709 30 698 35 36 151 +2099 4 2 709 30 739 50 51 94 +2100 4 2 709 30 87 762 91 101 +2101 4 2 709 30 29 722 30 104 +2102 4 2 709 30 661 161 165 175 +2103 4 2 709 30 761 143 147 156 +2104 4 2 709 30 767 54 55 75 +2105 4 2 709 30 670 184 193 179 +2106 4 2 709 30 819 179 185 194 +2107 4 2 709 30 45 744 46 122 +2108 4 2 709 30 182 670 194 184 +2109 4 2 709 30 797 184 188 193 +2110 4 2 709 30 639 120 114 108 +2111 4 2 709 30 661 165 168 175 +2112 4 2 709 30 200 668 207 212 +2113 4 2 709 30 694 71 77 83 +2114 4 2 709 30 675 145 154 160 +2115 4 2 709 30 88 623 97 104 +2116 4 2 709 30 724 55 149 152 +2117 4 2 709 30 703 201 209 216 +2118 4 2 709 30 791 161 162 165 +2119 4 2 709 30 203 201 213 652 +2120 4 2 709 30 45 744 111 114 +2121 4 2 709 30 670 197 184 182 +2122 4 2 709 30 790 124 128 139 +2123 4 2 709 30 720 144 147 158 +2124 4 2 709 30 10 793 92 96 +2125 4 2 709 30 722 30 93 95 +2126 4 2 709 30 143 796 145 149 +2127 4 2 709 30 179 670 184 194 +2128 4 2 709 30 214 721 210 200 +2129 4 2 709 30 65 797 184 188 +2130 4 2 709 30 706 64 65 123 +2131 4 2 709 30 710 20 147 150 +2132 4 2 709 30 84 79 694 71 +2133 4 2 709 30 728 71 72 84 +2134 4 2 709 30 50 739 91 94 +2135 4 2 709 30 20 768 165 168 +2136 4 2 709 30 756 3 52 208 +2137 4 2 709 30 3 756 33 208 +2138 4 2 709 30 772 7 12 116 +2139 4 2 709 30 10 751 110 112 +2140 4 2 709 30 161 791 162 167 +2141 4 2 709 30 7 772 67 116 +2142 4 2 709 30 35 698 148 151 +2143 4 2 709 30 5 696 18 172 +2144 4 2 709 30 818 4 58 136 +2145 4 2 709 30 15 809 202 205 +2146 4 2 709 30 25 707 26 140 +2147 4 2 709 30 730 30 73 77 +2148 4 2 709 30 696 5 38 172 +2149 4 2 709 30 4 818 23 136 +2150 4 2 709 30 4 778 57 78 +2151 4 2 709 30 35 36 216 641 +2152 4 2 709 30 3 787 53 154 +2153 4 2 709 30 657 106 115 122 +2154 4 2 709 30 736 150 157 146 +2155 4 2 709 30 773 180 185 192 +2156 4 2 709 30 59 815 60 176 +2157 4 2 709 30 787 3 33 154 +2158 4 2 709 30 60 789 61 170 +2159 4 2 709 30 54 767 55 159 +2160 4 2 709 30 60 789 129 131 +2161 4 2 709 30 744 45 111 122 +2162 4 2 709 30 710 19 20 150 +2163 4 2 709 30 30 722 93 104 +2164 4 2 709 30 30 730 73 86 +2165 4 2 709 30 778 4 23 78 +2166 4 2 709 30 809 15 202 214 +2167 4 2 709 30 40 753 166 178 +2168 4 2 709 30 793 10 92 103 +2169 4 2 709 30 724 159 149 55 +2170 4 2 709 30 19 768 20 168 +2171 4 2 709 30 15 708 185 187 +2172 4 2 709 30 766 35 148 160 +2173 4 2 709 30 707 25 128 140 +2174 4 2 709 30 7 747 48 210 +2175 4 2 709 30 35 641 203 206 +2176 4 2 709 30 782 161 166 174 +2177 4 2 709 30 87 693 101 92 +2178 4 2 709 30 762 87 91 100 +2179 4 2 709 30 25 707 128 132 +2180 4 2 709 30 143 761 147 157 +2181 4 2 709 30 683 111 114 120 +2182 4 2 709 30 64 797 65 188 +2183 4 2 709 30 2 729 47 135 +2184 4 2 709 30 20 710 147 158 +2185 4 2 709 30 710 20 21 158 +2186 4 2 709 30 682 60 167 170 +2187 4 2 709 30 147 761 150 157 +2188 4 2 709 30 5 763 37 155 +2189 4 2 709 30 729 2 27 135 +2190 4 2 709 30 809 14 15 214 +2191 4 2 709 30 641 35 203 216 +2192 4 2 709 30 747 7 48 99 +2193 4 2 709 30 763 5 18 155 +2194 4 2 709 30 753 40 166 169 +2195 4 2 709 30 40 660 183 186 +2196 4 2 709 30 39 743 40 186 +2197 4 2 709 30 797 65 184 197 +2198 4 2 709 30 773 185 179 192 +2199 4 2 709 30 768 20 165 177 +2200 4 2 709 30 762 91 94 100 +2201 4 2 709 30 674 65 66 113 +2202 4 2 709 30 68 631 73 83 +2203 4 2 709 30 778 4 57 153 +2204 4 2 709 30 646 88 93 104 +2205 4 2 709 30 815 59 60 142 +2206 4 2 709 30 747 7 13 210 +2207 4 2 709 30 174 655 170 163 +2208 4 2 709 30 6 785 43 117 +2209 4 2 709 30 44 744 45 114 +2210 4 2 709 30 739 50 91 102 +2211 4 2 709 30 721 200 207 210 +2212 4 2 709 30 202 200 212 668 +2213 4 2 709 30 69 716 76 78 +2214 4 2 709 30 208 808 206 199 +2215 4 2 709 30 45 648 130 133 +2216 4 2 709 30 182 733 191 187 +2217 4 2 709 30 677 125 131 134 +2218 4 2 709 30 737 90 96 99 +2219 4 2 709 30 106 115 112 692 +2220 4 2 709 30 754 201 205 209 +2221 4 2 709 30 87 646 88 93 +2222 4 2 709 30 6 735 42 173 +2223 4 2 709 30 668 204 207 212 +2224 4 2 709 30 10 786 11 121 +2225 4 2 709 30 7 747 12 99 +2226 4 2 709 30 623 88 97 103 +2227 4 2 709 30 652 198 213 203 +2228 4 2 709 30 660 195 40 183 +2229 4 2 709 30 216 652 201 203 +2230 4 2 709 30 735 6 62 173 +2231 4 2 709 30 658 143 148 157 +2232 4 2 709 30 163 655 170 173 +2233 4 2 709 30 706 65 109 123 +2234 4 2 709 30 666 29 30 77 +2235 4 2 709 30 648 130 133 138 +2236 4 2 709 30 20 768 21 177 +2237 4 2 709 30 786 10 110 121 +2238 4 2 709 30 700 68 74 82 +2239 4 2 709 30 785 6 63 117 +2240 4 2 709 30 776 89 94 98 +2241 4 2 709 30 739 49 50 102 +2242 4 2 709 30 113 635 109 119 +2243 4 2 709 30 4 778 22 153 +2244 4 2 709 30 663 181 188 189 +2245 4 2 709 30 808 206 211 203 +2246 4 2 709 30 633 55 56 85 +2247 4 2 709 30 679 69 74 85 +2248 4 2 709 30 161 732 166 175 +2249 4 2 709 30 34 641 35 206 +2250 4 2 709 30 179 699 183 193 +2251 4 2 709 30 6 625 62 134 +2252 4 2 709 30 89 760 95 98 +2253 4 2 709 30 30 31 95 722 +2254 4 2 709 30 646 87 88 92 +2255 4 2 709 30 65 797 66 197 +2256 4 2 709 30 87 646 93 100 +2257 4 2 709 30 55 633 74 85 +2258 4 2 709 30 716 69 76 82 +2259 4 2 709 30 40 753 41 195 +2260 4 2 709 30 198 202 212 668 +2261 4 2 709 30 716 23 24 78 +2262 4 2 709 30 124 645 128 138 +2263 4 2 709 30 737 11 12 99 +2264 4 2 709 30 41 784 42 189 +2265 4 2 709 30 625 6 43 134 +2266 4 2 709 30 41 784 189 195 +2267 4 2 709 30 63 727 117 123 +2268 4 2 709 30 755 162 171 177 +2269 4 2 709 30 727 63 64 123 +2270 4 2 709 30 21 755 22 171 +2271 4 2 709 30 21 755 171 177 +2272 4 2 709 30 702 46 47 135 +2273 4 2 709 30 60 815 167 176 +2274 4 2 709 30 754 16 17 209 +2275 4 2 709 30 13 733 14 191 +2276 4 2 709 30 11 817 12 116 +2277 4 2 709 30 11 817 116 121 +2278 4 2 709 30 662 96 10 11 +2279 4 2 709 30 633 75 55 74 +2280 4 2 709 30 48 671 99 102 +2281 4 2 709 30 671 48 49 102 +2282 4 2 709 30 777 36 37 155 +2283 4 2 709 30 636 25 26 84 +2284 4 2 709 30 26 741 27 135 +2285 4 2 709 30 26 741 135 140 +2286 4 2 709 30 48 721 49 210 +2287 4 2 709 30 5 653 17 209 +2288 4 2 709 30 63 663 64 189 +2289 4 2 709 30 43 711 134 141 +2290 4 2 709 30 711 43 44 141 +2291 4 2 709 30 776 51 52 98 +2292 4 2 709 30 677 61 62 134 +2293 4 2 709 30 145 658 148 160 +2294 4 2 709 30 636 25 72 76 +2295 4 2 709 30 164 803 169 172 +2296 4 2 709 30 808 199 208 215 +2297 4 2 709 30 49 638 50 207 +2298 4 2 709 30 652 198 202 213 +2299 4 2 709 30 25 636 72 84 +2300 4 2 709 30 648 45 130 141 +2301 4 2 709 30 648 45 46 133 +2302 4 2 709 30 697 42 173 178 +2303 4 2 709 30 41 697 178 42 +2304 4 2 709 30 743 39 40 169 +2305 4 2 709 30 653 5 37 209 +2306 4 2 709 30 4 769 58 171 +2307 4 2 709 30 46 657 47 115 +2308 4 2 709 30 46 657 115 122 +2309 4 2 709 30 705 58 59 136 +2310 4 2 709 30 659 3 32 98 +2311 4 2 709 30 59 705 136 142 +2312 4 2 709 30 769 4 22 171 +2313 4 2 709 30 647 2 28 79 +2314 4 2 709 30 5 611 38 190 +2315 4 2 709 30 2 647 27 79 +2316 4 2 709 30 654 107 113 116 +2317 4 2 709 30 66 695 191 197 +2318 4 2 709 30 66 695 67 191 +2319 4 2 709 30 53 802 54 154 +2320 4 2 709 30 180 632 185 196 +2321 4 2 709 30 802 54 154 159 +2322 4 2 709 30 2 607 8 115 +2323 4 2 709 30 658 143 145 148 +2324 4 2 709 30 676 13 14 210 +2325 4 2 709 30 14 676 210 214 +2326 4 2 709 30 692 8 115 9 +2327 4 2 709 30 804 18 19 155 +2328 4 2 709 30 3 659 52 98 +2329 4 2 709 30 708 15 185 196 +2330 4 2 709 30 607 2 47 115 +2331 4 2 709 30 639 108 114 117 +2332 4 2 709 30 186 745 180 190 +2333 4 2 709 30 65 674 109 113 +2334 4 2 709 30 642 7 67 191 +2335 4 2 709 30 7 642 13 191 +2336 4 2 709 30 133 135 801 126 +2337 4 2 709 30 24 656 25 132 +2338 4 2 709 30 198 204 668 212 +2339 4 2 709 30 88 646 92 103 +2340 4 2 709 30 37 703 209 216 +2341 4 2 709 30 36 703 37 216 +2342 4 2 709 30 741 27 79 84 +2343 4 2 709 30 741 26 27 84 +2344 4 2 709 30 29 623 97 28 +2345 4 2 709 30 29 623 104 97 +2346 4 2 709 30 611 5 17 190 +2347 4 2 709 30 58 705 59 171 +2348 4 2 709 30 705 59 171 176 +2349 4 2 709 30 815 60 129 142 +2350 4 2 709 30 680 3 53 80 +2351 4 2 709 30 803 38 39 172 +2352 4 2 709 30 687 15 196 16 +2353 4 2 709 30 720 22 153 158 +2354 4 2 709 30 720 21 22 158 +2355 4 2 709 30 23 656 24 136 +2356 4 2 709 30 34 675 154 160 +2357 4 2 709 30 675 33 34 154 +2358 4 2 709 30 656 127 132 136 +2359 4 2 709 30 679 56 78 85 +2360 4 2 709 30 17 745 190 196 +2361 4 2 709 30 679 56 57 78 +2362 4 2 709 30 77 694 79 71 +2363 4 2 709 30 648 44 45 141 +2364 4 2 709 30 654 66 67 116 +2365 4 2 709 30 649 164 168 172 +2366 4 2 709 30 44 785 117 43 +2367 4 2 709 30 49 721 207 210 +2368 4 2 709 30 64 663 188 189 +2369 4 2 709 30 51 776 94 98 +2370 4 2 709 30 150 736 155 146 +2371 4 2 709 30 9 692 112 115 +2372 4 2 709 30 11 737 96 99 +2373 4 2 709 30 808 34 208 206 +2374 4 2 709 30 716 24 76 78 +2375 4 2 709 30 6 723 63 189 +2376 4 2 709 30 46 702 133 135 +2377 4 2 709 30 36 777 151 155 +2378 4 2 709 30 162 769 171 176 +2379 4 2 709 30 636 24 25 76 +2380 4 2 709 30 760 31 95 98 +2381 4 2 709 30 3 680 32 80 +2382 4 2 709 30 38 743 39 190 +2383 4 2 709 30 673 31 80 86 +2384 4 2 709 30 673 31 32 80 +2385 4 2 709 30 723 6 42 189 +2386 4 2 709 30 14 733 187 191 +2387 4 2 709 30 24 656 132 136 +2388 4 2 709 30 33 651 34 208 +2389 4 2 709 30 16 754 205 209 +2390 4 2 709 30 53 80 54 680 +2391 4 2 709 30 61 677 131 134 +2392 4 2 709 30 66 654 113 116 +2393 4 2 709 30 89 681 94 100 +2394 4 2 709 30 50 638 204 207 +2395 4 2 709 30 2 623 28 97 +2396 4 2 709 30 44 639 114 117 +2397 4 2 709 30 39 743 186 190 +2398 4 2 709 30 155 736 151 146 +2399 4 2 709 30 623 2 8 97 +2400 4 2 709 30 51 644 208 215 +2401 4 2 709 30 51 644 52 208 +2402 4 2 709 30 804 19 150 155 +2403 4 2 709 30 18 649 19 172 +2404 4 2 709 30 144 585 152 153 +2405 4 2 709 30 659 31 98 32 +2406 4 2 709 30 803 39 169 172 +2407 4 2 709 30 19 649 168 172 +2408 4 2 709 30 82 74 679 69 +2409 4 2 709 30 50 739 51 215 +2410 4 2 709 30 17 687 196 16 +2411 4 2 709 30 655 62 170 173 +2412 4 2 709 30 9 623 97 103 +2413 4 2 709 30 623 8 9 97 +2414 4 2 709 30 75 680 54 80 +2415 4 2 709 30 673 75 70 80 +2416 4 2 709 30 666 28 77 79 +2417 4 2 709 30 752 50 204 215 +2418 4 2 709 30 585 57 152 153 +2419 4 2 709 30 61 655 62 170 +2420 4 2 709 30 666 28 29 77 +2421 4 2 709 30 56 585 57 152 +2422 4 2 709 30 203 198 211 752 +$EndElements diff --git a/H5Fed/libsrc/gmsh/gmsh.cc b/H5Fed/libsrc/gmsh/gmsh.cc new file mode 100644 index 0000000..54bf701 --- /dev/null +++ b/H5Fed/libsrc/gmsh/gmsh.cc @@ -0,0 +1,375 @@ +// rights - 2006-, copyright patrick leidenberger and benedikt oswald, +// all rights reserved +// project - gmsh2h5fed +// file name - gmsh.cc +// file type - c++ implementation file +// objective - implement class for readind gmsh data files +// modified - 2006 aug 24, creation, patrick leidenberger +// modified - 2006 aug 26, pl, Access to private members. + +#include "gmsh.hh" + +using namespace boost::spirit; +using namespace gmshtohdf5fed; +using namespace rlog; +using namespace std; + +#include +#include +#include +#include +#include +#include +#include + +#include "gmshgrammar.hh" +#include "gmshsemanticaction.hh" + + +gmsh::gmsh() +{ + //rDebug("Enter vtk constructor."); + // Clean the gmsh data structure. + gmshNodes_.clear(); + gmshNodesNumber_.clear(); + gmshLine_.clear(); + gmshLineTag_.clear(); + gmshTriangle_.clear(); + gmshTriangleTag_.clear(); + gmshQuadrangle_.clear(); + gmshQuadrangleTag_.clear(); + gmshTetrahedron_.clear(); + gmshTetrahedronTag_.clear(); + gmshHexahedron_.clear(); + gmshHexahedronTag_.clear(); + gmshPrism_.clear(); + gmshPrismTag_.clear(); + gmshPyramid_.clear(); + gmshPyramidTag_.clear(); + gmsh2ndLineTag_.clear(); + gmsh2ndTriangle_.clear(); + gmsh2ndTriangleTag_.clear(); + gmsh2ndQuadrangle_.clear(); + gmsh2ndQuadrangleTag_.clear(); + gmsh2ndTetrahedron_.clear(); + gmsh2ndTetrahedronTag_.clear(); + gmsh2ndHexahedron_.clear(); + gmsh2ndHexahedronTag_.clear(); + gmsh2ndPrism_.clear(); + gmsh2ndPrismTag_.clear(); + gmsh2ndPyramid_.clear(); + gmsh2ndPyramidTag_.clear(); + gmshPoint_.clear(); + gmshPointTag_.clear(); + //rDebug("Leafe vtk constructor."); +} + +gmsh::~gmsh() +{ + //rDebug("Enter vtk destructor."); + //rDebug("Leafe vtk destructor."); +} + + +int gmsh::gmshFileName(char* fileName) +{ + //rDebug("Enter fileName."); + // Erase the fileName_. + fileName_.erase(); + // Copy fileName in private string fileName_. + gmshCpString(fileName, &fileName_); + // rDebug("fileName_= %s",fileName_.c_str()); + //rDebug("Leafe fileName"); + return OKCODE; +} +int gmsh::gmshFileName(string fileName) +{ + //rDebug("Enter fileName."); + // Erase the fileName_. + fileName_.erase(); + // Copy fileName in private string fileName_. + fileName_ = fileName; + // rDebug("fileName_= %s",fileName_.c_str()); + //rDebug("Leafe fileName"); +} + + +int gmsh::gmshOpen(void) +{ + //rDebug("Enter openVtk."); + + // Open a stream to read the gmsh file in a string. + ifstream inFile (fileName_.c_str()); + + // Check if file was opened corretly. + if (! inFile) + { + rError("Cannot open file %s.", fileName_.c_str()); + return ERRORCODE; + } + else + { + rInfo("Open file %s", fileName_.c_str()); + + // Read file content into a string + fileContent.erase(); + char chr; + while (inFile.get(chr)) + { + fileContent.append(1,chr); + } + rInfo(" File has been read."); + //rDebug("Input file:\n%s",fileContent.c_str()); + // Close input file. + inFile.close(); + rInfo(" File Closed."); + return OKCODE; + } + //rDebug("Leave openVtk."); +} + + +int gmsh::gmshParseFile(gmsh* gmshSelf) +{ + //rDebug("Enter parseFile."); + + // Provide an instance of the grammar describing the gmsh file format. + stack gmshStack; + // Our vtk parser. + // Give the parser a pointer to the instance of the gmsh class. So we can + // call member functions as semantic action. + gmsh_g gmsh_p(gmshSelf); + + // Call the parser. + parse_info info = parse(fileContent.c_str(),gmsh_p,space_p); + + // Feedback to user on parsing outcome. + if (info.full) + { + rInfo("-------------------------"); + rInfo("parsing succeeded :-)"); + rInfo("-------------------------"); + return OKCODE; + } + else + { + ostringstream temp; + temp << info.stop ; + rError("-------------------------"); + rError("parsing failed :-("); + rError("stopped at line: %s", temp.str().c_str()); + rError("-------------------------"); + return ERRORCODE; + } + + //rDebug("Leave parseFile."); +} + +int gmsh::gmshPushNode(vector* nodeCoords) +{ + //rDebug("gmshPushNode(vector* nodeCoords)."); + gmshNodes_.push_back(*nodeCoords); + return OKCODE; +} + +int gmsh::gmshPushNodeNumber(unsigned int* nodeNumber) +{ + gmshNodesNumber_.push_back(*nodeNumber); + return OKCODE; +} + +int gmsh::gmshPushElem(unsigned short int elemType, + vector* nodeVector) +{ + //rDebug("Inside gmshPushElem."); + if (elemType == GMSH_LINE) + gmshLine_.push_back(*nodeVector); + else if (elemType == GMSH_TRIANGLE) + gmshTriangle_.push_back(*nodeVector); + else if (elemType == GMSH_QUADRANGLE) + gmshQuadrangle_.push_back(*nodeVector); + else if (elemType == GMSH_TETRAHEDRON) + gmshTetrahedron_.push_back(*nodeVector); + else if (elemType == GMSH_HEXAHEDRON) + gmshHexahedron_.push_back(*nodeVector); + else if (elemType == GMSH_PRISM) + gmshPrism_.push_back(*nodeVector); + else if (elemType == GMSH_PYRAMID) + gmshPyramid_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_LINE) + gmsh2ndLine_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_TRIANGLE) + gmsh2ndTriangle_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_QUADRANGLE) + gmsh2ndQuadrangle_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_TETRAHEDRON) + gmsh2ndTetrahedron_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_HEXAHEDRON) + gmsh2ndHexahedron_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_PRISM) + gmsh2ndPrism_.push_back(*nodeVector); + else if (elemType == GMSH_2ND_PYRAMID) + gmsh2ndPyramid_.push_back(*nodeVector); + else if (elemType == GMSH_POINT) + gmshPoint_.push_back(*nodeVector); + else + { + rError("A unknown element type found!"); + rError("Element type: %d", elemType); + } + return OKCODE; +} + +int gmsh::gmshPushTag(unsigned short int elemType, + vector* tagVector) +{ + //rDebug("Inside gmshPushElem."); + if (elemType == GMSH_LINE) + { + //rDebug(" Line pushedback"); + } + else if (elemType == GMSH_TRIANGLE) + { + //rDebug(" Triangle pushedback"); + } + else if (elemType == GMSH_QUADRANGLE) + { + //rDebug(" Quadrangle pushedback"); + } + else if (elemType == GMSH_TETRAHEDRON) + { + //rDebug(" Tetrahedron pushedback"); + gmshTetrahedronTag_.push_back(*tagVector); + } + else + { + } + return OKCODE; +} + + +int gmsh::gmshShowElemResult() +{ + rInfo("Elements found in gmsh file:"); + rInfo(" lines: %d",gmshLine_.size()); + rInfo(" triangles: %d",gmshTriangle_.size()); + rInfo(" quadrangles: %d",gmshQuadrangle_.size()); + rInfo(" tetrahedrons: %d",gmshTetrahedron_.size()); + rInfo(" hexahedrons: %d",gmshHexahedron_.size()); + rInfo(" prisms: %d",gmshPrism_.size()); + rInfo(" pyramids: %d",gmshPyramid_.size()); + rInfo(" 2nd order lines: %d",gmsh2ndLine_.size()); + rInfo(" 2nd order Triangles: %d",gmsh2ndTriangle_.size()); + rInfo(" 2nd order Quadrangles: %d",gmsh2ndQuadrangle_.size()); + rInfo(" 2nd order Tetrahedrons: %d",gmsh2ndTetrahedron_.size()); + rInfo(" 2nd order Hexahedrons: %d",gmsh2ndHexahedron_.size()); + rInfo(" 2nd order Prisms: %d",gmsh2ndPrism_.size()); + rInfo(" 2nd order Pyramids: %d",gmsh2ndPyramid_.size()); + rInfo(" Points : %d",gmshPoint_.size()); + return OKCODE; +} + +void gmsh::cpString(char const* first, + char const* last, + string* str) +{ + //rDebug("Enter cpString."); + + // Erase the str content. + str->erase(); + + // Copy version in str. + for(unsigned int i = 0; iappend(1,first[i]); + } + //rDebug("*str= %s",str->c_str()); + + //rDebug("Leafe cpString."); +} +string gmsh::cpString(char const* first, + char const* last) +{ + //rDebug("Enter cpString."); + + // Create and erase a tempral string; + string tempString; + tempString.erase(); + + // Copy version in str. + for(unsigned int i = 0; i > gmsh::gmshNode() +{ + return gmshNodes_; +} + +std::vector gmsh::gmshNodeNumber() +{ + return gmshNodesNumber_; +} + +std::vector< std::vector > gmsh::gmshTetrahedron() +{ + return gmshTetrahedron_; +} + +std::vector< std::vector > gmsh::gmshTetrahedronTag() +{ + return gmshTetrahedronTag_; +} diff --git a/H5Fed/libsrc/gmsh/gmsh.hh b/H5Fed/libsrc/gmsh/gmsh.hh new file mode 100644 index 0000000..629d754 --- /dev/null +++ b/H5Fed/libsrc/gmsh/gmsh.hh @@ -0,0 +1,142 @@ +// rights - 2006-, copyright patrick leidenberger and benedikt oswald, +// all rights reserved +// project - gmsh2h5fed +// file name - gmsh.hh +// file type - c++ header file +// objective - declare class for readind gmsh mesh files v2.0 +// +// modified - 2006 aug 21, creation, Patrick Leidenberger +// modified - 2006 aug 22, pl. +// modified - 2006 aug 23, pl. +// modified - 2006 aug 24, pl, delete old things. +// modified - 2006 aug 26, pl, Access to private members. + +#ifndef GMSH_HH_ +#define GMSH_HH_ + +#include +#include +#include +#include +#include +#include + +/* Include the files for rlog. */ +#include +#include +#include +#include +#include +#include + +#include + +// Include gmsh specific constants. +#include "gmshconst.hh" + +using namespace std; +using namespace nonsciconst; + +namespace gmshtohdf5fed +{ + class gmsh + { + public: + // Constructor: Here we clear all private data vectors. + gmsh(); + // Destructor. + ~gmsh(); + + int gmshFileName(char* fileName); + int gmshFileName(string fileName); + + int gmshOpen(void); + + int gmshParseFile(gmsh* vtkSelf); + + void cpString(char const* first, + char const* last, + string* str); + string cpString(char const* first, + char const* last); + + int gmshCpString(char const* first, + string*str); + // Check if gmsh file is of version 2. + int gmshCheckVersion(int* version); + // Check if the gmsh file is in ascii format. + int gmshCheckFileType(int* fileType); + + // Pushes the three coordinates of a node in the gmshNodes_ vector. + int gmshPushNode(vector* nodeCoords); + + // Pushes the number of a node in the gmshNodesNumber_ vector. + int gmshPushNodeNumber(unsigned int * nodeNumber); + + // Push the node vector nodeVector to the appropriate data structure + // denoted by the string. + int gmshPushElem(unsigned short int elemType, + vector* nodeVector); + // Push the tag vector tagVector to the appropriate data structure + // denoted by the string. + int gmshPushTag(unsigned short int elemType, + vector* tagVector); + // Show the size of the element vectors. + int gmshShowElemResult(); + + //-------------------------------------// + // Access to private stored gmsh data. // + //-------------------------------------// + + std::vector< std::vector > gmshNode(); + std::vector gmshNodeNumber(); + std::vector< std::vector > gmshTetrahedron(); + std::vector< std::vector > gmshTetrahedronTag(); + + private: + string fileName_; + string fileContent; + + // Data structure for node coordinates from gmsh file. + vector > gmshNodes_; + // Data structure for gmsh node number. + // A number belongs to the respective node coordinate in the gmshNodes_ + // vector. + vector gmshNodesNumber_; + + // Data structure for the topological entities and their tags stored in + // the gmsh file. The 'gmsh2nd..' denote second order Elements. + vector > gmshLine_; + vector > gmshLineTag_; + vector > gmshTriangle_; + vector > gmshTriangleTag_; + vector > gmshQuadrangle_; + vector > gmshQuadrangleTag_; + vector > gmshTetrahedron_; + vector > gmshTetrahedronTag_; + vector > gmshHexahedron_; + vector > gmshHexahedronTag_; + vector > gmshPrism_; + vector > gmshPrismTag_; + vector > gmshPyramid_; + vector > gmshPyramidTag_; + vector > gmsh2ndLine_; + vector > gmsh2ndLineTag_; + vector > gmsh2ndTriangle_; + vector > gmsh2ndTriangleTag_; + vector > gmsh2ndQuadrangle_; + vector > gmsh2ndQuadrangleTag_; + vector > gmsh2ndTetrahedron_; + vector > gmsh2ndTetrahedronTag_; + vector > gmsh2ndHexahedron_; + vector > gmsh2ndHexahedronTag_; + vector > gmsh2ndPrism_; + vector > gmsh2ndPrismTag_; + vector > gmsh2ndPyramid_; + vector > gmsh2ndPyramidTag_; + vector > gmshPoint_; + vector > gmshPointTag_; + }; +} + +#endif //GMSH_HH_ diff --git a/H5Fed/libsrc/gmsh/gmshconst.hh b/H5Fed/libsrc/gmsh/gmshconst.hh new file mode 100644 index 0000000..8ef53f1 --- /dev/null +++ b/H5Fed/libsrc/gmsh/gmshconst.hh @@ -0,0 +1,28 @@ +#ifndef GMSHCONST_HH_ +#define GMSHCONST_HH_ + +// Contants of gmsh element types. +// See Gmsh Reference Manual (14 May 2006) page 147-148. +const unsigned short int GMSH_LINE = 1; +const unsigned short int GMSH_TRIANGLE = 2; +const unsigned short int GMSH_QUADRANGLE = 3; +const unsigned short int GMSH_TETRAHEDRON = 4; +const unsigned short int GMSH_HEXAHEDRON = 5; +const unsigned short int GMSH_PRISM = 6; +const unsigned short int GMSH_PYRAMID = 7; +const unsigned short int GMSH_2ND_LINE = 8; +const unsigned short int GMSH_2ND_TRIANGLE = 9; +const unsigned short int GMSH_2ND_QUADRANGLE = 10; +const unsigned short int GMSH_2ND_TETRAHEDRON = 11; +const unsigned short int GMSH_2ND_HEXAHEDRON = 12; +const unsigned short int GMSH_2ND_PRISM = 13; +const unsigned short int GMSH_2ND_PYRAMID = 14; +const unsigned short int GMSH_POINT = 15; + +// Every element has an spesific number of tags. +// This is the list of the number. There is a leading zero, because there is +// no element with the index 0. +const unsigned short int GMSH_ELEM_N_NODES[] = { 0, 2, 3, 4, 4, 8, 6, 5, 3, + 6, 9, 10, 27, 18, 14, 1 }; + +#endif //GMSHCONST_HH_ diff --git a/H5Fed/libsrc/gmsh/gmshgrammar.hh b/H5Fed/libsrc/gmsh/gmshgrammar.hh new file mode 100644 index 0000000..db2f99b --- /dev/null +++ b/H5Fed/libsrc/gmsh/gmshgrammar.hh @@ -0,0 +1,242 @@ +/** \brief Definition of gmsh file format v2.0 parser data types and variables + * + * rights - patrick leidenberger and benedikt oswald + * file name - gmshgrammar.hh + * file type - include file + * objective - define grammar of gmsh file format v2.0 + * author - patrick leidenberger and benedikt oswald + * modified - 2006 jun 29, pl, creation + * features - defines grammar of gmsh files v2.0 + */ + +/* include standard header files */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* include proprietary header files */ +#include "gmshsemanticaction.hh" +#include "gmsh.hh" +// Include gmsh specific constants. +#include "gmshconst.hh" + +#ifndef GMSHGRAMMAR_HH_ +#define GMSHGRAMMAR_HH_ + +/* activate namespaces */ +using namespace std; +using namespace boost::spirit; +using namespace gmshtohdf5fed; + +/* type definitions */ +//typedef char char_t; +//typedef file_iterator iterator_t; +//typedef scanner scanner_t; +//typedef rule rule_t; + + +//////////////////////////////////////////////////////////////////////////// +// +// Our calculator grammar +// +//////////////////////////////////////////////////////////////////////////// +struct gmsh_g : public grammar +{ +// vtk_g(/*stack& eval_*/) +// /*: eval(eval_)*/ {} + gmsh_g(gmsh* gmshSelf) + : gmshSelf_(gmshSelf) + { + } + + template + struct definition + { + definition(gmsh_g const& self) + { + gmsh_import_r = gmsh_mesh_format_r + >> gmsh_nodes_r + >> gmsh_elements_r; + + ////////////////////////////////////////////////////////////////////////// + // GENERAL NOTE: All tranport of numbers to gmshsemanticaction.hh must // + // be done by reference, not by value. Transport by // + // value fails! You have to debug long for it! // + ///////////////////////////////////////////////////////////////////////// + + // Rules for the MeshFormat section. + gmsh_mesh_format_r = str_p("$MeshFormat") + >> int_p[assign_a(tempInt1_)] + [gmsh_version_a(self.gmshSelf_, &tempInt1_)] + >> int_p[assign_a(tempInt1_)] + [gmsh_file_type_a(self.gmshSelf_, &tempInt1_)] + >> int_p[assign_a(tempInt1_)] + >> str_p("$EndMeshFormat"); + + // Rules for the Nodes section. + gmsh_nodes_r = str_p("$Nodes") + >> eps_p[gmsh_clear_map_a >(&tempCoordMap_)] + >> int_p[assign_a(tempUnInt1_)] + >> eps_p[gmsh_info_msg_a("Nodes in gmsh file: ", + &tempUnInt1_)] + >> repeat_p(boost::ref(tempUnInt1_)) + [ + eps_p[gmsh_clear_vec_a(&tempVecDouble1_)] + >> int_p[assign_a(tempUnInt2_)] + >> repeat_p(3) + [real_p[assign_a(tempDouble1_)] + [gmsh_push_vec_a(&tempVecDouble1_, + &tempDouble1_)] + ] + [gmsh_insert_map_a > + (&tempCoordMap_, &tempUnInt2_, + &tempVecDouble1_) + ] + ] + >> str_p("$EndNodes") + >> eps_p[gmsh_transport_nodes_a(self.gmshSelf_, + &tempCoordMap_)]; + + // Rules for the Elements section. + gmsh_elements_r = str_p("$Elements") + >> int_p[assign_a(tempUnInt1_)] + >> eps_p[gmsh_info_msg_a("Elements in gmsh file: ", + &tempUnInt1_)] + >> gmsh_element_r + >> str_p("$EndElements"); + + gmsh_element_r = repeat_p(boost::ref(tempUnInt1_)) + [ // Parse one element + // Clear the vectors for nodes and tags of an elem. + eps_p[gmsh_clear_vec_a + (&tempElemNode_)] + >> eps_p[gmsh_clear_vec_a + (&tempElemTag_)] + // Parse the element number. We don't need it. + >> int_p[assign_a(tempUnInt2_)] + // Parse the element type. + >> int_p[assign_a(tempUnShortInt1_)] + // Parse the number of tags. + >> int_p[assign_a(tempUnInt3_)] + // Parse the tags. + >> repeat_p(boost::ref(tempUnInt3_)) + [ + // Parse a single tag. + int_p[assign_a(tempUnInt4_)] + // Copy to vector. + >> eps_p[gmsh_push_vec_a + (&tempElemTag_, &tempUnInt4_)] + ][gmsh_nothing_a()] + // Copy the number of nodes of the actual element + // type (in tempUnShortInt1_) from the + // GMSH_ELEM_N_NODES array in gmshconst.hh in + // tempUnShortInt2_. + // Do this, because I don't get the direct array + // access not work. + >> eps_p[gmsh_array_access_a + (&tempUnShortInt2_, &tempUnShortInt1_)] + // Parse the respective number of nodes. + >> repeat_p(boost::ref(tempUnShortInt2_)) + [ + // Parse a sigle node. + int_p[assign_a(tempUnInt4_)] + // Copy to vector. + >> eps_p[gmsh_push_vec_a + (&tempElemNode_, &tempUnInt4_)] + + ] + [ + // Transport the parsed element nodes in the + // respective gmsh.hh data structure. + gmsh_transport_elem_a(self.gmshSelf_, + &tempUnShortInt1_, &tempElemNode_) + ] + [ + // Transport the parsed element tags in the + // respective gmsh.hh data structure. + gmsh_transport_tag_a(self.gmshSelf_, + &tempUnShortInt1_, &tempElemTag_) + ] + // This short section demonstrates, like con- + // ditional parsing can be used instead: + // + //>> if_p(gmsh_compare_a + // (&tempUnShortInt1_,&(elemType_[0]))) + // [ + // // Element type 1 == line. + // repeat_p(2) + // [ + // int_p[assign_a(tempUnInt4_)] + // ][gmsh_nothing_a()] + // ] + // + ] + [ + // All elements are parsed. + // Show what we have paresd. + gmsh_show_elem_result_a(self.gmshSelf_) + ]; + + } + + rule expression, term, factor, integer; + + + rule vtk_import_r; + + rule gmsh_import_r; + rule gmsh_mesh_format_r; + rule gmsh_nodes_r; + rule gmsh_elements_r; + rule gmsh_element_r; + + rule const& + start() const { return gmsh_import_r; } + + // These are temporal variables used during the parsing process. + // These variables are used at different places for different things, + // they are only valid in small ranges. + int tempInt1_; + unsigned int tempUnInt1_; + unsigned int tempUnInt2_; + unsigned int tempUnInt3_; + unsigned int tempUnInt4_; + unsigned short int tempUnShortInt1_; + unsigned short int tempUnShortInt2_; + + double tempDouble1_; + + vector tempIntVec1_; + vector tempDoubleVec1_; + vector > tempDoubleVec2_; + + vector tempVecDouble1_; + + // Data structure for node coordinates. + // The gmsh node coordinates are not stored and numbered consecutive. So we + // have to sort and map them to a consecutive index set using this map. + map > tempCoordMap_; + // Data structure to store the nodes of an element. + vector tempElemNode_; + // Data structure to store an elements tags. + vector tempElemTag_; + + }; + + gmsh* gmshSelf_; +}; + +#endif // GMSHGRAMMAR_HH_ diff --git a/H5Fed/libsrc/gmsh/gmshsemanticaction.hh b/H5Fed/libsrc/gmsh/gmshsemanticaction.hh new file mode 100644 index 0000000..9aaff9f --- /dev/null +++ b/H5Fed/libsrc/gmsh/gmshsemanticaction.hh @@ -0,0 +1,344 @@ +// rights - 2006-, copyright benedikt oswald and patrick leidenberger, +// all rights reserved +/** \brief Definition of VTK ASCII file format parser + * project - phidias3d + * file name - vtksemanticaction.h + * file type - c++ include file + * objective - declare semantic action for the vtk file parser + * modified - 2006 jul 03, creation, pl + * modified - 2006 jul 05, insert fuctionality of calling member functions + * of the vtk class, pl + * modified - 2006 jul 06, Add actions for vtk file header and file format. + * modified - 2006 jul 11, Add a lot of action to store the unstructured + * grid dataset. This section is complete. + * modified - 2006 jul 13, Make the action work well: it is not a good idea + * to transport pointers or strings! Use pointers of + * characters. + * modified - 2006 aug 27, Correct error in pushNode function, pl. + **/ + + +/* include standard header files */ +#include +#include +#include +//#include +#include +#include +#include +#include +#include +#include "gmsh.hh" + +/* include proprietary header files */ +//#include "ansyscnx.h" + +/* activate namespaces */ +using namespace std; +using namespace boost; +using namespace boost::spirit; +//using namespace phidias3d; + +using namespace gmshtohdf5fed; + + +/* type definitions */ +typedef char char_t; +typedef file_iterator iterator_t; +typedef scanner scanner_t; +typedef rule rule_t; + +#ifndef GMSHSEMANTICACTION_HH_ +#define GMSHSEMANTICACTION_HH_ + +/* semantic actions */ + +// Call version-check of gmsh file. +struct gmsh_version_a +{ + gmsh_version_a(gmsh* gmshSelf, int* tempInt) + : gmshSelf_(gmshSelf), tempInt_(tempInt) {} + void operator()(int value) const + { + //rDebug("Inside gmsh_version_a."); + gmshSelf_->gmshCheckVersion(tempInt_); + }; + gmsh* gmshSelf_; + int* tempInt_; +}; + +struct gmsh_file_type_a +{ + gmsh_file_type_a(gmsh* gmshSelf, int* tempInt) + : gmshSelf_(gmshSelf), tempInt_(tempInt) {} + void operator()(int value) const + { + //rDebug("Inside gmsh_version_a."); + gmshSelf_->gmshCheckFileType(tempInt_); + }; + gmsh* gmshSelf_; + int* tempInt_; +}; + +template +struct gmsh_clear_vec_a +{ + gmsh_clear_vec_a(vector* vect) + : vect_(vect) {} + void operator()(char const* first, char const* last) + const + { + //rDebug("Clear temporal vector."); + (*vect_).clear(); + }; + vector* vect_; +}; + +template +struct gmsh_resize_vec_a +{ + gmsh_resize_vec_a(vector* vec, unsigned int size) + : vec_(vec), size_(size) {} + void operator() (char const* first,char const* last) + const + { + //rDebug("Inside gmsh_resize_vec_a."); + (*vec_).resize(size_); + }; + void operator() (const int tempInt) + const + { + //rDebug("Inside gmsh_resize_vec_a."); + (*vec_).resize(size_); + }; + unsigned int size_; + vector * vec_; +}; + +template +struct gmsh_insert_vec_a +{ + gmsh_insert_vec_a(vector* vec, unsigned int const position, + type* value) + : vec_(vec), position_(position), value_(value) {} + void operator() (char const* first,char const* last) + const + { + (*vec_)[position_]=*value_; + } + vector * vec_; + unsigned int position_; + type* value_; +}; + + +template +struct gmsh_push_vec_a +{ + gmsh_push_vec_a(vector* vec, type* value) + : vec_(vec), value_(value){} + void operator() (char const* first,char const* last) + const + { + //rDebug(" Push value to vector."); + (*vec_).push_back(*value_); + }; + void operator() (const double tempDouble) + const + { + //rDebug(" Push value to vector."); + (*vec_).push_back(*value_); + }; + type* value_; + vector * vec_; +}; + + +template +struct gmsh_insert_map_a +{ + gmsh_insert_map_a(map* tempMap, type1* key, + type2* value) + : map_(tempMap), key_(key), value_(value) {} + void operator() (char const* first,char const* last) + const + { + (*map_)[(*key_)]=*value_; + }; + map * map_; + type1* key_; + type2* value_; +}; + +template +struct gmsh_clear_map_a +{ + gmsh_clear_map_a(map* tempMap) + : map_(tempMap) {} + void operator() (char const* first,char const* last) + const + { + (*map_).clear(); + }; + map * map_; +}; + + +struct gmsh_transport_nodes_a +{ + gmsh_transport_nodes_a(gmsh* gmshSelf, + map >* tempMap) + : gmshSelf_(gmshSelf), map_(tempMap) {} + void operator() (char const* first,char const* last) + const + { + //rDebug("Copy nodes in data structure."); + for (map >::iterator + iter = (*map_).begin(); iter != (*map_).end(); iter++) + { + vector* temp; + unsigned int tempNumber; + temp = &((*iter).second); + tempNumber = ((*iter).first); + gmshSelf_->gmshPushNode(temp); + gmshSelf_->gmshPushNodeNumber(&tempNumber); + //rDebug("%f %f %f", (*temp)[0], (*temp)[1], (*temp)[2]); + } + + }; + map >* map_; + gmsh* gmshSelf_; +}; + + + +struct gmsh_transport_elem_a +{ + gmsh_transport_elem_a(gmsh* gmshSelf, unsigned short int* elemType, + vector * tempElemNode) + : gmshSelf_(gmshSelf), elemType_(elemType), tempElemNode_(tempElemNode) {} + void operator() (char const* first,char const* last) + const + { + //rDebug("Copy element type %d in data structure.", *elemType_); + gmshSelf_->gmshPushElem(*elemType_, tempElemNode_); + }; + gmsh* gmshSelf_; + unsigned short int* elemType_; + vector * tempElemNode_; +}; + + +struct gmsh_transport_tag_a +{ + gmsh_transport_tag_a(gmsh* gmshSelf, unsigned short int* elemType, + vector * tempElemTag) + : gmshSelf_(gmshSelf), elemType_(elemType), tempElemTag_(tempElemTag) {} + void operator() (char const* first,char const* last) + const + { + //rDebug("Copy element tag list in data structure."); + gmshSelf_->gmshPushTag(*elemType_, tempElemTag_); + }; + gmsh* gmshSelf_; + unsigned short int* elemType_; + vector * tempElemTag_; +}; + + +// Print actions. +struct gmshEMsg_a +{ + gmshEMsg_a(string gmshEMsg, unsigned int* tempUnLongInt) + : gmshEMsg_(gmshEMsg), tempUnLongInt_(tempUnLongInt) {} + void operator()(char const* first, char const* last) + const + { + rError("%s %d",gmshEMsg_.c_str(),(*tempUnLongInt_)); + }; + string gmshEMsg_; + unsigned int* tempUnLongInt_; +}; + +struct gmsh_info_msg_a +{ + gmsh_info_msg_a(string gmsh_info_msg) + : gmsh_info_msg_(gmsh_info_msg), tempUnLongInt_(NULL), tempUnShortInt_(NULL) {} + gmsh_info_msg_a(string gmsh_info_msg, unsigned int* tempUnLongInt) + : gmsh_info_msg_(gmsh_info_msg), tempUnLongInt_(tempUnLongInt), tempUnShortInt_(NULL) {} + gmsh_info_msg_a(string gmsh_info_msg, unsigned short int* tempUnShortInt) + : gmsh_info_msg_(gmsh_info_msg), tempUnLongInt_(NULL), tempUnShortInt_(tempUnShortInt) {} + void operator()(char const* first, char const* last) + const + { + if ((tempUnLongInt_ == NULL) && (tempUnShortInt_ == NULL)) + rInfo("%s",gmsh_info_msg_.c_str()); + else if ((tempUnLongInt_ != NULL) && (tempUnShortInt_ == NULL)) + rInfo("%s%d",gmsh_info_msg_.c_str(),(*tempUnLongInt_)); + else if ((tempUnLongInt_ == NULL) && (tempUnShortInt_ != NULL)) + rInfo("%s%d",gmsh_info_msg_.c_str(),(*tempUnShortInt_)); + }; + string gmsh_info_msg_; + unsigned int* tempUnLongInt_; + unsigned short int* tempUnShortInt_; +}; + +struct gmsh_nothing_a +{ + gmsh_nothing_a() + {} + void operator()(char const* first, char const* last) + const + { + }; +}; + +template +struct gmsh_compare_a +{ + gmsh_compare_a(type* a, type* b) + : a_(a), b_(b) {} + bool operator () () const + { + if (*a_ == *b_) + { + //rDebug("Return TRUE! a = %d b = %d", *a_, *b_); + return true; + } + else + { + //rDebug("Return FALSE! a = %d b = %d", *a_, *b_); + return false; + } + }; + type* a_; + type* b_; +}; + +template +struct gmsh_array_access_a +{ + gmsh_array_access_a(type* a, type* b) + : a_(a), b_(b) {} + void operator()(char const* first, char const* last) const + { + *a_ = GMSH_ELEM_N_NODES[*b_]; + }; + type* a_; + type* b_; +}; + + +struct gmsh_show_elem_result_a +{ + gmsh_show_elem_result_a(gmsh* gmshSelf) + : gmshSelf_(gmshSelf) {} + void operator()(char const* first, char const* last) + const + { + gmshSelf_->gmshShowElemResult(); + }; + gmsh* gmshSelf_; +}; + +#endif // GMSHSEMANTICACTION_HH_ diff --git a/H5Fed/libsrc/gmsh/makefile.am b/H5Fed/libsrc/gmsh/makefile.am new file mode 100644 index 0000000..462bf04 --- /dev/null +++ b/H5Fed/libsrc/gmsh/makefile.am @@ -0,0 +1,18 @@ +## Makefile.am -- process this file with automake to produce Makefile.in +## +## authors - benedikt oswald and patrick leidenberger +## modified - 2006 aug 21, patrick leidenberger, creation +## modified - 2006 aug 23, pl, adaped to new directory structure. +# +## objective - automake input file for the gmsh directory +## project - gmshtohdf5fed + +noinst_LTLIBRARIES = libgmsh.la +gmshdir = $(topleveldir)/libsrc/gmsh +gmsh_HEADERS = gmsh.hh +libgmsh_la_SOURCES = gmsh.cc \ + gmsh.hh \ + gmshconst.hh \ + gmshgrammer.hh \ + gmshsemanticaction.hh +AM_CPPFLAGS = @AM_CPPFLAGS@ diff --git a/H5Fed/libsrc/h5fed/h5fed.cc b/H5Fed/libsrc/h5fed/h5fed.cc new file mode 100644 index 0000000..af66e94 --- /dev/null +++ b/H5Fed/libsrc/h5fed/h5fed.cc @@ -0,0 +1,37 @@ +// rights - 2006-, copyright benedikt, all rights reserved +// project - phidias3d +// file name - hdf5em.h +// file type - c++ implementation file +// objective - implement class for HDF5/ELECTROMAGNETIC file format access +// modified - 2006 jun 26, creation, benedikt oswald +// modified - 2006 +// inheritance - +// feature - implements the base class for HDF5/ELECTROMAGNETIC file format access. +// feature - +// required software - + + +/* include standard header files */ +//#include + + + +/* include proprietary files */ +#include "h5fed.hh" +#ifdef HAVE_HDF5 + +namespace hdf5em +{ +// +// hdf5em::hdf5em() +// { +// ; +// } +// +// hdf5em::~hdf5em() +// { +// ; +// } +// +} +#endif // HAVE_HDF5 diff --git a/H5Fed/libsrc/h5fed/h5fed.hh b/H5Fed/libsrc/h5fed/h5fed.hh new file mode 100644 index 0000000..f1d17af --- /dev/null +++ b/H5Fed/libsrc/h5fed/h5fed.hh @@ -0,0 +1,658 @@ +// rights - 2006-, copyright benedikt, all rights reserved +// project - phidias3d +// file name - hdf5em.h +// file type - c++ header file +// objective - declare class for HDF5/ELECTROMAGNETIC file format access +// modified - 2006 jun 26, creation, benedikt oswald +// modified - 2006 aug 26, pl, integrate automatic index mapping. +// inheritance - +// feature - declares the base class for HDF5/ELECTROMAGNETIC file format access; +// feature - this class is completely self contained, i.e. it does not need anything +// feature - external, except the STL and the HDF5 header files and the corresponding +// feature - library. +// required software - + +#ifndef H5FED_HH_ +#define H5FED_HH_ + +#ifdef HAVE_HDF5 + +/* include standard header files */ +#include +#include +#include +#include +#include + +// Include the files for rlog. +#include +#include +#include +#include +#include +#include + +// Include HDF5 headers. +#include + +// Include h5fed specific constants. +#include "h5fedconst.hh" + +/* include standard proprietary header files */ +#include "nonsciconst.h" +#include "physicomath.h" + +using namespace std; +using namespace physicomath; +using namespace nonsciconst; + +namespace H5Fed +{ + +class H5Fed { +public: + /** \brief constructor and destructor */ + H5Fed() + { + doIndexMapping_ = false; + indexMap_.clear(); + positionMap_.clear(); + + // Deactivate the HDF5 error output. + H5Eset_auto (0, NULL ); + }; + + // The Destructor. + ~H5Fed(){}; + + + //! Open an hdf5 finite element data file with appropriate access. + int open(string fileName, string fileAccess) + { + // Store filename and file access in private variable. + fileName_ = fileName; + fileAccess_ = fileAccess; + // Open file with respective rights via HDF5 API. + if (!fileAccess_.compare(FILE_READ)) + { + hdf5FileIdent_ = H5Fopen(fileName_.c_str(), H5F_ACC_RDONLY, H5P_DEFAULT); + return OKCODE; + } + else if (!fileAccess_.compare(FILE_READ_WRITE)) + { + hdf5FileIdent_ = H5Fopen(fileName_.c_str(), H5F_ACC_RDWR, H5P_DEFAULT); + return OKCODE; + } + else if (!fileAccess_.compare(FILE_CREATE)) + { + hdf5FileIdent_ = H5Fcreate(fileName_.c_str(), H5F_ACC_EXCL, + H5P_DEFAULT, H5P_DEFAULT); + if (hdf5FileIdent_ < 0) + { + rError("The file %s already exist.",fileName_.c_str()); + rError("To overwrite use the --force option."); + exit(ERRORCODE); + } + else + return OKCODE; + } + else if (!fileAccess_.compare(FILE_CREATE_FORCE)) + { + hdf5FileIdent_ = H5Fcreate(fileName_.c_str(), H5F_ACC_TRUNC, + H5P_DEFAULT, H5P_DEFAULT); + return OKCODE; + } + else + { + rError("Unknown file-open-attribute for hdf5 file."); + exit(ERRORCODE); + } + }; + + // Close an open hdf5 file. + int close(void) + { + if (hdf5FileIdent_ >= 0) + { + hdf5Status_ = H5Fclose(hdf5FileIdent_); + return OKCODE; + } + else + { + rError("You cannot close a file that is not opened."); + return ERRORCODE; + } + }; + + // Create the empty HDF5 Finite Element Stardart group hierarchy. + int createGroupHierarchie() + { + // Hdf5 group identifier for group access, localy valid (this method). + hid_t hdf5GroupIdent_; + // Create the groups. All group-name strings are defined in h5fedconst.hh. + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_ROOT.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_COORD.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_VOLUME_MESH.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_BOUNDARY_MESH.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_MATERIAL.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_ELECTROMAGNETIC.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_DISCRETE.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_PHYSICAL.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_DEBYE.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_LORENTZ.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_DRUDE.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_DOF.c_str(),H5P_DEFAULT); + hdf5GroupIdent_ = H5Gcreate(hdf5FileIdent_, + H5FED_G_FIELD.c_str(),H5P_DEFAULT); + return OKCODE; + }; + + // This function activate the automatic index mapping to create a gapfree + // and consecutive index set for the hdf5fed file. + // The indexVec holdes the numbers of the nodes in the same way, as the + // nodes are in the node vector. + int beginIndexMapping(std::vector* indexVec) + { + rDebug("Begin automatic index mapping."); + doIndexMapping_ = true; + indexMap_.clear(); + positionMap_.clear(); + + // Copy the old index to the map as map-key. + for(unsigned int varI = 0; varI < indexVec->size(); varI++) + { + indexMap_.insert(make_pair((*indexVec)[varI],0)); + } + // Number all elements in the map consecutive, starting with zero, that + // is the new index set. + unsigned int tempUnInt = 0; + for(std::map::iterator + iter = indexMap_.begin(); + iter != indexMap_.end(); iter ++) + { + iter->second = tempUnInt; + tempUnInt++; + } + // The first column contains the new index, the second the old position + // of the coordinate in the vector. + for(unsigned int varI = 0; varI < indexVec->size(); varI++) + { + positionMap_.insert(make_pair( + (indexMap_.find((*indexVec)[varI]))->second,varI)); + } + return OKCODE; + }; + + // This function deactivate the automatic index mapping. + // The uses index sets must be consecutive and gapfree. + int endIndexMapping() + { + rDebug("End automatic index mapping."); + doIndexMapping_ = false; + indexMap_.clear(); + return OKCODE; + }; + + // Write 3dim coordinates to h5fed file. + int coord3d (std::vector >* coord) + { + // All these operations are only allowed, if there is a valid file + // identifier. + if (hdf5FileIdent_ >= 0) + { + // Define the rank of the different dataspaces. + const int rank = 2; + // Hdf5 error handling variable for Hdf5 actions. + herr_t hdf5Status; + // Hdf5 dataspace identifier. + hid_t hdf5DataspaceId; + // Hdf5 dataset identifier. + hid_t hdf5DatasetId; + // Define the dimension of the data array. + // Number of rows: as much as coordinates. + // Number of colums: 3, one for each dimension. + hsize_t dim[2]; + dim[0] = coord->size(); + dim[1] = 3; + + // We copy the coordinates from coord in an standart array, so that + // hdf5 can handle it. + // We do this in portions, so we save memory. + + // Subdimension of hyperslab in memory: 1 line, 3 columns. + hsize_t dim_sub_mem[2]; + dim_sub_mem[0] = 1; + dim_sub_mem[1] = 3; + // Subdimension of hyperslab in file: 1 line, 3 columns. + hsize_t dim_sub_file[2]; + dim_sub_file[0] = 1; + dim_sub_file[1] = 3; + // Define the offset for reading from the memory. + // Always fixed. + hsize_t offset_mem[2]; + offset_mem[0] = 0; + offset_mem[1] = 0; + // Define the offset for writing into the file. + hsize_t offset_file[2]; + offset_file[0] = 0; // Row only at the beginning. We iterate over it. + offset_file[1] = 0; // We have no offset respective to the column. + + // Array for x, y and z component of one coordinate. + double coordinate[3]; + + // Dimesion and datatype of the file dataset, read out form file. + // This is not the fastest, but the most robust way. + hsize_t dim_out[2]; + hid_t dataType; + + + // Create dataspace of full size. + hdf5DataspaceId = H5Screate_simple(rank, dim, H5P_DEFAULT); + + // Create dataset of full size. + hdf5DatasetId = H5Dcreate(hdf5FileIdent_, H5FED_D_COORD3D.c_str(), + H5T_IEEE_F64LE, hdf5DataspaceId, H5P_DEFAULT); + + + + // Loop over all rows of the dataset (file) and copy the coord vector + // element wise. + hdf5Status = H5Sget_simple_extent_dims(hdf5DataspaceId, dim_out, H5P_DEFAULT); + dataType = H5Dget_type(hdf5DatasetId); + // If we use automatic mapping we need an interator to the map. + std::map::iterator + iter = positionMap_.begin(); + for (unsigned int varI = 0; varI < dim_out[0]; varI++) + { + // Iterate over the rows in file dataspace. + offset_file[0] = varI; + + // Copy every element of a coordinate. + for (unsigned int varJ = 0; varJ < dim_out[1]; varJ++) + { + // Here is the only special case for automated mapping: + // Do not copy the next in the input vector, copy the coord + // with the next following number. + if (doIndexMapping_ == true) + coordinate[varJ] = (*coord)[iter->second][varJ]; + else + coordinate[varJ] = (*coord)[varI][varJ]; + } + + // Select hyperslab ('region') in file dataspace. + hdf5Status = H5Sselect_hyperslab(hdf5DataspaceId, H5S_SELECT_SET, + offset_file, H5P_DEFAULT, + dim_sub_file, H5P_DEFAULT); + + // Define memory Dataspace. + hid_t hdf5MemspaceId; + hdf5MemspaceId = H5Screate_simple(rank, dim_sub_mem, H5P_DEFAULT); + // Select hyperslab ('region') in memory. + hdf5Status = H5Sselect_hyperslab(hdf5MemspaceId, H5S_SELECT_SET, + offset_mem, H5P_DEFAULT, + dim_sub_mem, H5P_DEFAULT); + + // Copy dataset to dataset from memory to file. + hdf5Status = H5Dwrite(hdf5DatasetId, H5T_NATIVE_DOUBLE, + hdf5MemspaceId, hdf5DataspaceId, + H5P_DEFAULT, coordinate); + + H5Sclose(hdf5MemspaceId); + // Increment the map iterator if we make automatic mapping. + if (doIndexMapping_) + iter++; + } + + // Close hdf5 identifier. + hdf5Status = H5Dclose(hdf5DatasetId); + hdf5Status = H5Sclose(hdf5DataspaceId); + + return OKCODE; + } + else + { + rError("You cannot operate to dataset COORD3D."); + rError("There is no valid file identifier."); + return ERRORCODE; + } + }; + + // Read and return tetrahedron on of the given level. + std::vector > tetrahedron(unsigned int level) + { + rError("The function: tetrahedron(unsigned int level) is not implemented."); + }; + // Copy the tetrahedon elements to the h5fed file. + int tetrahedron(unsigned int level, + std::vector< std::vector >* elem) + { + // Set dimension of an elements vector. + unsigned int elemDim = H5FED_TET_N_NODE; + // Set the name of the dataset, we want to operate. + string datasetName = H5FED_D_TETMESH + stringify(level); + // This function does the real work for all elements. + element_(level, elem, datasetName, elemDim); + return OKCODE; + + } + + int element_(unsigned int level, + std::vector< std::vector >* elem, + std::string datasetName, + unsigned int elemDim ) + { + // All these operations are only allowed, if there is a valid file + // identifier. + if (hdf5FileIdent_ >= 0) + { + rDebug("Insert a check, if the selected level exits,"); + rDebug("and if it is consecutive."); + // Define the rank of the different dataspaces. + const int rank = 2; + // Hdf5 error handling variable for Hdf5 actions. + herr_t hdf5Status; + // Hdf5 dataspace identifier. + hid_t hdf5DataspaceId; + // Hdf5 dataset identifier. + hid_t hdf5DatasetId; + // Define the dimension of the data array. + hsize_t dim[2]; + // Number of rows: as much as elements. + dim[0] = elem->size(); + // Number of colums: dimenstion of an elements vector. + dim[1] = elemDim; + + // We copy the element nodes from a element in an standart array, + // so that hdf5 can handle it. + // We do this for every element separate, so we save memory. + + // Subdimension of hyperslab in memory: 1 line, elemDim columns. + hsize_t dim_sub_mem[2]; + dim_sub_mem[0] = 1; + dim_sub_mem[1] = elemDim; + // Subdimension of hyperslab in file: 1 line, elemDim columns. + hsize_t dim_sub_file[2]; + dim_sub_file[0] = 1; + dim_sub_file[1] = elemDim; + // Define the offset for reading from the memory. + // Always fixed, because memory has exactly the same size. + hsize_t offset_mem[2]; + offset_mem[0] = 0; + offset_mem[1] = 0; + // Define the offset for writing into the file. + hsize_t offset_file[2]; + offset_file[0] = 0; // Row ofsett zero only at the beginning. + offset_file[1] = 0; // We have no offset respective to the column. + + // Array for single elements of an element vector. + unsigned int element[elemDim]; + + // Dimesion and datatype of the file dataset, read out form file. + // This is not the fastest, but the most robust way. + hsize_t dim_out[2]; + hid_t dataType; + + // Create dataspace of full size. + hdf5DataspaceId = H5Screate_simple(rank, dim, H5P_DEFAULT); + + // Create dataset of full size. + hdf5DatasetId = H5Dcreate(hdf5FileIdent_, datasetName.c_str(), + H5T_STD_U32LE, hdf5DataspaceId, H5P_DEFAULT); + + // Loop over all rows of the dataset (file) and copy the elem vector + // row wise. + hdf5Status = H5Sget_simple_extent_dims(hdf5DataspaceId, dim_out, + H5P_DEFAULT); + // Get the datatype of the datas we want to write. + dataType = H5Dget_type(hdf5DatasetId); + for (unsigned int varI = 0; varI < dim_out[0]; varI++) + { + // Iterate over the rows in file dataspace. + offset_file[0] = varI; + + // Copy every element of a coordinate. + for (unsigned int varJ = 0; varJ < dim_out[1]; varJ++) + { + // Here is the only special case for automated mapping: + // Do not copy the next in the input vector, copy the coord + // with the next following number. + if (doIndexMapping_ == true) + { + std::map::iterator iter; + iter = indexMap_.find((*elem)[varI][varJ]); + element[varJ] = iter->second; + } + else + element[varJ] = (*elem)[varI][varJ]; + } + + // Select hyperslab ('region') in file dataspace. + hdf5Status = H5Sselect_hyperslab(hdf5DataspaceId, H5S_SELECT_SET, + offset_file, H5P_DEFAULT, + dim_sub_file, H5P_DEFAULT); + // Define memory Dataspace. + hid_t hdf5MemspaceId; + hdf5MemspaceId = H5Screate_simple(rank, dim_sub_mem, H5P_DEFAULT); + // Select hyperslab ('region') in memory. + hdf5Status = H5Sselect_hyperslab(hdf5MemspaceId, H5S_SELECT_SET, + offset_mem, H5P_DEFAULT, + dim_sub_mem, H5P_DEFAULT); + // Copy dataset to dataset from memory to file. + hdf5Status = H5Dwrite(hdf5DatasetId, dataType, + hdf5MemspaceId, hdf5DataspaceId, + H5P_DEFAULT, element); + // Close the memory space identifier. + H5Sclose(hdf5MemspaceId); + } + + // Close hdf5 identifier. + hdf5Status = H5Dclose(hdf5DatasetId); + hdf5Status = H5Sclose(hdf5DataspaceId); + + return OKCODE; + } + else + { + rError("You cannot operate to a dataset."); + rError("There is no valid file identifier."); + exit(ERRORCODE); + } + }; + + + + + + + /** \brief Inquire existence of HDF5 groups */ +// existsVolumeMesh() +// existsCoord() +// virtual bool existsMesh(){ return(false); } +// virtual bool existsVertices(){ return(false); } +// virtual bool existsEdges(){ return(false); } +// virtual bool existsTriangles(){ return(false); } +// virtual bool existsBoundaryTriangles(){ return(false); } + +// /** \brief Data access both reading and writing */ +// virtual unsigned int nDim(){ return(ndim_); } /* retrieve number of mesh dimension */ +// virtual unsigned int nLevel(){ return(nlevel_); } /* retrieve number of mesh levels */ +// virtual unsigned int nCoord(){ return(nvertex_); } /* retrieve total number of all vertices */ +// virtual unsigned int nCoord(unsigned int level){ return(nvertex_); } /* retrieve total number of vertices used for defining the mesh */ +// Überladen greifen auf nelem zu +// virtual std::vector nTet(){ return(ntet_); } /* retrieve vector containing number of tetrahedra present in levels of the mesh */ +// virtual std::vector nBoundary(){ return(nboundary_); } /* retrieve vector containing number of boundary meshes present on a level of the mesh */ +// Pism, ... +// nBoundaryTriangle +// Quad.. +// Edge + + + /** \brief HDF5EM data access routines */ + + /** \brief Electromagnetic boundary conditions */ +//_______________________________ +// virtual int triangleBC(unsigned int level, unsigned int triangle, unsigned int bc){} /* set electromagnetic boundary condition for triangle on level */ +// virtual unsigned int triangleBC(unsigned int level, unsigned int triangle){} /* retrieve electromagnetic boundary condition type */ +// +// virtual int rhoSurfaceImpedance(unsigned int level, unsigned int triangle, double rho){} /* store resistance of surface impedance for triangle on level */ +// virtual double rhoSurfaceImpedance(unsigned int level, unsigned int triangle){} /* retrieve resistance of surface impedance boundary condition */ +// +// /** \brief Mesh */ +// stl vectoren +// virtual unsigned int** tetrahedron(unsigned int level){} /* read tetrahedra on level l stored in hdf5 file and return them in simple form */ +// virtual int tetrahedron(unsigned int level, unsigned int ntetrahedron, unsigned int** tetrahedron){} +// virtual unsigned int* vertexId(){} /* read identification tag of vertices */ +// +// virtual double** vertex(unsigned int level){} /* read vertices */ +// virtual int vertex(unsigned int nvertex, double** vertex){} /* write vertices */ +// +// virtual unsigned int** boundary(unsigned int level, unsigned int wboundary){} /* read boundary meshes stored in the hdf5 file on level and return number of them */ +// virtual int boundary(unsigned int level, unsigned int** boundary, unsigned int wboundary){} /* write whichboundary boundary mesh into file */ +// +// virtual unsigned int** edge(unsigned int level, aqmedge* &edge){} /* read edges on level and return number of them */ +// virtual int edge(unsigned int level, unsigned int* edge){} /* write edges on level and return number of them */ +// +// virtual unsigned int** triangle(unsigned int level){} /* read Triangular faces on level */ +// virtual int triangle(unsigned int level, unsigned int** triangle){} /* write Triangular faces on level */ +// +// /** \brief Materials */ +// bool existsMaterials() /* find out if there are materials parameters at discrete frequencies, energies or wavelength */ +// +// vector frequency(){} /* read a vector of discrete frequencies stored in the file */ +// int frequency(vector f){} /* store a vector of discrete frequencies into the file */ +// +// vector energy(){} /* read a vector of discrete energies stored in the file */ +// int energy(vector e){} /* store a vector of discrete wavelengths into the file */ +// +// vector wavelength(){} /* read a vector of discrete wavelengths stored in the file */ +// int wavelength(vector lambda){} /* store a vector of discrete wavelengths into the file */ +// +// vector< complex > permittivity(){} /* read a vector of complex valued relative permittivities from the file */ +// int permittivity( vector< complex > epsilonr){} /* store a vector of complex valued relative permittivities into the file */ +// +// vector< complex > permeability(){} /* read a vector of complex valued relative permittivities from the file */ +// int permeability( vector< complex > mur){} /* store a vector of complex valued relative permittivities into the file */ +// +// vector< complex > conductivity(){} /* read a vector of complex valued relative permittivities from the file */ +// int conductivity( vector< complex sigma>){} /* store a vector of complex valued relative permittivities into the file */ +// +// /** \brief Materials */ +// bool existsDebyeMaterial(){} /* are the Debye material model paramters */ +// bool existsLorentz(){} /* are there Lorentz material model parameters */ +// bool existsDrudeMaterial(){} /* are there Drude material model parameters */ +// +// /* Debye dielectric material model parameters, cf. Taflove et al. pp. 354 */ +// std weightsDebye(){} /* retrieve vector of Debye material model weights */ +// int weightsDebye(vector weightsdebye){} /* store vector of Debye material model weights */ +// +// std relaxationFrequencyDebye(){} /* retrieve vector of Debye material model relaxation frequencies */ +// int relaxationFrequencyDebye(vector relaxfreq){} /* retrieve vector of Debye material model relaxation frequencies */ +// +// double epsilonStaticDebye(){} /* retrieve static limit of relative permittivitiye */ +// int epsilonStaticDebye(double epsilonstaticr){} /* store static limit of relative permittivitiye */ +// +// double epsilonInfinityDebye(){} /* retrieve infinite limit of relative permittivity */ +// int epsilonInfinityDebye(double epsiloninftyr){} /* store infinite limit of relative permittivity */ +// +// /* Lorentz dielectric material model parameters, cf. Taflove et al. pp. 354 */ +// std weightsLorentz(){} /* retrieve vector of Debye material model weights */ +// int weightsLorentz(vector weightsdebye){} /* store vector of Debye material model weights */ +// +// std poleFrequencyLorentz(){} /* retrieve vector of Lorentz material model relaxation frequencies */ +// int poleFrequencyDebye(vector polefreq){} /* retrieve vector of Lorentz material model relaxation frequencies */ +// +// std dampingCoefficientLorentz(){} /* retrieve vector of Lorentz material model damping coefficients */ +// int dampingCoefficientLorentz(vector dampingcoeff){} /* retrieve vector of Lorentz material model damping coefficients */ +// +// double epsilonStaticLorentz(){} /* retrieve static limit of relative permittivitiye */ +// int epsilonStaticLorentz(double epsilonstaticr){} /* store static limit of relative permittivitiye */ +// +// double epsilonInfinityLorentz(){} /* retrieve infinite limit of relative permittivity */ +// int epsilonInfinityLorentz(double epsiloninftyr){} /* store infinite limit of relative permittivity */ +// +// /* Drude dielectric material model parameters, cf. Taflove et al. pp. 354 */ +// std weightsDrude(){} /* retrieve vector of Drude material model weights */ +// int weightsDrude(vector weightsdebye){} /* store vector of Drude material model weights */ +// +// std poleFrequencyDrude(){} /* retrieve vector of Drude material model pole frequencies */ +// int poleFrequencyDrude(vector relaxfreq){} /* retrieve vector of Drude material model pole frequencies */ +// +// std inversePoleRelaxationTimeDrude(){} /* retrieve vector of Lorentz material model inverse pole relaxation time */ +// int inversePoleRelaxationTimeDrude(vector inversepolerelaxtime){} /* retrieve vector of Lorentz material model inverse pole relaxation time */ +// +// double epsilonStaticDrude(){} /* retrieve static limit of relative permittivitiye */ +// int epsilonStaticDrude(double epsilonstaticr){} /* store static limit of relative permittivitiye */ +// +// double epsilonInfinityDrude(){} /* retrieve infinite limit of relative permittivity */ +// int epsilonInfinityDRude(double epsiloninftyr){} /* store infinite limit of relative permittivity */ +//________________________________________________________________ +// protected: +// + +private: + //-----------------------------------------------------------------------// + // Private data structure. // + //-----------------------------------------------------------------------// + // Store the filename of the H5Fed here. + string fileName_; + // Store the file access rights of the H5Fed here. + string fileAccess_; + + // Hdf5 error variable stores the success of an Hdf5 action. + herr_t hdf5Status_; + // Hdf5 file identifier for file access. If a file access fails, the + // identifyer is negetive. + hid_t hdf5FileIdent_; + + // If the elements we want to write to the h5fed file are not consecutive + // and with gaps numbered, this API shoud be able to map this to an gapfree + // and consecutive index set. + // To activate this function we have the following variable. + bool doIndexMapping_; + // The first entry in indexMap_ is the old index of a coordinate, the + // second is the new index usend in the h5fed file. + std::map indexMap_; + // The first entry in positionMap_ is the new index usend in the h5fed + // file, the second is the old postion in the coordinate vector. + std::map positionMap_; + + //-----------------------------------------------------------------------// + // Private helper functions. // + //-----------------------------------------------------------------------// + // This function converts a number to a string. + template + inline std::string stringify(type value) + { + std::ostringstream oStream; + try + { + oStream << value; + } + catch(exception& error) + { + rError("Cannot convert this variable to a string."); + rError("Error: %d",error.what()); + exit(ERRORCODE); + } + return oStream.str(); + } + +}; + +} // End of namespace H5Fed + + +#endif // HAVE_HDF5 +#endif //H5FED_HH_ diff --git a/H5Fed/libsrc/h5fed/h5fedconst.hh b/H5Fed/libsrc/h5fed/h5fedconst.hh new file mode 100644 index 0000000..96882c1 --- /dev/null +++ b/H5Fed/libsrc/h5fed/h5fedconst.hh @@ -0,0 +1,50 @@ +#ifndef H5FEDCONST_HH_ +#define H5FEDCONST_HH_ + +#include +using namespace std; + +//! Hdf5 specific file access: +// "r" for read only access. +// "w" for read and write access. +// "c" create a new a new file with if it does not exist already. +// "cf" create a new file, overwrite it if it exists already. +const string FILE_READ("r"); +const string FILE_READ_WRITE("w"); +const string FILE_CREATE("c"); +const string FILE_CREATE_FORCE("cf"); + +// Define the group names of the H5Fed starndard groups. +const string H5FED_G_ROOT ("/HDF5_FINITE_ELEMENT_DATA"); + const string H5FED_G_COORD (H5FED_G_ROOT+"/COORD"); + const string H5FED_G_VOLUME_MESH (H5FED_G_ROOT+"/VOLUME_MESH"); + const string H5FED_G_BOUNDARY_MESH (H5FED_G_ROOT+"/BOUNDARY_MESH"); + const string H5FED_G_MATERIAL (H5FED_G_ROOT+"/MATERIAL"); + const string H5FED_G_ELECTROMAGNETIC (H5FED_G_MATERIAL+"/ELECTROMAGNETIC"); + const string H5FED_G_DISCRETE (H5FED_G_ELECTROMAGNETIC+"/DISCRETE"); + const string H5FED_G_PHYSICAL (H5FED_G_ELECTROMAGNETIC+"/PHYSICAL"); + const string H5FED_G_DEBYE (H5FED_G_PHYSICAL+"/DEBYE"); + const string H5FED_G_LORENTZ (H5FED_G_PHYSICAL+"/LORENTZ"); + const string H5FED_G_DRUDE (H5FED_G_PHYSICAL+"/DRUDE"); + const string H5FED_G_DOF (H5FED_G_ROOT+"/DOF"); + const string H5FED_G_FIELD (H5FED_G_ROOT+"/FIELD"); + +// Define the dataset names of the H5Fed standard datasets. +const string H5FED_D_COORD3D (H5FED_G_COORD+"/COORD3D"); +const string H5FED_D_TETMESH (H5FED_G_VOLUME_MESH+"/TETMESH_L"); +const string H5FED_D_HEXMESH (H5FED_G_VOLUME_MESH+"/HEXMESH_L"); +const string H5FED_D_PRISMATICMESH (H5FED_G_VOLUME_MESH+"/PRISMATICMESH_L"); +const string H5FED_D_PYRAMIDMESH (H5FED_G_VOLUME_MESH+"/PYRAMIDMESH_L"); +const string H5FED_D_TRIANGLEMESH (H5FED_G_VOLUME_MESH+"/TRIANGLEMESH_L"); +const string H5FED_D_QUADRANGLEMESH (H5FED_G_VOLUME_MESH+"/QUADRANGLEMESH_L"); + +// How much nodes have a geometric figure. +const unsigned short int H5FED_TET_N_NODE = 4; +const unsigned short int H5FED_HEX_N_NODE = 8; +const unsigned short int H5FED_PRISMATIC_N_NODE = 6; +const unsigned short int H5FED_PYRAMID_N_NODE = 5; +const unsigned short int H5FED_TRIANGLE_N_NODE = 3; +const unsigned short int H5FED_QUADRANGLE_N_NODE = 4; + + +#endif /*H5FEDCONST_HH_*/ diff --git a/H5Fed/libsrc/h5fed/makefile.am b/H5Fed/libsrc/h5fed/makefile.am new file mode 100644 index 0000000..cfe3afe --- /dev/null +++ b/H5Fed/libsrc/h5fed/makefile.am @@ -0,0 +1,14 @@ +## Makefile.am -- process this file with automake to produce Makefile.in +## +## authors - benedikt oswald and patrick leidenberger +## modified - 2006 aug 24, patrick leidenberger, creation +# +## objective - automake input file for the h5fed directory +## project - gmsh2h5fed + +noinst_LTLIBRARIES = libh5fed.la +h5feddir = $(topleveldir)/libsrc/h5fed +h5fed_HEADERS = h5fed.hh +libh5fed_la_SOURCES = h5fed.cc \ + h5fed.hh +AM_CPPFLAGS = @AM_CPPFLAGS@ diff --git a/H5Fed/libsrc/makefile.am b/H5Fed/libsrc/makefile.am new file mode 100644 index 0000000..688d6db --- /dev/null +++ b/H5Fed/libsrc/makefile.am @@ -0,0 +1,11 @@ +## Makefile.am -- process this file with automake to produce Makefile.in +## +## authors - benedikt oswald and patrick leidenberger +## modified - 2006 aug 21, patrick leidenberger, creation +## modified - 2006 aug 24, pl, add h5fed path. +# +## objective - automake input file for the libsrc directory +## project - gmsh2h5fed + +SUBDIRS = gmsh h5fed +AM_CPPFLAGS = @AM_CPPFLAGS@ diff --git a/H5Fed/libsrc/stdincl/nonsciconst.h b/H5Fed/libsrc/stdincl/nonsciconst.h new file mode 100644 index 0000000..75b184c --- /dev/null +++ b/H5Fed/libsrc/stdincl/nonsciconst.h @@ -0,0 +1,143 @@ +// rights - copyright by benedikt oswald, 2002-2006, all rights reserved +// project - phidias3d +// file name - nonsciconst.h +// file type - c++ include file +// author - benedikt oswald +// modified - 2004 may 21, creation, benedikt oswald +// modified - 2004 jun 11, added font definitions, benedikt oswald +// modified - 2006 jun 26, transferred to project phidias3d, benedikt oswald +// modified - 2006 jun 28, correction of RIGHTANGLE_DEG from int to double, +// patrick leidenberger +// modified - 2006 jul 11, add vtk cell type constants, +// patrick leidenberger +// objective - define technical, non-scientific constants, e.g. plot paper +// dimensions etc. + + +/* include standard libraries */ +#include +#include +#include +#include + + +#ifndef _NONSCICONST_ +#define _NONSCICONST_ + +using namespace std; + +namespace nonsciconst +{ + +const double A4WIDTH = 210.0; +const double A4HEIGHT = 297.0; + +const double A5WIDHT = 105.0; +const double A5HEIGHT = 148.5; + +const unsigned int FRAMED = 1; +const unsigned int NOTFRAMED = 0; +const unsigned int BELOW = 1; +const unsigned int ABOVE = 0; +const unsigned int ATLEFT = 1; +const unsigned int ATRIGHT = 0; +const unsigned int FILLED = 1; +const unsigned int NOTFILLED = 0; +const unsigned int OUTERFACES = 1; +const unsigned int INNERFACES = 0; + +const double RIGHTANGLE_DEG = 90.0; + +const unsigned int DRAW_GRID_NODES_FLAG = 1; +const unsigned int DRAW_GRID_LINES_FLAG = 1; + +const double MAXHUE = 0.7; +const double MAXSAT = 1.0; +const double MAXBRG = 1.0; + +const unsigned int GRAY_COLORSPACE = 0; +const unsigned int RGB_COLORSPACE = 2; +const unsigned int HSB_COLORSPACE = 4; +const unsigned int CMYK_COLORSPACE = 8; + +const double HSB_H_BLUE = 0.7; +const double HSB_H_RED = 1.0; +const double HSB_H_BLACK = 0.1; + +const unsigned int LEGEND_HORIZONTAL = 1; +const unsigned int LEGEND_VERTICAL = 0; + +const unsigned int NUMCHARPLTFLNM = 256; +const unsigned int NUMCHARSTRINGPLOTPROD = 256; +const unsigned int DSPLYSTRLE = 512; +const unsigned int MAXFILENAMSTRLEN = 512; +const unsigned int DSPSTRLEN = 256; + +const double MINIMUM_DB_VAL = -60.0; + +const string HELVETICA_OBLIQUE_FNT("Helvetica-Oblique"); +const string HELVETICA_FNT("Helvetica"); +const string TIMES_FNT("Times-Roman"); +const string ARIAL_FNT("Arial"); +const string SYMBOL_FNT("Symbol"); + +const double INCHINPT = 72.0; /* define an inch in points, a typographic unit */ +const double INCHINMM = 25.4; /* define an inch in millimeter */ + +const string ELECTRIC_FIELD_UNIT_STRING("[V/m]"); +const string ELECTRIC_FIELD_UNIT_STRING_DB("[norm. dB]"); + +const double TEXT_DOWN_DIR_DEG = 270.0; +const double TEXT_RIGHT_DIR_DEG = 0.0; + +const unsigned int COLRSPCDIM = 3; + +const double PSGRAF3_SYMBOL_RADIUS_PCOORD=0.3; + +const int PSGRAF3_SYMBOL_CIRCLE = 0; +const int PSGRAF3_SYMBOL_SQUARE = 1; +const int PSGRAF3_SYMBOL_RHOMBUS = 2; +const int PSGRAF3_SYMBOL_TRIANGLE_TIPUP = 3; +const int PSGRAF3_SYMBOL_TRIANGLE_TIPDOWN = 4; + +const int OKCODE = 0; +const int ERRORCODE = 1; +const int ERROR_SINGULAR_MATRIX = 2; +const int ERROR_PSGRAF3_NOT_AVAILABLE = 3; +const int ERROR_NNZ_IS_ZERO = 100; + + +const string VTK_LFF_EXTENSION(".vtk"); +const string HDF5_EXTENSION(".h5"); + +const string TAB_STRING("\t"); +const string SINGLE_SPACE(" "); + + +const int DEFAULT_FLOAT_PRECISION=6; + +// Define constants for vtk cell types. +const unsigned int VTK_VERTEX = 1; +const unsigned int VTK_POLY_VERTEX = 2; +const unsigned int VTK_LINE = 3; +const unsigned int VTK_POLY_LINE = 4; +const unsigned int VTK_TRIANGLE = 5; +const unsigned int VTK_TRIANGEL_STRIP = 6; +const unsigned int VTK_POLYGON = 7; +const unsigned int VTK_PIXEL = 8; +const unsigned int VTK_QUAD = 9; +const unsigned int VTK_TETRA = 10; +const unsigned int VTK_VOXEL = 11; +const unsigned int VTK_HEXAHEDRON = 12; +const unsigned int VTK_WEDGE = 13; +const unsigned int VTK_PYRAMID = 14; +const unsigned int VTK_QUADRATIC_EDGE = 21; +const unsigned int VTK_QUADRATIC_TRIANGLE = 22; +const unsigned int VTK_QUADRATIC_QUAD = 23; +const unsigned int VTK_QUADRATIC_TETRA = 24; +const unsigned int VTK_QUATRATIC_HEXAHEDRON = 25; + +} + +#endif + diff --git a/H5Fed/libsrc/stdincl/physicomath.h b/H5Fed/libsrc/stdincl/physicomath.h new file mode 100644 index 0000000..043d58f --- /dev/null +++ b/H5Fed/libsrc/stdincl/physicomath.h @@ -0,0 +1,72 @@ +// rights - copyright by benedikt oswald, 2002-2006, all rights reserved +// project - phidias3d +// file name - physicomath.h +// file type - c++ include file +// author - benedikt oswald +// modified - 2003 jan 30, creation - +// modified - 2006 jun 26, transferred to project phidias3d, benedikt oswald +// objective - physical and mathematical quantities, constansts etc. + +#include +#include + +#ifndef _PHYSICO_MATH_ +#define _PHYSICO_MATH_ + +using namespace std; + +namespace physicomath +{ + const double ZERO = 0; + const int INT_ZERO = 0; + const unsigned int UNSIGNED_INT_ZERO = 0; + const double DOUBLE_ZERO = 0.0; + const int INT_ONE = 1; + const unsigned int UNSIGNED_INT_ONE = 1; + const int INT_TWO = 2; + const double DOUBLE_ONE = 1.0; + const double DOUBLE_TWO = 2.0; + +#ifndef IMAGINARY_UNIT_ +#define IMAGINARY_UNIT_ + const complex IU(0.0,1.0); +#endif + + const double PI = 3.1415926535; + const double EPSILON_ZERO = 8.85418782e-12; + + const double MU_ZERO = 4.0 * PI * 1.0e-7; + + const double SPEED_OF_LIGHT = (1.0/(sqrt(EPSILON_ZERO*MU_ZERO))); + + const double Z0 = sqrt(MU_ZERO/EPSILON_ZERO); + + const double TERAHERTZ = 1.0e12; + const double GIGAHERTZ = 1.0e9; + const double MEGAHERTZ = 1.0e6; + const double KILOHERTZ = 1.0e3; + + const double SECOND = 1.0e0; + const double MILLISECOND = 1.0e-3; + const double MICROSECOND = 1.0e-6; + const double NANOSECOND = 1.0e-9; + const double PICOSECOND = 1.0e-12; + const double FEMTOSECOND = 1.0e-15; + + + const double L_BAND_CENTER_FREQUENCY=1.414e9; + + const double DOUBLE_REL_ZERO_LIMIT=1.0e-100; + + + const double METER = 1.0; /* define a meter, the standard */ + const double DECIMETER = 0.1; /* define a tenth of a meter */ + const double CENTIMETER = 1.0e-2; /* define a centimeter */ + const double MICROMETER = 1.0e-6; /* define a micrometer */ + const double NANOMETER = 1.0e-9; /* define a nanomenter */ + const double ANGSTROM = 1.0e-10; /* define an angstrom */ +} + +#endif + + diff --git a/H5Fed/makefile.am b/H5Fed/makefile.am new file mode 100644 index 0000000..e9f1504 --- /dev/null +++ b/H5Fed/makefile.am @@ -0,0 +1,10 @@ +## Makefile.am -- process this file with automake to produce Makefile.in +## +## authors - patrick leidenberger +## modified - 2006 aug 21, patrick leidenberger, creation +## objective - top level automake file for H5Fed +## project - H5Fed + +SUBDIRS = libsrc applications + +AM_CPPFLAGS = @AM_CPPFLAGS@ diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..a249863 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,14 @@ +# Trial by Antino Kim +# Top level Makefile.am + +SUBDIRS = \ + src \ + test \ + tools + +MAINTAINERCLEANFILES = \ + config.h \ + config.log \ + config.status \ + stamp-h.in \ + stamp-h1 diff --git a/Makefile.orig b/Makefile.orig new file mode 100755 index 0000000..883418f --- /dev/null +++ b/Makefile.orig @@ -0,0 +1,59 @@ + +# This is a very rudimentary multiarchitecture makefile +# You need to uncomment the default block of make variables you need +# Some key things to watch for are the following defines +# -DREGRESSIONTEST : enables a main(){} inside of +# the H5Part.cc file that does simple regression testing. +# -DPARALLEL_IO : If you want to use parallel HDF5, you have to +# enable this. Otherwise, you get only the serial +# implementation of the library. + +# MacOS-X Serial +#CXX = c++ +#CC = cc +#F90 = xlf +#H5HOME = /usr/local +#CFLAGS = -O -g -I$(H5HOME)/include +#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm + +# AIX/SP-2 Parallel : Seaborg +#CXX = mpCC_r +#CC = mpcc_r +#F90 = mpxlf +#H5HOME = /usr/common/usg/hdf5/1.4.4/parallel +#H4HOME = /usr/common/usg/hdf/default +#OPT = -qarch=auto -qtune=auto-qcache=auto -O3 -qhot +#CFLAGS = -g -bmaxdata:800000000 -bmaxstack:256000000 -I$(H5HOME)/include +#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -L$(H4HOME)/lib -lz -lm + +# Linux Serial +#CXX = g++ +#CC = gcc +#F90 = g77 # or could be pgif90 +#CFLAGS = -O -g -I$(H5HOME)/include +#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm + +# Linux Jacquard +CC = mpicc +CXX = mpicxx +F90 = mpif90 +H5HOME = /usr/common/usg/hdf5/1.6.3/parallel +CFLAGS = -O2 -DPARALLEL_IO -DH5_HAVE_PARALLEL -I$(H5HOME)/include +LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lz -lm + +# Linux Parallel +#CC = gcc +#CXX = g++ +#F90 = g77 +#H5HOME = /usr/local +# /usr/common/usg/hdf5/1.6.3/parallel +#MPIHOME = /usr/local +#CFLAGS = -O -g -DPARALLEL_IO -DH5_HAVE_PARALLEL -I$(H5HOME)/include +#LDFLAGS = -L$(H5HOME)/lib -lhdf5 -lmpich -lrt -lz -lm + +all: H5PartTest H5PartTest.o H5Part.o +parallel: H5PartTest H5PartTest.o H5Part.o H5PartTestParallel H5PartAndreasTest # parallel regression tests +fortran: H5PartF.o # fortran bindings + +include rules.make + diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..13f694c --- /dev/null +++ b/NEWS @@ -0,0 +1,147 @@ +Error Handling +-------------- + Now all functions, in which an error could occure, are returning a +value. This value is either a 64bit integer or a pointer. + + A negative 64bit integer as result indicates an error. Values >= 0 +indicates successfull execution. This is similiar to the convention +used in UNIX system calls, but we do not return -1 but the error +number (which is always negative). + + For functions returning a pointer the NULL-pointer is used to indicate +an error. You can call the function H5PartGetErrno() to get the error +number. For the time being there is no strerror(3) or perror(3) +equivalent. + + +API Changes +----------- + There are several changes in the API of H5Part. The biggest change is +a side-effect of the implementation of strict error handling. The +impact to the existing C/C++ code is very small. But now you *can* +and *should* implement some kind of error handling. The simplest +error handling is to set an error handler which aborts the program as +soon as an error occured. + + The next "biggest" change is the use of H5Part types instead of "long +long" and "double". The replacement of "long long" is "h5part_int64_t" +and for "double" "h5part_float64_t". This change has now effect in +Fortran. + + In some functions the argument type changed from "int" to +"h5part_int64_t". Since on most systems "int" is a 32bit integer, +calls to these functions must be adapted to the new API. In C/C++ the +compiler will complain about it. But in Fortran you will *not* get an +error message.So, you must check your Fortran code carefully. + + Changes in detail (not listed are functions where only the return +type changed from any to "h5part_int64_t"): + + New API Changes to old API + + h5part_int64_t void + H5PartSetNumParticles ( + H5PartFile *f, + h5part_int64_t nparticles long long + ); + + h5part_int64_t int + H5PartWriteDataFloat64 ( + H5PartFile *f, + char *name, + h5part_float64_t *dta double + ); + + h5part_int64_t int + H5PartWriteDataInt64 ( + H5PartFile *f, + char *name, + h5part_int64_t *dta long long + ); + + h5part_int64_t void + H5PartSetStep ( + H5PartFile *f, + h5part_int64_t step int + ); + + h5part_int64_t void + H5PartSetView ( + H5PartFile *f, + h5part_int64_t start, long long + h5part_int64_t end long long + ); + + h5part_int64_t int + H5PartGetView ( + H5PartFile *f, + h5part_int64_t *start, long long + h5part_int64_t *end long long + ); + + h5part_int64_t int + H5PartReadDataFloat64 ( + H5PartFile *f, + char *name, + h5part_float64_t *dta double + ); + + h5part_int64_t int + H5PartReadDataInt64 ( + H5PartFile *f, + char *name, + h5part_int64_t *dta long long + ); + + h5part_int64_t void + H5PartReadParticleStep ( + H5PartFile *f, + h5part_int64_t step, int + h5part_float64_t *x, double + h5part_float64_t *y, double + h5part_float64_t *z, double + h5part_float64_t *px, double + h5part_float64_t *py, double + h5part_float64_t *pz, double + h5part_int64_t *id long long + ); + +New functions: + + h5part_int64_t + H5PartSetVerbosityLevel ( + unsigned int + ); + + h5part_int64_t + H5PartSetErrorHandler ( + h5part_error_handler handler + ); + + h5part_int64_t + H5PartGetErrno ( + void + ); + + h5part_int64_t + H5PartDefaultErrorHandler ( + const char *funcname, + const h5part_int64_t eno, + const char *fmt, + ... + ); + + h5part_int64_t + H5PartAbortErrorHandler ( + const char *funcname, + const h5part_int64_t eno, + const char *fmt, + ... + ); + +Removed functions: + + int + H5PartFileIsValid ( + H5PartFile *f + ); diff --git a/README b/README new file mode 100644 index 0000000..1ca471c --- /dev/null +++ b/README @@ -0,0 +1,393 @@ +============================================================================== +README file for H5Part configure +============================================================================== + ++ 0. HDF5 library +----------------- + +Make sure you have a working version of the HDF5 library in your computer. If you plan +to use parallel I/O you need to use a parallel HDF5 version. If you don't have the +library download the sources from http://hdf.ncsa.uiuc.edu/HDF5/ + ++ 1. Quick start (If you feel lucky...) +---------------------------------------- + +For many platforms, where compilers are installed in the "default" location +and all the environment variables are set correctly, it should be sufficient +to type: + +./configure [OPTIONS] && make [install] + +to have the libraries and test program compiled. + + +============================================================================== + + ++ 2. configure line options +---------------------------- + +(1) Enable options +--enable-fortran +--enable-parallel +--enable-tools +--enable-python +--enable-64 (only for AIX and Irix) + +(2) Setting compilers related variables manually +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Compiler environment variables: + CC C compiler command + CXX C++ compiler command + FC Fortran compiler command + +(3) Setting prefix for installation manually +--prefix=PREFIX install files in PREFIX + + +For more information, type: + +./configure --help + + +============================================================================== + + ++ 3. Platform specific settings for compiling libraries & test programs +------------------------------------------------------------------------ + +Building + make : builds the libraries and test programs + make install: builds and installs + make clean : removes extraneous object files + make distclean : returns configuration to unconfigured state + +As tested on hosts: + +(1) Davinci (Linux"SUSE"-ia64) +--------------------------------------------------- +FIRST THING FIRST!! Type: + +module load intel +to have the proper compilers set up for use. + +module load hdf5_par + +[NOTE: module load hdf5 does not work at this moment. +Possible installation error of HDF5 on Davinci.] + + +Brief profile: +CC = icc +CXX = icc +FC = ifort +MPICC = icc +MPICXX = icc +MPIFC = ifort + +If default doesn't work, try: + +For C shell: +env CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure && make install + +For Korn or Bourne shell: +CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure && make install + +And, of course, you should add configure options, such as --enable-fortran --enable-parallel. + + +On this host, executing: + +For C shell: +env CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure --enable-fortran --enable-parallel && make install + +For Korn or Bourne shell: +CC=icc CXX=icc FC=ifort MPICC=icc MPICXX=icc MPIFC=ifort ./configure --enable-fortran --enable-parallel && make install + +has functioned correctly. + + +To run test program, go to test directory: + +(i) Serial test +run: +./H5testF +./H5PartTest + +(ii) Parallel test +run: +mpirun 2 H5testFpar +mpirun 2 H5PartTestP + +NOTE: Number 2 above is a arbitrary number that indicates the number of processes. + + + + + +(2) Jacquard (Linux"SUSE"-x86_64) +------------------------------------------------------- +Brief profile: +CC = pathcc +CXX = pathCC +FC = pathf90 +MPICC = mpicc +MPICXX = mpicxx +MPIFC = mpif90 + + + +If default doesn't work, try: + +For C shell: +env CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure && make install + +For Korn or Bourne shell: +CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure && make install + +And, of course, you should add configure options, such as --enable-fortran --enable-parallel. + + + +On this host, executing: + +For C shell: +env CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure --enable-fortran --enable-parallel && make install + +For Korn or Bourne shell: +CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 ./configure --enable-fortran --enable-parallel && make install + +has functioned correctly. + + + +To run test program, go to test directory: + +(i) Serial test +run: +./H5testF +./H5PartTest + +(ii) Parallel test +In Jacquard, we need a script to run parallel programs, since Jacquard does not support interactive parallel processing. Instead, we need to submit the task to a queue. A sample script (run_H5testFpar.scr) may look like below: + ++++++++++++++++++++++++++++++++++++++++ +#!/bin/csh +#PBS -l nodes=1:ppn=2,walltime=00:05:00 +#PBS -N H5testFpar +#PBS -o H5testFpar.out +#PBS -e H5testFpar.err +#PBS -q debug +#PBS -A mpccc +#PBS -V + +setenv PBS_OWORKDIR /home/H5Part/test + +cd $PBS_O_WORKDIR +mpirun -np 2 ./H5testFpar ++++++++++++++++++++++++++++++++++++++++ + +Then, we need to submit the task to a queue by running: + +qsub run_H5testFpar.scr + +After processed, the result will appear in H5testFpar.out, and error messages will appear in H5testFpar.err. + + + + + +(3) Bassi (AIX5.3.0.0-Power 3) +------------------------------------------------- +FIRST THING FIRST!! Type: + +module load gcc + +to have the proper compilers set up for use. + +Brief profile: +CC = cc_r +CXX = cc_r +FC = xlf_r +MPICC = mpcc_r +MPICXX = mpcc_r +MPIFC = mpxlf_r + + + +If default doesn't work, try: + +For C shell: +env CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure && make install + +For Korn or Bourne shell: +CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure && make install + +And, of course, you should add configure options, such as --enable-fortran --enable-parallel. + + + +On this host, executing: + +For C shell: +env CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure --enable-fortran --enable-parallel && make install + +For Korn or Bourne shell: +CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r ./configure --enable-fortran --enable-parallel && make install + +has functioned correctly. + + + +To run test program, go to test directory: + +(i) Serial test +run: +./H5testF +./H5PartTest + +(ii) Parallel test +run: +unsetenv MP_SINGLE_THREAD +poe ./H5PartTestP -procs 2 -nodes 1 +poe ./H5testFpar -procs 2 -nodes 1 + +For more details on how to run parallel programs on Bassi, go to: + +http://www.nersc.gov/nusers/resources/bassi/running_jobs/ + + + + + +(4) Starsky (Darwin8.5.0-PowerPC) +---------------------------------------------------- +FIRST THING FIRST!! Set environment variables: (in tcsh) + +setenv LD_LIBRARY_PATH /usr/local/g95/lib/gcc-lib/powerpc-apple-darwin8.5.0/4.0.3/ +setenv PATH ${PATH}:/usr/local/g95/bin + +NOTE: This environment variable setting is specifit to Starsky. It is to make configure find the fortran compiler. + +Brief profile: +CC = gcc +CXX = g++ +FC = g95 + + + +If default doesn't work, try: + +For C shell: +env CC=gcc CXX=g++ FC=g95 ./configure && make install + +For Korn or Bourne shell: +CC=gcc CXX=g++ FC=g95 ./configure && make install + +And, of course, you should add configure options, such as --enable-fortran --enable-parallel. + + + +On this host, executing: + +For C shell: +env CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install + +For Korn or Bourne shell: +CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install + +has functioned correctly. + + + +To run test program, go to test directory: + +(i) Serial test +run: +./H5testF +./H5PartTest + + + + + +(5) Linux AMD64 Visualization group workstations (Linux"SUSE"-x86_64) +--------------------------------------------------------- +Brief profile: +CC = gcc +CXX = g++ +FC = g95 + + + +If default doesn't work, try: + +For C shell: +env CC=gcc CXX=g++ FC=g95 ./configure && make install + +For Korn or Bourne shell: +CC=gcc CXX=g++ FC=g95 ./configure && make install + +And, of course, you should add configure options, such as --enable-fortran --enable-parallel. + + + +On this host, executing: + +For C shell: +env CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install + +For Korn or Bourne shell: +CC=gcc CXX=g++ FC=g95 ./configure --enable-fortran && make install + +has functioned correctly. + + + +To run test program, go to test directory: + +(i) Serial test +run: +./H5testF +./H5PartTest + + + + + +============================================================================== + + ++ 4. Trouble shooting (Things to check for...) +-------------------------------------------- +(0) Have you set the LD_LIBRARY_PATH? +---Some systems require the user to manually set the environment variable, LD_LIBRARY_PATH. To do so: + +set the environment variable HDF5ROOT or PHDF5ROOT to point to your installation of HDF5 (serial and/or parallel respectively). + +For Korn or Bourne shell: + LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${HDF5ROOT}/lib;export LD_LIBRARY_PATH + LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:{PHDF5ROOT}/lib;export LD_LIBRARY_PATH + +For C shell: + setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${HDF5ROOT}/lib + setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${PHDF5ROOT}/lib + +Note that the values of HDF5ROOT & PHDF5ROOT will be in the "summary" section when you run configure. + +Not properly set LD_LIBRARY_PATH value may result in a runtime error: + +./H5PartTest: error while loading shared libraries: libhdf5.so.0: cannot open shared object file: No such file or directory + +(1) Are the compilers set correctly? +---Check with: which COMPILER + +(2) Have you installed HDF5? +---You can get it at: http://vis.lbl.gov/Research/AcceleratorSAPP/index.html + +(3) Have you loaded the proper modules? +---It is necessary in Davinci & Bassi, and configure && make install may not work without it. + + diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..c89e6be --- /dev/null +++ b/autogen.sh @@ -0,0 +1,46 @@ +#!/bin/sh +# Run this to generate all the initial makefiles, etc. + +echo "+ making misc files ..." +touch NEWS README AUTHORS ChangeLog +echo +echo +echo +echo "+ running aclocal ..." +aclocal $ACLOCAL_FLAGS || { + echo + echo "aclocal failed - check that all needed development files are present on system" + exit 1 +} +echo +echo +echo +echo +echo "+ running autoheader ... " +autoheader || { + echo + echo "autoheader failed" + exit 1 +} +echo +echo +echo +echo "+ running autoconf ... " +autoconf || { + echo + echo "autoconf failed" + exit 1 +} +echo +echo +echo +echo "+ running automake ... " +automake -a -c --foreign || { + echo + echo "automake failed" + exit 1 +} +echo +echo +echo + diff --git a/config.guess b/config.guess new file mode 100755 index 0000000..44f30e6 --- /dev/null +++ b/config.guess @@ -0,0 +1,1469 @@ +#! /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 Free Software Foundation, Inc. + +timestamp='2005-02-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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# 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 to . Submit a context +# diff and a properly formatted 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. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +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 ." + +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 +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 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # 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 -q "$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 ;' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@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 + +case "${UNAME_MACHINE}" in + i?86) + test -z "$VENDOR" && VENDOR=pc + ;; + *) + test -z "$VENDOR" && VENDOR=unknown + ;; +esac +test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse + +# 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 tupples: *-*-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 ;; + *) 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 __ELF__ >/dev/null + 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 0 ;; + amd64:OpenBSD:*:*) + echo x86_64-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + amiga:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + cats:OpenBSD:*:*) + echo arm-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + hp300:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + luna88k:OpenBSD:*:*) + echo m88k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mac68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + macppc:OpenBSD:*:*) + echo powerpc-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme68k:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvme88k:OpenBSD:*:*) + echo m88k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + mvmeppc:OpenBSD:*:*) + echo powerpc-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sgi:OpenBSD:*:*) + echo mips64-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + sun3:OpenBSD:*:*) + echo m68k-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:OpenBSD:*:*) + echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + exit 0 ;; + macppc:MirBSD:*:*) + echo powerppc-unknown-mirbsd${UNAME_RELEASE} + exit 0 ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + exit 0 ;; + 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'` + exit 0 ;; + 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 0 ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit 0 ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit 0;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit 0 ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos + exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit 0 ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit 0 ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit 0;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit 0;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@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 0 ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit 0 ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit 0 ;; + 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 0 ;; + esac ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + i86pc:SunOS:5.*:*) + echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + 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 0 ;; + 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 0 ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit 0 ;; + 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 0 ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit 0 ;; + # 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 0 ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit 0 ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit 0 ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit 0 ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit 0 ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit 0 ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit 0 ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit 0 ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include /* 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 \ + && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ + && exit 0 + echo mips-mips-riscos${UNAME_RELEASE} + exit 0 ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit 0 ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax + exit 0 ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax + exit 0 ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit 0 ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit 0 ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit 0 ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit 0 ;; + 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 0 ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit 0 ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit 0 ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit 0 ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit 0 ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit 0 ;; + ????????: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 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit 0 ;; + 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 0 ;; + *: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 + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 + echo rs6000-ibm-aix3.2.5 + 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 0 ;; + *:AIX:*:[45]) + 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 0 ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit 0 ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit 0 ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit 0 ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit 0 ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit 0 ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit 0 ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit 0 ;; + 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 + #include + + 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 + # avoid double evaluation of $set_cc_for_build + test -n "$CC_FOR_BUILD" || eval $set_cc_for_build + if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null + then + HP_ARCH="hppa2.0w" + else + HP_ARCH="hppa64" + fi + fi + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit 0 ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit 0 ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + 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 && $dummy && exit 0 + echo unknown-hitachi-hiuxwe2 + exit 0 ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit 0 ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit 0 ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit 0 ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit 0 ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit 0 ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit 0 ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit 0 ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit 0 ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit 0 ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit 0 ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + 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 0 ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + 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 0 ;; + 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 0 ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit 0 ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:FreeBSD:*:*) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit 0 ;; + i*:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit 0 ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit 0 ;; + x86:Interix*:[34]*) + echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' + exit 0 ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks + exit 0 ;; + 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 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; + amd64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit 0 ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit 0 ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + *:GNU:*:*) + # the GNU system + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit 0 ;; + *: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 0 ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit 0 ;; + arm*:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + cris:Linux:*:*) + echo cris-axis-linux + exit 0 ;; + crisv32:Linux:*:*) + echo crisv32-axis-linux + exit 0 ;; + frv:Linux:*:*) + echo frv-${VENDOR}-linux + exit 0 ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + mips:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef mips + #undef mipsel + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=mipsel + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=mips + #else + CPU= + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` + test x"${CPU}" != x && echo "${CPU}-${VENDOR}-linux" && exit 0 + ;; + mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef mips64 + #undef mips64el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=mips64el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=mips64 + #else + CPU= + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` + test x"${CPU}" != x && echo "${CPU}-${VENDOR}-linux" && exit 0 + ;; + ppc:Linux:*:*) + echo powerpc-${VENDOR}-linux + exit 0 ;; + ppc64:Linux:*:*) + echo powerpc64-${VENDOR}-linux + exit 0 ;; + 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 ld.so.1 >/dev/null + if test "$?" = 0 ; then LIBC="-libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-${VENDOR}-linux${LIBC} + exit 0 ;; + 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-${VENDOR}-linux ;; + PA8*) echo hppa2.0-${VENDOR}-linux ;; + *) echo hppa-${VENDOR}-linux ;; + esac + exit 0 ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-${VENDOR}-linux + exit 0 ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit 0 ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-${VENDOR}-linux + exit 0 ;; + x86_64:Linux:*:*) + echo x86_64-${VENDOR}-linux + exit 0 ;; + i*86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + # Set LC_ALL=C to ensure ld outputs messages in English. + ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ + | sed -ne '/supported targets:/!d + s/[ ][ ]*/ /g + s/.*supported targets: *// + s/ .*// + p'` + case "$ld_supported_targets" in + elf32-i386) + TENTATIVE="${UNAME_MACHINE}-${VENDOR}-linux" + ;; + a.out-i386-linux) + echo "${UNAME_MACHINE}-${VENDOR}-linuxaout" + exit 0 ;; + coff-i386) + echo "${UNAME_MACHINE}-${VENDOR}-linuxcoff" + exit 0 ;; + "") + # Either a pre-BFD a.out linker (linuxoldld) or + # one that does not give us useful --help. + echo "${UNAME_MACHINE}-${VENDOR}-linuxoldld" + exit 0 ;; + esac + # Determine whether the default compiler is a.out or elf + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include + #ifdef __ELF__ + # ifdef __GLIBC__ + # if __GLIBC__ >= 2 + LIBC=gnu + # else + LIBC=gnulibc1 + # endif + # else + LIBC=gnulibc1 + # endif + #else + #ifdef __INTEL_COMPILER + LIBC=gnu + #else + LIBC=gnuaout + #endif + #endif + #ifdef __dietlibc__ + LIBC=dietlibc + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` + test x"${LIBC}" != x && echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}" | sed 's/linux-gnu/linux/' && exit 0 + test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 + ;; + 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 0 ;; + 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 0 ;; + 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 0 ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop + exit 0 ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos + exit 0 ;; + i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable + exit 0 ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit 0 ;; + 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 0 ;; + i*86:*:5:[78]*) + 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 0 ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /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 0 ;; + 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 i386. + echo i386-pc-msdosdjgpp + exit 0 ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit 0 ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit 0 ;; + 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 0 ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit 0 ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv + exit 0 ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix + exit 0 ;; + M68*:*:R3V[5678]*:*) + test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + 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 0 + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4 && exit 0 ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit 0 ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit 0 ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit 0 ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + *: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 0 ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit 0 ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes . + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit 0 ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit 0 ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos + exit 0 ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit 0 ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit 0 ;; + 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 0 ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit 0 ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit 0 ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit 0 ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux${UNAME_RELEASE} + exit 0 ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in + *86) UNAME_PROCESSOR=i686 ;; + unknown) UNAME_PROCESSOR=powerpc ;; + esac + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} + exit 0 ;; + *: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 0 ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit 0 ;; + NSE-?:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + NSR-?:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit 0 ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; + *: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 0 ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit 0 ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit 0 ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit 0 ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit 0 ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit 0 ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit 0 ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} + exit 0 ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in + A*) echo alpha-dec-vms && exit 0 ;; + I*) echo ia64-dec-vms && exit 0 ;; + V*) echo vax-dec-vms && exit 0 ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit 0 ;; +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 < +# include +#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 + 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"); 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 +# 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 && $dummy && exit 0 + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } + +# 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 0 ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + c34*) + echo c34-convex-bsd + exit 0 ;; + c38*) + echo c38-convex-bsd + exit 0 ;; + c4*) + echo c4-convex-bsd + exit 0 ;; + esac +fi + +cat >&2 < 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/config.h.in b/config.h.in new file mode 100755 index 0000000..558ea81 --- /dev/null +++ b/config.h.in @@ -0,0 +1,44 @@ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* "" */ +#undef MY_BUILD_CPU + +/* "" */ +#undef MY_BUILD_OS + +/* "" */ +#undef MY_BUILD_VENDOR + +/* "" */ +#undef MY_GNUNAME + +/* "" */ +#undef MY_UNAME + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Version number of package */ +#undef VERSION + +/* Define to 1 if on AIX 3. + System headers sometimes define this. + We just want to avoid a redefinition error message. */ +#ifndef _ALL_SOURCE +# undef _ALL_SOURCE +#endif diff --git a/config.sub b/config.sub new file mode 100755 index 0000000..c884ad4 --- /dev/null +++ b/config.sub @@ -0,0 +1,1563 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + +timestamp='2005-02-10' + +# 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +# 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 . Submit a context +# diff and a properly formatted 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. + +# 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 ." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +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 0 ;; + --version | -v ) + echo "$version" ; exit 0 ;; + --help | --h* | -h ) + echo "$usage"; exit 0 ;; + -- ) # 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 0;; + + * ) + 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-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ + kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + 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) + os= + basic_machine=$1 + ;; + -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 + ;; + -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/'` + ;; + -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*) + 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 \ + | 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 \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ + | fr30 | frv \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | i370 | i860 | i960 | ia64 \ + | ip2k | iq2000 \ + | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64vr | mips64vrel \ + | mips64orion | mips64orionel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ + | msp430 \ + | ns16k | ns32k \ + | openrisc | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + | pyramid \ + | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \ + | strongarm \ + | tahoe | thumb | tic4x | tic80 | tron \ + | v850 | v850e \ + | we32k \ + | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ + | z8k) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; + + # 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-* \ + | 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-* \ + | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ + | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | elxsi-* \ + | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | ip2k-* | iq2000-* \ + | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ + | mips64vr-* | mips64vrel-* \ + | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ + | msp430-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + | pyramid-* \ + | romp-* | rs6000-* \ + | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ + | tahoe-* | thumb-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tron-* \ + | v850-* | v850e-* | vax-* \ + | we32k-* \ + | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ + | xstormy16-* | xtensa-* \ + | ymp-* \ + | z8k-*) + ;; + # 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 + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + 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 + ;; + cr16c) + basic_machine=cr16c-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 + ;; + 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'm not sure what "Sysv32" means. Should this be sysv3.2? + 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 + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; + 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 + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + 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 + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + or32 | or32-*) + basic_machine=or32-unknown + os=-coff + ;; + 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 + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + 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) basic_machine=powerpc-unknown + ;; + ppc-*) 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 + ;; + 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 + ;; + sei) + basic_machine=mips-sei + os=-seiux + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + 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 + ;; + 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 + ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; + tic55x | c55x*) + basic_machine=tic55x-unknown + os=-coff + ;; + tic6x | c6x*) + basic_machine=tic6x-unknown + os=-coff + ;; + 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 + ;; + ymp) + basic_machine=ymp-cray + os=-unicos + ;; + z8k-*-coff) + basic_machine=z8k-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 + ;; + sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) + basic_machine=sh-unknown + ;; + sh64) + basic_machine=sh64-unknown + ;; + sparc | sparcv8 | sparcv9 | sparcv9b) + 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. + -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* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ + | -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* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux* | -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*) + # 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* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; + -linux-dietlibc) + os=-linux-dietlibc + ;; + -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 + ;; + -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 + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + c4x-* | tic4x-*) + 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 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + m68*-cisco) + os=-aout + ;; + 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 + ;; + *-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 + ;; + -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 0 + +# 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/configure.ac b/configure.ac new file mode 100644 index 0000000..e2ba682 --- /dev/null +++ b/configure.ac @@ -0,0 +1,616 @@ +# Every configure script must call AC_INIT before doing anything else. +# AC_INIT (package, version, [bug-report], [tarname]) +AC_INIT([H5Part], [Ver.1.0], [vis@hpcrdm.lbl.gov]) + + +# Ensure that a recent enough version of Autoconf is being used. +# If the version of Autoconf being used to create configure is earlier than version, +# print an error message to the standard error output and do not create configure. +#AC_PREREQ(2.59) + + +# should be called right after AC_INIT. +# configure scripts can create a C header file containing `#define' directives. +# The AC_CONFIG_HEADERS macro selects this kind of output. +AC_CONFIG_HEADER(config.h) + + +################################################################################## +#################### A SIMPLE WORK AROUND TO USE ENV. VARS ####################### +################################################################################## + + +SAVE_CC=$CC +SAVE_CXX=$CXX +SAVE_FC=$FC +SAVE_MPICC=$MPICC +SAVE_MPICXX=$MPICXX +SAVE_MPIFC=$MPIFC +SAVE_MPILIB=$MPILIB +SAVE_MPIINC=$MPIINC +SAVE_CFLAGS=$CFLAGS +SAVE_FFLAGS=$FFLAGS +SAVE_MPIROOT=$MPIROOT +SAVE_HDF5ROOT=$HDF5ROOT +SAVE_PHDF5ROOT=$PHDF5ROOT +SAVE_LDFLAGS=$LDFLAGS + + +################################################################################## +################## PATH SERACH FUNCTION - to be used later... #################### +################################################################################## +# /*@@ +# @routine CCTK_Search +# @date Wed Jul 21 11:16:35 1999 +# @author Tom Goodale +# @desc +# Used to search for something in various directories +# @enddesc +#@@*/ + +PATH_Search() +{ + eval $1="" + if test $# -lt 4 ; then + h5part_basedir="" + else + h5part_basedir="$4/" + fi + for h5part_place in $2 + do + echo -n "Looking in $h5part_place ... $ac_c" #1>&6 + if test -r "$h5part_basedir$h5part_place/$3" ; then + echo "$ac_t"" Found" #1>&6 + eval $1="$h5part_place" + break + fi + if test -d "$h5part_basedir$h5part_place/$3" ; then + echo "$ac_t"" Found" #1>&6 + eval $1="$h5part_place" + break + fi + echo "$ac_t"" No" #1>&6 + done + + return +} + + + +################################################################################## +################ MISC SETTINGS INCLUDING C & C++ COMPILER SETTING ################ +################################################################################## +# Compute the canonical host-system type variable, host, and its three individual +# parts host_cpu, host_vendor, and host_os. +AC_CANONICAL_HOST + + +uname=`uname -s` +if test $uname = "AIX"; then + # Notify the user that configure is checking for a particular feature. + # This macro prints a message that starts with `checking ' and ends with `...' and no newline. + # It must be (?) followed by a call to AC_MSG_RESULT to print the result of the check and the newline. + AC_MSG_CHECKING([if system is AIX]) + + # AC_MSG_RESULT (result-description) + # Notify the user of the results of a check + AC_MSG_RESULT([OK]) + + # If on AIX, define _ALL_SOURCE. Allows the use of some BSD functions. + # Should be called before any macros that run the C compiler. + AC_AIX +fi + + +# DAVINCI SPECIFIC!!! +if test `uname -n` = "davinci"; then + echo "DAVINCI SPECIFIC TESTING FOR STDC++ LIBRARY!" + PATH_Search STDCXX_CHECK '/usr/lib64 /usr/lib' libstdc++.a + + # if STDCXX_CHECK is set... + if test "$STDCXX_CHECK" = "/usr/lib64"; then + echo "STDCXX setting ..." + echo "STDCXX_CHECK = $STDCXX_CHECK ..." + STDCXX="-L/usr/lib64 -lstdc++" + echo "STDCXX = $STDCXX ..." + elif test "$STDCXX_CHECK" = "/usr/lib"; then + echo "STDCXX setting ..." + echo "STDCXX_CHECK = $STDCXX_CHECK ..." + STDCXX="-L/usr/lib -lstdc++" + echo "STDCXX = $STDCXX ..." + fi +fi + + +# Determine a C compiler to use. +# If CC is not already set in the environment, check for gcc and cc, then for other C compilers. +# Set output variable CC to the name of the compiler found. +# Look for mpicc first, then icc, mpcc_r +AC_PROG_CC(pathcc icc cc_r gcc cc) + +# AC_PROG_CC doesn't pick up cc_r in Bassi. The following AC_PATH_PROGS is the fix. +AC_PATH_PROGS([BAS_CC], [cc_r], [], [$PATH]) + +# if BAS_CC not empty +if test -n "$BAS_CC"; then + echo "CC setting for Bassi ..." + CC=$BAS_CC + echo "CC = $CC ..." +fi + + +# Determine a C++ compiler to use. +# Check if the environment variable CXX or CCC (in that order) is set; +# if so, then set output variable CXX to its value. +# Otherwise, if the macro is invoked without an argument, +# then search for a C++ compiler under the likely names (first g++ and c++ then other names). +# If none of those checks succeed, then as a last resort set CXX to g++. +AC_PROG_CXX(pathCC icc cc_r g++ gcc cc) + + +# Set output variable INSTALL to the path of a BSD-compatible install program, if one is +# found in the current PATH. +# Otherwise, set INSTALL to `dir/install-sh -c` +AC_PROG_INSTALL + + +# AM_INIT_AUTOMAKE is required to use autoconf with automake +AM_INIT_AUTOMAKE() + + +AC_PROG_RANLIB + +# Default prefix for bindir, etc... (eg >> ./build/bin) +AC_PREFIX_DEFAULT(`pwd`/build) + + +# AC_DEFINE_UNQUOTED (variable, value, [description]) +# Define the C preprocessor variable variable to value +# Use this macro instead of AC_DEFINE when variable or value is a shell variable. +AC_DEFINE_UNQUOTED(MY_BUILD_VENDOR, "$host_vendor", "") +AC_DEFINE_UNQUOTED(MY_BUILD_CPU, "$host_cpu", "") +AC_DEFINE_UNQUOTED(MY_BUILD_OS, "$host_os", "") +AC_DEFINE_UNQUOTED(MY_GNUNAME, "${host_cpu}-${host_vendor}-${host_os}", "") +AC_DEFINE_UNQUOTED(MY_UNAME, "$uname", "") + + + +################################################################################## +########################### CONFIGURE LINE OPTIONS ############################### +################################################################################## + +######################### 64-bit compilation enabled ############################# +AC_MSG_CHECKING([if 64-bit compilation is enabled]) + +# AC_ARG_ENABLE (feature, help-string, [action-if-given], [action-if-not-given]) +# If the user gave configure the option `--enable-feature' or `--disable-feature', +# run shell commands action-if-given. +# You should format your help-string with the macro AC_HELP_STRING. +AC_ARG_ENABLE([64], + [AC_HELP_STRING([--enable-64],[Compile using 64-bit flags [default=no]])], + [USE_64=$enableval]) + + +# If --enable-64 is set in the configure line +if test "X$USE_64" = "Xyes"; then + echo "YES, 64-BIT ENABLED" + if test $uname = "AIX"; then + CFLAGS="$CFLAGS -q64" + FFLAGS="$FFLAGS -q64" + fi + + if test $uname = "IRIX64"; then + CFLAGS="$CFLAGS -64" + FFLAGS="$FFLAGS -64 -fPIC -fno-second-underscore" + fi +else + echo "NO, 64-BIT NOT ENABLED" +fi + + +############################### fortran enabled ################################## +AC_MSG_CHECKING([if fortran interface enabled]) +AC_MSG_RESULT([]) +AC_ARG_ENABLE([fortran], + [AC_HELP_STRING([--enable-fortran], [Compile the Fortran interface [default=no]])], + [USE_FORTRAN=$enableval]) + + +if test "X$USE_FORTRAN" = "Xyes"; then + echo "YES, FORTRAN ENABLED" + + # Start looking for ifort first + AC_PROG_FC(ifort xlf_r pathf90 g95 g90 ftn) + + if test -n "$FC" ; then + if test "X$FC" = "Xg95"; then + FFLAGS="${FFLAGS} -fno-second-underscore" + fi + AC_MSG_CHECKING([Test Number of FC Underscores]) + AC_MSG_RESULT([OK]) + `cd src && rm -f TestUnderscore.o TestUnderscoreC.o TestUnderscore` + `cd src && ${FC} ${FFLAGS} -c TestUnderscore.f` + `cd src && ${CC} ${CFLAGS} -c TestUnderscoreC.c` + `cd src && ${FC} ${FFLAGS} -o TestUnderscore TestUnderscore.o TestUnderscoreC.o -lc` + + if test -f src/TestUnderscore ; then + UNDERSCORE_H=Underscore.h + `cd src && cat COPYRIGHT > Underscore.h` + `cd src && ./TestUnderscore >> Underscore.h` + echo "==== Underscore.h contains =============" + cat src/Underscore.h + echo "========================================" + else + AC_MSG_ERROR(could not build fortran executable) + USE_FORTRAN = "no" + fi + else + AC_MSG_ERROR(could not find a fortran compiler) + USE_FORTRAN = "no" + exit 1 + fi +else + echo "NO, FORTRAN NOT ENABLED" +fi + + +########################### parallel interface enabled ########################### +AC_MSG_CHECKING([if parallel interface enabled]) +AC_ARG_ENABLE([parallel], + [AC_HELP_STRING([--enable-parallel], [Compile the MPI/IO interface [default=no]])], + [USE_PARALLEL=$enableval]) + +if test "X$USE_PARALLEL" = "Xyes"; then + AC_MSG_RESULT([YES, PARALLEL ENABLED]) + + AC_MSG_CHECKING([if we can compile MPI code without setting flags]) + AC_TRY_LINK([#include "mpi.h"], [ + MPI_Comm comm; + int n; + MPI_Comm_size( comm, &n ); ], + [echo 'yes'; r='yes'], [echo "no"; r='no'] ) + + if test "X$r" = "Xyes"; then + MPICC=$CC + set -x + if test -z "$MPICXX"; then + # we should add a test whether this C++ wrapper exists or not + MPICXX=${MPICC%/*}/mpicxx + fi + set +x + else + AC_PATH_PROGS([MPICC], [mpicc mpcc_r], [], [$PATH]) + AC_PATH_PROGS([MPICXX], [mpicxx mpcc_r], [], [$PATH]) + if test -z "$MPICC" -o -z "$MPICXX"; then + AC_ARG_ENABLE([mpipath], + [AC_HELP_STRING([--enable-mpipath], [path to MPI installation [default=""]])], + [MPIROOT=$enableval], [MPIROOT=""]) + if test -z "$MPIROOT"; then + AC_MSG_CHECKING([for MPI root ]) + echo + P='' + P="$P /usr" + P="$P /usr/local" + P="$P /usr/local/mpi" + P="$P /usr/local/packages/mpi" + P="$P /usr/local/mpich2" + P="$P /usr/local/mpich" + P="$P /opt/xt-mpt/default/mpich2-64/P2" + PATH_Search MPIROOT "$P" include/mpi.h + fi + if test ! -n "$MPIROOT"; then + AC_MSG_RESULT([Cannot determine MPIROOT]) + exit 1 + fi + if test ! -n "$MPICC"; then + AC_MSG_CHECKING([No MPICC detected. Setting MPICC to CC.]) + MPICC=$CC + echo "MPICC = $MPICC" + fi + + # if MPICXX empty + if test ! -n "$MPICXX"; then + MPICXX=$CXX + AC_MSG_CHECKING([No MPICXX detected. Setting MPICXX = CXX = $MPICXX ]) + echo + fi + + MPIINC="${MPIINC} -I${MPIROOT}/include" + FFLAGS="${FFLAGS} -I${MPIROOT}/include" + AC_MSG_CHECKING([for name of MPI lib ]) + if test -e ${MPIROOT}/lib/libmpi.a; then + MPILIB="-L${MPIROOT}/lib -lmpi" + elif test -e ${MPIROOT}/lib/libmpi.so; then + MPILIB="-L${MPIROOT}/lib -lmpi" + elif test -e ${MPIROOT}/lib/libmpich.a; then + MPILIB="-L${MPIROOT}/lib -lmpich" + elif test -e ${MPIROOT}/lib/libmpich.so; then + MPILIB="-L${MPIROOT}/lib -lmpich" + else + AC_MSG_RESULT([not found]) + exit 1 + fi + AC_MSG_RESULT([${MPILIB}]) + fi + fi + + # parallel + fortran + if test "X$USE_FORTRAN" = "Xyes"; then + echo "PARALLEL ENABLED WITH FORTRAN" + + AC_PATH_PROGS([MPIFC], [mpxlf_r mpif90], [], [$PATH]) + + # if MPIFC empty + if test ! -n "$MPIFC"; then + AC_MSG_CHECKING([ No MPIFC detected. Setting MPIFC to FC.]) + MPIFC=$FC + echo "MPIFC = $MPIFC ..." + fi + + MTARGET="libpH5Part.a libpH5PartF.a" + TTARGET="H5PartTestP H5PartAndreasTest H5testFpar Bench" + else + echo "PARALLEL ENABLED WITHOUT FORTRAN" + + MTARGET="libpH5Part.a" + TTARGET="H5PartTestP H5PartAndreasTest Bench" + fi + +else + echo "NO, PARALLEL NOT ENABLED" + + if test "X$USE_FORTRAN" = "Xyes"; then + echo "PARALLEL NOT ENABLED WITH FORTRAN ENABLED" + + MTARGET="libH5Part.a libH5PartF.a" + TTARGET="H5PartTest H5testF H5test" + else + echo "BOTH PARALLEL & FORTRAN NOT ENABLED" + + MTARGET="libH5Part.a" + TTARGET="H5PartTest H5test" + fi +fi + +AC_MSG_CHECKING([for h5pTools file: ]) +AC_MSG_RESULT([OK]) +AC_ARG_ENABLE([tools], + [AC_HELP_STRING([--enable-tools], [Compile h5part tools [default=no]])], + [USE_TOOLS=$enableval]) + + +if test "X$USE_TOOLS" = "Xyes"; then + BUILD_TOOLS="h5pAttrib h5pToGNUplot" +fi + +################################################################################## +############################ PATH CHECKING & SETTING ############################# +################################################################################## + +AC_ARG_ENABLE([hdf5path], + [AC_HELP_STRING([--enable-hdf5path], [path to HDF5 installation [default=""]])], + [XROOT=$enableval], [XROOT=""]) + +if test "X$USE_PARALLEL" = "Xyes"; then + PHDF5ROOT=$XROOT + if test -z "$PHDF5ROOT"; then + AC_MSG_CHECKING([for Parallel HDF5 root ]) + AC_MSG_RESULT([]) + P='' + P="$P /usr" + P="$P /usr/local" + P="$P /usr/local/phdf5" + P="$P /usr/local/hdf5" + P="$P /usr/local/packages/hdf5" + P="$P /usr/local/hdf5/hdf5_par" + P="$P /apps/hdf5" + + if test "X$USE_64" = "Xyes"; then + P="$P /usr/common/usg/hdf5/64/default/parallel" + else + P="$P /usr/common/usg/hdf5/32/default/parallel" + fi + PATH_Search PHDF5ROOT "$P" include/hdf5.h + XROOT=$HDF5ROOT + fi +else + HDF5ROOT=$XROOT + if test -z "$HDF5ROOT"; then + AC_MSG_CHECKING([for HDF5 library location ]) + AC_MSG_RESULT([]) + P='' + P="$P /usr" + P="$P /usr/local" + P="$P /usr/local/hdf5" + P="$P /usr/local/packages/hdf5" + P="$P /usr/local/hdf5/hdf5_serial" + P="$P /apps/hdf5" + if test "X$USE_64" = "Xyes"; then + P="$P /usr/common/usg/hdf5/64/default/serial" + else + P="$P /usr/common/usg/hdf5/32/default/serial" + fi + PATH_Search HDF5ROOT "$P" include/hdf5.h + XROOT=$HDF5ROOT + fi +fi + +AC_MSG_CHECKING([if we need to link to libsz ]) +if test -n "$XROOT"; then + if test -f $XROOT/lib/libsz.a; then + AC_MSG_RESULT([yes]) + SZLIB="-L$XROOT/lib/ -lsz" + else + AC_MSG_RESULT([no]) + SZLIB="" + fi +fi + +AC_MSG_CHECKING([for static zlib root ]) +echo +PATH_Search ZLIBROOT '/apps/zlib' lib/libz.a +if test -n "$ZLIBROOT"; then + LDFLAGS="$LDFLAGS -L$ZLIBROOT/lib" +fi + + +################################################################################## +####################### MISC SETTINGS - path, flags, etc ######################### +################################################################################## + +# if not AIX +if test ! $uname = "AIX"; then +# Additional flags +echo "SETTING ADDITIONAL FLAGS" +ADDFLAGS="-fPIC -fno-second-underscore" +fi + + +H5P_LIB_LOC=`pwd`/src + +################################################################################## +#################### A SIMPLE WORK AROUND TO USE ENV. VARS ####################### +################################################################################## + +#if there was an external input for the variable... +if test -n "$SAVE_CC"; then +CC=$SAVE_CC +fi + +if test -n "$SAVE_CXX"; then +CXX=$SAVE_CXX +fi + +if test -n "$SAVE_FC"; then +FC=$SAVE_FC +fi + +if test -n "$SAVE_MPICC"; then +MPICC=$SAVE_MPICC +fi + +if test -n "$SAVE_MPICXX"; then +MPICXX=$SAVE_MPICXX +fi + +if test -n "$SAVE_MPIFC"; then +MPIFC=$SAVE_MPIFC +fi + +if test -n "$SAVE_MPILIB"; then +MPILIB=$SAVE_MPILIB +fi + +if test -n "$SAVE_MPIINC"; then +MPIINC=$SAVE_MPIINC +fi + +if test -n "$SAVE_CFLAGS"; then +CFLAGS=$SAVE_CFLAGS +fi + +if test -n "$SAVE_FFLAGS"; then +FFLAGS=$SAVE_FFLAGS +fi + +if test -n "$SAVE_MPIROOT"; then +MPIROOT=$SAVE_MPIROOT +fi + +if test -n "$SAVE_HDF5ROOT"; then +HDF5ROOT=$SAVE_HDF5ROOT +fi + +if test -n "$SAVE_PHDF5ROOT"; then +PHDF5ROOT=$SAVE_PHDF5ROOT +fi + +if test -n "$SAVE_LDFLAGS"; then +LDFLAGS=$SAVE_LDFLAGS +fi + +if test -n "$MPICXX"; then +TOOLS_CXX=$MPICXX +TOOLS_H5PART_LIB="-lpH5Part" +TOOLS_HDFLIB="-L$PHDF5ROOT/lib -lhdf5" +else +TOOLS_CXX=$CXX +TOOLS_H5PART_LIB="-lH5Part" +TOOLS_HDFLIB="-L$HDF5ROOT/lib -lhdf5" +fi + +################################################################################## +############################# PRINTING SUMMARY ################################### +################################################################################## +echo "+++++++++++++++++++++++++++++++" +echo "+++++++++ SUMMARY for `(hostname || uname -n) 2>/dev/null | sed 1q` +++++++++" +echo "CC = $CC" +echo "CXX = $CXX" +echo "FC = $FC" +echo "MPICC = $MPICC" +echo "MPICXX = $MPICXX" +echo "MPIFC = $MPIFC" +echo "CFLAGS = $CFLAGS" +echo "FFLAGS = $FFLAGS" +echo "MPILIB = $MPILIB" +echo "MPIINC = $MPIINC" +echo "MPIROOT = $MPIROOT" +echo "HDF5ROOT = $HDF5ROOT" +echo "PHDF5ROOT = $PHDF5ROOT" +echo "LDFLAGS = $LDFLAGS" +echo "host_os = $host_os" +echo "host_cpu = $host_cpu" +echo "host_vendor = $host_vendor" +echo "Will Be Building Libraries ... : $MTARGET" +echo "Will Be Building Test Programs ... : $TTARGET" +echo "TOOLS_CXX = $TOOLS_CXX" +echo "TOOLS_H5PART_LIB = $TOOLS_H5PART_LIB" +echo "TOOLS_HDFLIB = $TOOLS_HDFLIB" +echo "BUILD_TOOLS = $BUILD_TOOLS" +echo "+++++++++++++++++++++++++++++++" + + +################################################################################## +################# EXPORTING VARIABLES & CREATING OUTPUT FILES #################### +################################################################################## +# AC_SUBST (variable, [value]) +# Create an output variable from a shell variable. +# Make AC_OUTPUT substitute the variable variable into output files (typically one or more `Makefile's). +# This means that AC_OUTPUT will replace instances of `@variable@' in input files with the value that +# the shell variable variable has when AC_OUTPUT is called. +# This value of variable should not contain literal newlines. +# If value is given, in addition assign it to variable. +AC_SUBST(MPIROOT) +AC_SUBST(HDF5ROOT) +AC_SUBST(PHDF5ROOT) +AC_SUBST(MPIINC) +AC_SUBST(MPILIB) +AC_SUBST(MPICC) +AC_SUBST(MPICXX) +AC_SUBST(MPIFC) +AC_SUBST(MTARGET) +AC_SUBST(TTARGET) +AC_SUBST(SZLIB) +AC_SUBST(CFLAGS) +AC_SUBST(FFLAGS) +AC_SUBST(ADDFLAGS) +AC_SUBST(STDCXX) +AC_SUBST(H5P_LIB_LOC) +AC_SUBST(UNDERSCORE_H) +AC_SUBST(BUILD_TOOLS) +AC_SUBST(LDFLAGS) +AC_SUBST(TOOLS_CXX) +AC_SUBST(TOOLS_H5PART_LIB) +AC_SUBST(TOOLS_HDFLIB) + +# Make AC_OUTPUT create each `file' by copying an input file (by default `file.in'), +# substituting the output variable values. +AC_CONFIG_FILES([ +Makefile +src/Makefile +test/Makefile +tools/Makefile +]) + + +AC_OUTPUT diff --git a/depcomp b/depcomp new file mode 100755 index 0000000..ffcd540 --- /dev/null +++ b/depcomp @@ -0,0 +1,529 @@ +#! /bin/sh +# depcomp - compile a program generating dependencies as side-effects + +scriptversion=2005-02-09.22 + +# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. + +# 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# 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 Alexandre Oliva . + +case $1 in + '') + echo "$0: No command. Try \`$0 --help' for more information." 1>&2 + exit 1; + ;; + -h | --h*) + cat <<\EOF +Usage: depcomp [--help] [--version] PROGRAM [ARGS] + +Run PROGRAMS ARGS to compile a file, generating dependencies +as side-effects. + +Environment variables: + depmode Dependency tracking mode. + source Source file read by `PROGRAMS ARGS'. + object Object file output by `PROGRAMS ARGS'. + DEPDIR directory where to store dependencies. + depfile Dependency file to output. + tmpdepfile Temporary file to use when outputing dependencies. + libtool Whether libtool is used (yes/no). + +Report bugs to . +EOF + exit $? + ;; + -v | --v*) + echo "depcomp $scriptversion" + exit $? + ;; +esac + +if test -z "$depmode" || test -z "$source" || test -z "$object"; then + echo "depcomp: Variables source, object and depmode must be set" 1>&2 + exit 1 +fi + +# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. +depfile=${depfile-`echo "$object" | + sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} +tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} + +rm -f "$tmpdepfile" + +# Some modes work just like other modes, but use different flags. We +# parameterize here, but still list the modes in the big case below, +# to make depend.m4 easier to write. Note that we *cannot* use a case +# here, because this file can only contain one case statement. +if test "$depmode" = hp; then + # HP compiler uses -M and no extra arg. + gccflag=-M + depmode=gcc +fi + +if test "$depmode" = dashXmstdout; then + # This is just like dashmstdout with a different argument. + dashmflag=-xM + depmode=dashmstdout +fi + +case "$depmode" in +gcc3) +## gcc 3 implements dependency tracking that does exactly what +## we want. Yay! Note: for some reason libtool 1.4 doesn't like +## it if -MD -MP comes after the -MF stuff. Hmm. + "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + mv "$tmpdepfile" "$depfile" + ;; + +gcc) +## There are various ways to get dependency output from gcc. Here's +## why we pick this rather obscure method: +## - Don't want to use -MD because we'd like the dependencies to end +## up in a subdir. Having to rename by hand is ugly. +## (We might end up doing this anyway to support other compilers.) +## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like +## -MM, not -M (despite what the docs say). +## - Using -M directly means running the compiler twice (even worse +## than renaming). + if test -z "$gccflag"; then + gccflag=-MD, + fi + "$@" -Wp,"$gccflag$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz +## The second -e expression handles DOS-style file names with drive letters. + sed -e 's/^[^:]*: / /' \ + -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" +## This next piece of magic avoids the `deleted header file' problem. +## The problem is that when a header file which appears in a .P file +## is deleted, the dependency causes make to die (because there is +## typically no way to rebuild the header). We avoid this by adding +## dummy dependencies for each header file. Too bad gcc doesn't do +## this for us directly. + tr ' ' ' +' < "$tmpdepfile" | +## Some versions of gcc put a space before the `:'. On the theory +## that the space means something, we add a space to the output as +## well. +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +hp) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + +sgi) + if test "$libtool" = yes; then + "$@" "-Wp,-MDupdate,$tmpdepfile" + else + "$@" -MDupdate "$tmpdepfile" + fi + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + + if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files + echo "$object : \\" > "$depfile" + + # Clip off the initial element (the dependent). Don't try to be + # clever and replace this with sed code, as IRIX sed won't handle + # lines with more than a fixed number of characters (4096 in + # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; + # the IRIX cc adds comments like `#:fec' to the end of the + # dependency line. + tr ' ' ' +' < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ + tr ' +' ' ' >> $depfile + echo >> $depfile + + # The second pass generates a dummy entry for each header file. + tr ' ' ' +' < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ + >> $depfile + else + # The sourcefile does not contain any dependencies, so just + # store a dummy comment line, to avoid errors with the Makefile + # "include basename.Plo" scheme. + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +aix) + # The C for AIX Compiler uses -M and outputs the dependencies + # in a .u file. In older versions, this file always lives in the + # current directory. Also, the AIX compiler puts `$object:' at the + # start of each line; $object doesn't have directory information. + # Version 6 uses the directory in both cases. + stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` + tmpdepfile="$stripped.u" + if test "$libtool" = yes; then + "$@" -Wc,-M + else + "$@" -M + fi + stat=$? + + if test -f "$tmpdepfile"; then : + else + stripped=`echo "$stripped" | sed 's,^.*/,,'` + tmpdepfile="$stripped.u" + fi + + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + + if test -f "$tmpdepfile"; then + outname="$stripped.o" + # Each line is of the form `foo.o: dependent.h'. + # Do two passes, one to just change these to + # `$object: dependent.h' and one to simply `dependent.h:'. + sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" + sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" + else + # The sourcefile does not contain any dependencies, so just + # store a dummy comment line, to avoid errors with the Makefile + # "include basename.Plo" scheme. + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +icc) + # Intel's C compiler understands `-MD -MF file'. However on + # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c + # ICC 7.0 will fill foo.d with something like + # foo.o: sub/foo.c + # foo.o: sub/foo.h + # which is wrong. We want: + # sub/foo.o: sub/foo.c + # sub/foo.o: sub/foo.h + # sub/foo.c: + # sub/foo.h: + # ICC 7.1 will output + # foo.o: sub/foo.c sub/foo.h + # and will wrap long lines using \ : + # foo.o: sub/foo.c ... \ + # sub/foo.h ... \ + # ... + + "$@" -MD -MF "$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + # Each line is of the form `foo.o: dependent.h', + # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. + # Do two passes, one to just change these to + # `$object: dependent.h' and one to simply `dependent.h:'. + sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" + # Some versions of the HPUX 10.20 sed can't process this invocation + # correctly. Breaking it into two sed invocations is a workaround. + sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | + sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +tru64) + # The Tru64 compiler uses -MD to generate dependencies as a side + # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. + # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put + # dependencies in `foo.d' instead, so we check for that too. + # Subdirectories are respected. + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` + + if test "$libtool" = yes; then + # With Tru64 cc, shared objects can also be used to make a + # static library. This mecanism is used in libtool 1.4 series to + # handle both shared and static libraries in a single compilation. + # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. + # + # With libtool 1.5 this exception was removed, and libtool now + # generates 2 separate objects for the 2 libraries. These two + # compilations output dependencies in in $dir.libs/$base.o.d and + # in $dir$base.o.d. We have to check for both files, because + # one of the two compilations can be disabled. We should prefer + # $dir$base.o.d over $dir.libs/$base.o.d because the latter is + # automatically cleaned when .libs/ is deleted, while ignoring + # the former would cause a distcleancheck panic. + tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 + tmpdepfile2=$dir$base.o.d # libtool 1.5 + tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 + tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 + "$@" -Wc,-MD + else + tmpdepfile1=$dir$base.o.d + tmpdepfile2=$dir$base.d + tmpdepfile3=$dir$base.d + tmpdepfile4=$dir$base.d + "$@" -MD + fi + + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" + do + test -f "$tmpdepfile" && break + done + if test -f "$tmpdepfile"; then + sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" + # That's a tab and a space in the []. + sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + else + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +#nosideeffect) + # This comment above is used by automake to tell side-effect + # dependency tracking mechanisms from slower ones. + +dashmstdout) + # Important note: in order to support this mode, a compiler *must* + # always write the preprocessed file to stdout, regardless of -o. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test $1 != '--mode=compile'; do + shift + done + shift + fi + + # Remove `-o $object'. + IFS=" " + for arg + do + case $arg in + -o) + shift + ;; + $object) + shift + ;; + *) + set fnord "$@" "$arg" + shift # fnord + shift # $arg + ;; + esac + done + + test -z "$dashmflag" && dashmflag=-M + # Require at least two characters before searching for `:' + # in the target name. This is to cope with DOS-style filenames: + # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. + "$@" $dashmflag | + sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + tr ' ' ' +' < "$tmpdepfile" | \ +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +dashXmstdout) + # This case only exists to satisfy depend.m4. It is never actually + # run, as this mode is specially recognized in the preamble. + exit 1 + ;; + +makedepend) + "$@" || exit $? + # Remove any Libtool call + if test "$libtool" = yes; then + while test $1 != '--mode=compile'; do + shift + done + shift + fi + # X makedepend + shift + cleared=no + for arg in "$@"; do + case $cleared in + no) + set ""; shift + cleared=yes ;; + esac + case "$arg" in + -D*|-I*) + set fnord "$@" "$arg"; shift ;; + # Strip any option that makedepend may not understand. Remove + # the object too, otherwise makedepend will parse it as a source file. + -*|$object) + ;; + *) + set fnord "$@" "$arg"; shift ;; + esac + done + obj_suffix="`echo $object | sed 's/^.*\././'`" + touch "$tmpdepfile" + ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + sed '1,2d' "$tmpdepfile" | tr ' ' ' +' | \ +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" "$tmpdepfile".bak + ;; + +cpp) + # Important note: in order to support this mode, a compiler *must* + # always write the preprocessed file to stdout. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test $1 != '--mode=compile'; do + shift + done + shift + fi + + # Remove `-o $object'. + IFS=" " + for arg + do + case $arg in + -o) + shift + ;; + $object) + shift + ;; + *) + set fnord "$@" "$arg" + shift # fnord + shift # $arg + ;; + esac + done + + "$@" -E | + sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | + sed '$ s: \\$::' > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + cat < "$tmpdepfile" >> "$depfile" + sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvisualcpp) + # Important note: in order to support this mode, a compiler *must* + # always write the preprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + "$@" || exit $? + IFS=" " + for arg + do + case "$arg" in + "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") + set fnord "$@" + shift + shift + ;; + *) + set fnord "$@" "$arg" + shift + shift + ;; + esac + done + "$@" -E | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" + echo " " >> "$depfile" + . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +none) + exec "$@" + ;; + +*) + echo "Unknown depmode $depmode" 1>&2 + exit 1 + ;; +esac + +exit 0 + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-end: "$" +# End: diff --git a/doc/2006-Berkeley-Visit/BethelSAP_1page-4.doc b/doc/2006-Berkeley-Visit/BethelSAP_1page-4.doc new file mode 100644 index 0000000..72f3359 Binary files /dev/null and b/doc/2006-Berkeley-Visit/BethelSAP_1page-4.doc differ diff --git a/doc/2006-Berkeley-Visit/H5Part.ppt b/doc/2006-Berkeley-Visit/H5Part.ppt new file mode 100644 index 0000000..55c9d71 Binary files /dev/null and b/doc/2006-Berkeley-Visit/H5Part.ppt differ diff --git a/doc/2006-Berkeley-Visit/H5xxx.ppt b/doc/2006-Berkeley-Visit/H5xxx.ppt new file mode 100644 index 0000000..0156742 Binary files /dev/null and b/doc/2006-Berkeley-Visit/H5xxx.ppt differ diff --git a/doc/2006-Berkeley-Visit/H5xxxVisIt.fig b/doc/2006-Berkeley-Visit/H5xxxVisIt.fig new file mode 100644 index 0000000..9e4288e --- /dev/null +++ b/doc/2006-Berkeley-Visit/H5xxxVisIt.fig @@ -0,0 +1,294 @@ +#FIG 3.2 +Landscape +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +0 32 #c6b797 +0 33 #eff8ff +0 34 #dccba6 +0 35 #404040 +0 36 #808080 +0 37 #c0c0c0 +0 38 #e0e0e0 +0 39 #8e8f8e +0 40 #aaaaaa +0 41 #555555 +0 42 #bebebe +0 43 #515151 +0 44 #e7e3e7 +0 45 #000049 +0 46 #797979 +0 47 #303430 +0 48 #414141 +0 49 #c7b696 +0 50 #8e8e8e +0 51 #414541 +0 52 #8e8e8e +0 53 #000079 +0 54 #ff8200 +0 55 #007d00 +0 56 #0000be +# Desktop computer +6 375 2400 2025 4050 +6 1575 3825 2025 4050 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 8 + 1615 3916 1719 3874 1908 3874 1950 3853 1972 3853 1846 3937 + 1615 3937 1615 3916 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 6 + 1888 3853 1846 3874 1908 3874 1950 3853 1908 3853 1888 3853 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 5 + 1846 3874 1888 3853 1846 3853 1803 3874 1846 3874 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 5 + 1803 3874 1740 3874 1803 3853 1824 3853 1803 3874 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 6 + 1846 3958 1866 3916 1972 3853 1992 3895 1846 3979 1846 3958 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 5 + 1615 3937 1866 3937 1846 3958 1615 3958 1615 3937 +2 3 0 1 -1 7 2 0 20 0.000 0 0 -1 0 0 9 + 1615 3958 1594 4000 1719 4000 1846 4000 1866 4000 1992 3916 + 1992 3895 1846 3958 1615 3958 +-6 +6 600 2400 1950 3675 +2 3 0 1 -1 7 2 0 15 0.000 0 0 -1 0 0 6 + 669 2530 648 3307 1594 3307 1615 2468 1594 2468 669 2530 +2 3 0 1 -1 7 0 0 10 0.000 0 0 -1 0 0 5 + 1615 2468 1594 3307 1719 3307 1719 2509 1615 2468 +2 3 0 1 -1 7 0 0 15 0.000 0 0 -1 0 0 5 + 1762 2677 1908 2719 1908 3139 1762 3203 1762 2677 +2 3 0 1 -1 7 2 0 15 0.000 0 0 -1 0 0 6 + 732 3349 732 3412 1594 3454 1594 3371 753 3349 732 3349 +2 3 0 1 -1 7 1 0 15 0.000 0 0 -1 0 0 5 + 1594 3371 1846 3280 1846 3348 1594 3454 1594 3371 +2 3 0 1 -1 7 2 0 15 0.000 0 0 -1 0 0 5 + 732 3433 732 3559 1594 3601 1594 3454 732 3433 +2 3 0 1 -1 0 2 0 20 0.000 0 0 -1 0 0 5 + 1594 3454 732 3412 753 3433 1572 3454 1594 3454 +2 3 0 1 -1 7 2 0 8 0.000 0 0 -1 0 0 5 + 1594 3454 1594 3601 1635 3580 1635 3433 1594 3454 +2 3 0 1 -1 7 2 0 8 0.000 0 0 -1 0 0 5 + 1719 3538 1846 3475 1846 3349 1719 3391 1719 3538 +2 3 0 1 -1 7 2 0 10 0.000 0 0 -1 0 0 5 + 1635 3496 1719 3454 1719 3391 1635 3433 1635 3496 +2 3 0 1 -1 7 2 0 10 0.000 0 0 -1 0 0 5 + 1635 3580 1719 3538 1719 3475 1635 3517 1635 3580 +2 1 0 2 -1 7 2 0 8 0.000 0 0 -1 0 0 2 + 1635 3496 1719 3454 +2 1 0 2 -1 7 2 0 8 0.000 0 0 -1 0 0 2 + 1635 3517 1719 3475 +2 3 0 1 -1 7 3 0 10 0.000 0 0 -1 0 0 7 + 732 3559 732 3601 816 3601 963 3559 963 3538 816 3559 + 732 3559 +2 3 0 1 -1 7 3 0 10 0.000 1 0 -1 0 0 5 + 1490 3596 1490 3641 1594 3643 1594 3601 1490 3596 +2 3 0 1 -1 7 3 0 10 0.000 1 0 -1 0 0 5 + 1594 3643 1635 3601 1635 3580 1594 3601 1594 3643 +2 3 0 1 -1 7 3 0 10 0.000 0 0 -1 0 0 5 + 1846 3475 1846 3496 1803 3517 1803 3496 1846 3475 +2 3 0 1 -1 7 3 0 10 0.000 0 0 -1 0 0 4 + 1803 3517 1740 3517 1803 3496 1803 3517 +2 3 0 1 -1 7 4 0 15 0.000 1 0 -1 0 0 6 + 879 3307 732 3349 1594 3371 1846 3279 1762 3265 879 3307 +2 3 0 1 -1 7 0 0 10 0.000 1 0 -1 0 0 5 + 1719 2509 1719 3307 1762 3265 1762 2552 1719 2509 +3 1 0 1 -1 7 1 0 20 0.000 0 0 0 11 + 774 2656 816 2614 1488 2572 1510 2593 1530 2636 1530 3139 + 1510 3181 1467 3203 837 3203 795 3181 774 3160 + 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 + 1.000 1.000 1.000 +-6 +6 375 3675 1650 4050 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8 + 1207 3935 1205 3897 1229 3888 1265 3890 1264 3922 1244 3937 + 1212 3937 1207 3935 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8 + 1264 3939 1261 3900 1285 3892 1320 3893 1319 3925 1300 3940 + 1268 3940 1264 3939 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8 + 1318 3950 1315 3912 1339 3904 1374 3905 1374 3937 1355 3953 + 1322 3953 1318 3950 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 8 + 1151 3935 1150 3897 1173 3888 1209 3890 1207 3922 1188 3937 + 1157 3937 1151 3935 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 1169 3900 1166 3861 1190 3853 1226 3854 1224 3886 1205 3901 + 1173 3901 1169 3900 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 1225 3904 1223 3865 1247 3857 1282 3858 1281 3891 1262 3906 + 1230 3906 1225 3904 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 1281 3908 1279 3869 1303 3860 1338 3862 1337 3893 1318 3909 + 1286 3909 1281 3908 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 1344 3909 1342 3870 1366 3862 1401 3863 1399 3895 1381 3911 + 1349 3911 1344 3909 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1214 3854 1214 3835 1233 3822 1272 3825 1272 3831 1260 3839 + 1258 3856 1211 3854 1214 3854 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1258 3855 1258 3836 1277 3823 1315 3826 1315 3831 1304 3839 + 1302 3857 1255 3855 1258 3855 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1300 3862 1300 3843 1319 3830 1359 3833 1359 3838 1346 3846 + 1344 3863 1297 3862 1300 3862 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1344 3863 1344 3845 1363 3831 1402 3835 1402 3839 1390 3848 + 1389 3865 1341 3863 1344 3863 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1387 3869 1387 3850 1406 3836 1444 3839 1444 3845 1436 3871 + 1417 3882 1383 3869 1387 3869 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 708 3798 708 3779 727 3766 766 3769 766 3774 755 3783 + 752 3800 705 3798 708 3798 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 747 3803 747 3784 766 3771 805 3775 805 3780 793 3788 + 791 3805 744 3803 747 3803 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 794 3805 794 3787 813 3773 852 3777 852 3781 840 3790 + 839 3807 791 3805 794 3805 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 832 3810 832 3792 850 3778 889 3781 889 3787 878 3795 + 876 3812 828 3810 832 3810 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 876 3812 876 3793 894 3780 934 3784 934 3788 921 3797 + 919 3814 872 3812 876 3812 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 919 3816 919 3797 938 3784 977 3787 977 3792 965 3800 + 964 3817 916 3816 919 3816 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 962 3816 962 3797 981 3784 1019 3787 1019 3792 1008 3800 + 1006 3817 959 3816 962 3816 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1001 3819 1001 3800 1019 3787 1058 3790 1058 3795 1047 3803 + 1045 3820 997 3819 1001 3819 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1049 3819 1049 3800 1067 3787 1106 3790 1106 3795 1094 3803 + 1092 3820 1045 3819 1049 3819 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 661 3822 661 3803 679 3790 718 3793 718 3799 706 3807 + 704 3824 658 3822 661 3822 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 704 3831 704 3812 724 3799 762 3802 762 3807 750 3816 + 748 3832 702 3831 704 3831 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 748 3834 748 3816 768 3802 806 3805 806 3810 794 3819 + 793 3835 746 3834 748 3834 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 789 3838 789 3819 808 3805 847 3808 847 3814 835 3822 + 833 3839 786 3838 789 3838 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 832 3840 832 3822 850 3808 889 3812 889 3817 878 3825 + 876 3842 828 3840 832 3840 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 874 3842 874 3824 893 3810 932 3814 932 3819 919 3827 + 918 3844 871 3842 874 3842 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 916 3846 916 3827 934 3814 974 3817 974 3822 962 3831 + 960 3847 913 3846 916 3846 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 961 3846 961 3828 980 3814 1018 3817 1018 3823 1007 3831 + 1005 3847 957 3846 961 3846 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1005 3849 1005 3831 1023 3817 1062 3821 1062 3826 1050 3834 + 1049 3851 1002 3849 1005 3849 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 1049 3851 1049 3832 1067 3819 1107 3823 1107 3828 1095 3836 + 1093 3853 1045 3851 1049 3851 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 656 3866 655 3827 678 3819 714 3820 713 3853 693 3868 + 662 3868 656 3866 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 700 3869 698 3831 722 3822 757 3824 755 3856 737 3871 + 704 3871 700 3869 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 744 3876 741 3838 766 3829 801 3831 799 3862 781 3878 + 748 3878 744 3876 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 792 3882 790 3842 814 3834 849 3835 848 3868 829 3883 + 797 3883 792 3882 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 832 3884 830 3846 854 3837 889 3839 887 3870 869 3886 + 836 3886 832 3884 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 880 3890 879 3851 902 3842 938 3844 936 3876 918 3892 + 886 3892 880 3890 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 932 3893 930 3854 954 3846 989 3847 988 3879 969 3895 + 936 3895 932 3893 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 982 3895 981 3856 1004 3847 1040 3849 1038 3882 1019 3897 + 988 3897 982 3895 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 1025 3898 1023 3860 1047 3851 1082 3853 1080 3885 1062 3900 + 1029 3900 1025 3898 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 618 3861 616 3822 640 3814 675 3816 674 3847 655 3862 + 623 3862 618 3861 +2 3 0 1 -1 7 1 0 20 0.000 0 0 -1 0 0 8 + 572 3888 571 3849 594 3840 630 3842 629 3875 609 3890 + 578 3890 572 3888 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 609 3888 609 3869 629 3856 667 3860 667 3864 655 3873 + 654 3890 607 3888 609 3888 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 7 + 654 3893 984 3934 988 3898 664 3866 652 3882 652 3888 + 654 3893 +2 3 0 1 -1 7 0 0 20 0.000 0 0 -1 0 0 9 + 986 3931 986 3913 1004 3900 1043 3902 1043 3908 1032 3916 + 1029 3933 982 3931 986 3931 +2 3 0 1 -1 7 5 0 15 0.000 0 0 -1 0 0 9 + 429 3871 683 3743 1551 3816 1576 3831 1573 3840 1426 3990 + 427 3883 427 3869 429 3871 +2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 0 0 3 + 423 3910 1434 4014 1575 3875 +2 3 0 0 -1 7 5 0 10 0.000 0 0 -1 0 0 8 + 429 3885 429 3928 1430 4050 1580 3895 1576 3831 1423 3990 + 425 3882 429 3885 +-6 +-6 +6 4050 3000 7500 3750 +2 1 0 1 0 0 0 0 -1 0.000 0 0 -1 0 0 4 + 7500 3000 5430 3000 6120 3690 4050 3690 +-6 +# TB Data +6 8025 6000 9000 7425 +5 1 0 1 -1 -1 0 0 -1 0.000 0 1 0 0 8490.000 5700.000 8040 6300 8490 6450 8940 6300 +5 1 0 1 -1 -1 0 0 -1 0.000 0 1 0 0 8490.000 6600.000 8040 7200 8490 7350 8940 7200 +1 2 0 1 -1 -1 0 0 -1 0.000 1 0.0000 8490 6150 450 150 8040 6000 8940 6300 +2 1 0 1 -1 -1 0 0 -1 0.000 0 0 0 0 0 2 + 8940 6225 8940 7200 +2 1 0 1 -1 -1 0 0 -1 0.000 0 0 0 0 0 2 + 8040 6225 8040 7200 +4 1 -1 0 0 2 12 0.0000 6 135 270 8490 6675 TB\001 +4 1 -1 0 0 2 12 0.0000 6 135 405 8490 7275 Data\001 +-6 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2 + 0 0 1.00 60.00 120.00 + 0 0 1.00 60.00 120.00 + 2025 3075 2475 3075 +2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 + 3750 4650 3750 2100 2550 2100 2550 4650 3750 4650 +2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5 + 9075 4650 9075 2100 7875 2100 7875 4650 9075 4650 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 + 0 0 3.00 60.00 120.00 + 8400 4800 8400 6000 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 + 0 0 3.00 60.00 120.00 + 8250 4800 8250 6000 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 + 0 0 3.00 60.00 120.00 + 8100 4800 8100 6000 +2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 + 0 0 3.00 60.00 120.00 + 8850 4800 8850 6000 +2 4 0 1 0 7 50 -1 -1 0.000 0 0 7 0 0 5 + 12000 4500 12000 3975 8175 3975 8175 4500 12000 4500 +4 0 0 50 0 2 15 0.0000 4 30 360 8475 5550 ......\001 +4 0 0 50 0 0 20 0.0000 4 195 570 2625 3375 VisIt\001 +4 0 0 50 0 0 20 0.0000 4 195 570 7950 3375 VisIt\001 +4 0 0 50 -1 2 16 0.0000 4 225 1410 9375 4275 H5xxx plugin\001 +4 0 0 50 0 0 20 0.0000 4 255 1650 6450 5550 n-way parallel\001 diff --git a/doc/2006-Berkeley-Visit/SAP-Combined-v6.doc b/doc/2006-Berkeley-Visit/SAP-Combined-v6.doc new file mode 100644 index 0000000..3304214 Binary files /dev/null and b/doc/2006-Berkeley-Visit/SAP-Combined-v6.doc differ diff --git a/doc/2006-Berkeley-Visit/aqpsi2006mar22.pdf b/doc/2006-Berkeley-Visit/aqpsi2006mar22.pdf new file mode 100644 index 0000000..8fd751c Binary files /dev/null and b/doc/2006-Berkeley-Visit/aqpsi2006mar22.pdf differ diff --git a/doc/2006-Berkeley-Visit/hdf.ps b/doc/2006-Berkeley-Visit/hdf.ps new file mode 100644 index 0000000..8b613b8 --- /dev/null +++ b/doc/2006-Berkeley-Visit/hdf.ps @@ -0,0 +1,1994 @@ +%!PS-Adobe-3.0 +%XpPrinter-Model: Generic PostScript Printer +%%Creator: Wind/U Xprinter Version 3.1.0 (linux) (Compile Date: Aug 27 1998 18:14:52) (jshalf) +%%Title: +%%CreationDate:Fri Oct 29 15:14:31 1999 +%%DocumentSuppliedResources: (atend) +%%Pages: (atend) +%%LanguageLevel: 1 +%%EndComments +%%BeginProlog +/XPrinterDict dup 200 dict def load begin +/bdf{bind def}bind def +/ldf{load def}bdf +/m/rmoveto ldf +/l2/rlineto ldf +/gs/gsave ldf +/gr/grestore ldf +/np/newpath ldf +/sv/save ldf +/rs/restore ldf +/tl/translate ldf +/mt/matrix ldf +/l/length ldf +/z/dict ldf +/d/def ldf +/e/exch ldf +/a/array ldf +/ac/arc ldf +/an/arcn ldf +/b/begin ldf +/pi/putinterval ldf +/t/moveto ldf +/lo/lineto ldf +/st/stroke ldf +/p/add ldf +/s/sub ldf +/c/mul ldf +/v/div ldf +/cp/closepath ldf +/sl/scale ldf +/ff/findfont ldf +/mf/makefont ldf +/sf/setfont ldf +/f/fill ldf +/sw/setlinewidth ldf +/sc/setlinecap ldf +/sj/setlinejoin ldf +/sg/setgray ldf +/ski/ISOLatin1Encoding where{pop true}{false}ifelse d +/fcd{ff dup l z b{1 index /FID ne{d}{pop pop}ifelse}forall /Encoding ISOLatin1Encoding d currentdict end}bdf +/fdf{e definefont pop}bdf +/sdt 22 z d +sdt b +/tpm mt d +/tpt mt d +/tps mt d +/cps +{/pr2 e cvlit d +/pr1 e cvlit d +/npc pr1 l pr2 l p a d +npc 0 pr1 pi +npc pr1 l pr2 pi +npc cvx +}bdf +/rmx mt d +/frs +{72 0 rmx defaultmatrix dtransform +/yres e d /xres e d +xres dup c yres dup c p sqrt +}bdf +end +/sus +{sdt b +/spf e d +/sag e d +/ces e d +300 ces v sag /spf load +setscreen +end +}bdf +/spt 18 z d +spt b +/bts +{/ybit e d /xbit e d +/byv bstr ybit bwd c xbit 8 idiv +p get d +/mask 1 7 xbit 8 mod s bitshift d +byv mask and 0 ne +}bdf +end +/bsf +{spt b +/y e d /x e d +/xix x 1 p 2 v bpx c cvi d +/yix y 1 p 2 v bpy c cvi d +xix yix bts +{/onb onb 1 p d 1} +{/ofb ofb 1 p d 0} +ifelse +end +}bdf +/setpattern +{spt b +/csz e d +/agl e d +/bwd e d +/bpy e d +/bpx e d +/bstr e d +/onb 0 d /ofb 0 d +csz agl /bsf load +sus +{ }settransfer +ofb ofb onb p v setgray +end +}bdf +/picstr 500 string d +/inch{72 c}bdf +/DP{gs np 0 360 ac cp f gr}bdf +/DL{gs np t lo st gr}bdf +/RGB{setrgbcolor}bdf +/C{gs t show gr}bdf + +/ren 12 z d +/REn +{ren b +/nwc e d +/nwf e d +/bft e d +/bfd bft ff d +/nf bfd maxlength z d +bfd +{e dup /FID ne +{dup /Encoding eq +{e dup l a copy +nf 3 1 roll put} +{e nf 3 1 roll put} +ifelse +} +{pop pop} +ifelse +}forall +nf /FontName nwf put +nwc aload pop +nwc l 2 idiv +{nf /Encoding get 3 1 roll put} +repeat +nwf nf definefont pop +end +}d +/rots{gs t rotate show gr}bdf + +%%EndProlog +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Helvetica-Bold fcd /Helvetica-Bold-ISO8859-1 fdf}if +/Helvetica-Bold-ISO8859-1 ff [18.00 0 0 -18.00 0 0] mf sf +<4d6f7469766174696f6e> 72.24 71.28 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 72.96 t 72.24 74.16 lo 162.48 74.16 lo 162.48 72.96 lo cp f st gr +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<48444635206973206120766572792067656e6572616c2073656c662d64657363726962696e67206461746120666f726d617420666f722073746f72696e6720636f6d706c65782064617461> 108.72 86.16 C +<6f626a65637473206f6e206469736b2e2020486f77657665722c207468652067726f7570696e6720616e642061747472696275746520737472756374757265732061726520736f2067656e6572616c20776974686f7574> 72.24 99.60 C +<736f6d65206e616d696e6720616e642073747275637475726520636f6e76656e74696f6e20666f72207468652067726f75707320616e642061747472696275746573207573656420746f206465736372696265> 72.24 113.04 C +<73696d756c6174696f6e2064617461736574732c20736369656e74697374732077696c6c20626520756e61626c6520746f20656173696c792065786368616e676520696e666f726d6174696f6e2077697468206f6e652d> 72.24 126.48 C +<616e6f746865722e2020476976656e207468652063757272656e742067656e6572616c697479206f6620484446352c207265616465727320776f756c64206e65656420746f2062652066617220746f6f> 72.24 139.92 C +<636f6d706c6963617465642e> 72.24 153.36 C +<5468697320646f63756d656e742077696c6c20666972737420646573637269626520766172696f7573206461746120736368656d6173207573656420696e2073696d756c6174696f6e20636f646573> 108.72 166.80 C +<7768696368206d75737420626520737570706f727465642062792074686973206879706f746865746963616c2022536369656e7469666963204461746122204150492e2020546869732077696c6c206265> 72.24 180.24 C +<666f6c6c6f77656420627920612070726f706f73656420696d706c656d656e6174696f6e2073706563696669636174696f6e20776869636820697320612063616e6f6e6963616c20736574206f662067726f7570696e67> 72.24 193.68 C +<616e64206e616d696e6720636f6e76656e74696f6e7320746f2073746f72652062617369632064617461736574207479706573207468617420617265206f6620696e74657265737420746f207468652073696d756c6174696f6e> 72.24 207.12 C +<736369656e63657320636f6d6d756e69747920696e20484446352066696c65732e2020496e636c75646564206172652064617461206465736372697074696f6e7320666f7220737472756374757265642067726964732c> 72.24 220.56 C +<66696e69746520656c656d656e742c20616e6420414d522064617461736574732e204e6f7420696e636c756465642061726520666f726d61742073706563696669636174696f6e7320666f722073656e736f7220646174612c> 72.24 234.00 C +<47656f6772617068696320446174612028474953292c20616e64206368656d697374727920646174612074797065732e20204368656d6973747279206461746120287768696368206d617920696e636c756465> 72.24 247.44 C +<6368656d6963616c20626f6e64696e672073747275637475726573206f72206372797374616c6f677261706869632064617461292c2047656f67726170686963616c204461746120287768696368206d6179> 72.24 261.12 C +<68617665207665727920737472616e67652070726f6a656374696f6e20636f6f7264696e6174652073797374656d73206c696b65206d65726361746f72292c20616e642073656e736f72206461746120287768696368206973> 72.24 274.56 C +<6f6674656e2073636174746572206461746120776974682061206c6f74206f662063616c6962726174696f6e20696e666f726d6174696f6e292073686f756c642070726f6261626c7920626520696e636c7564656420696e> 72.24 288.00 C +<616e792066696e616c2073706563696669636174696f6e2c20627574204920646f206e6f7420686176652074686520657870657274697365206e656365737361727920696e2074686f73652072657370656374697665206669656c6473> 72.24 301.44 C +<746f20737567676573742073756368206120737065632e20204920747269656420746f2064657369676e2074686520636f6e766574696f6e7320666f722067726f7570696e6720746f2062652061626c6520746f> 72.24 314.88 C +<6163636f6d6d6f64617465206e6577206461746120736368656d6173206173207468657920617269736520776974686f757420726571756972696e6720612072657772697465206f66206578697374696e67> 72.24 328.32 C +<736368656d61732e> 72.24 341.76 C +<496e746572737065727365642077697468207468657365206465736372697074696f6e732077696c6c20626520736f6d6520736f6d652067656e6572616c204170706c69636174696f6e> 108.72 355.20 C +<50726f6772616d6d696e6720496e746572666163652067756964656c696e657320776869636820617265206261736564206f6e206d79207061737420657870657269656e63652077726974696e67204844462d> 72.24 368.64 C +<6261736564206170706c69636174696f6e7320616e642068656c70696e67206f7468657273206275696c642048444620726561646572732f7772697465727320666f722074686520706173742033> 72.24 382.08 C +<67656e65726174696f6e73206f66204844462e20205468657265206e6565647320746f2062652061206c6f74206f6620617474656e74696f6e20746f2073696d706c696679696e67207468652022736369656e74666963> 72.24 395.52 C +<657874656e73696f6e732220746f2074686520484446352041504920736f2074686174207068797369636973747320616e6420656e67696e656572732077696c6c2062652077696c6c696e6720746f207573652069742e20204279> 72.24 408.96 C +<66756c6c792073706563696679696e67207468652063616e6f6e6963616c206c61796f7574207573696e67206665617475726573206f66207468652063757272656e742048444635204150492c2070656f706c652077686f> 72.24 422.40 C +<72657175697265206d6178696d756d20666c65786162696c6974792028435320616e642056697375616c697a6174696f6e2070726f6772616d6d657273292063616e207374696c6c20686176652066756c6c> 72.24 435.84 C +<61636365737320746f2069742e2020486f77657665722c20746865206d616a6f72697479206f6620736369656e746973747320287468652070656f706c65207765206e65656420746f2072656375697420746f207573652074686973> 72.24 449.28 C +<415049292c2077696c6c2072657175697265206d6f72652073696d706c6963697479207468726f75676820616e20415049207468617420656e666f7263657320746869732072617468657220696e766f6c766564> 72.24 462.72 C +<73706563696669636174696f6e20666f722064617461206f72646572696e67206f6e206469736b2e> 72.24 476.16 C +/Helvetica-Bold-ISO8859-1 ff [18.00 0 0 -18.00 0 0] mf sf +<4261736963205072696e6369706c6573> 72.24 509.52 C +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 511.20 t 72.24 512.40 lo 211.92 512.40 lo 211.92 511.20 lo cp f st gr +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4f6e652070726f626c656d20776974682048444634206f626a656374206e616d696e6720776173207468617420697473206170706c69636174696f6e2077617320696e636f6e73697374656e742e> 108.00 524.40 C +<496e20736f6d652063617365732c2070656f706c6520776f756c64206e616d65206f626a6563747320696e20612066696c65206261736564206f6e206e616d65206f662074686520636f6d706f6e656e742074686174> 72.24 537.84 C +<7468657920726570726573656e74656420287375636820617320227072657373757265222c202264656e73697479222c202274656d7065726174757265222e2e2e292e2020486f77657665722c206f74686572732075736564> 72.24 551.28 C +<697420746f2073746f726520657874726120696e666f726d6174696f6e2061626f75742074686569722064617461206c696b6520697473206e657374696e6720696e20616e20414d52206869657261726368792e2020536f6d65> 72.24 564.72 C +<69676e6f72656420746865206e616d6520706172616d6574657220656e746972656c79207768696368206361757365732048444620746f2063726561746520697473206f776e206e616d65732022646174617365742d> 72.24 578.16 C +<31222c2022646174617365742d32222c206574632e2e2e292e202042656361757365206f6620746869732c20612076697375616c697a6174696f6e20726561646572204755492063616e6e6f7420646570656e64206f6e20746865> 72.24 591.60 C +<6e616d65206669656c6420666f7220616e7920696e666f726d6174696f6e206f662076616c75652e202054686520226e616d6522206669656c6420666f7220616e204844463520736369656e74696669632064617461> 72.24 605.04 C +<73706563696669636174696f6e2073686f756c6420626520726571756972656420616e642069742073686f756c642068617665206f6e6c79206f6e65206d65616e696e673b207468652074797065206f6620746865> 72.24 618.72 C +<70726f70657274792073746f72656420282264656e73697479222c202274656d7065726174757265222c206574632e2e2e292e> 72.24 632.16 C +<4c696b65776973652c207468652074696d6520617370656374206f66206f6c6465722048444620646174617365742041504927732077617320616c7761797320616d626967756f75732e> 108.00 645.60 C +<536f6d652070656f706c652073746f72656420636f6e73656375746976652074696d65737465707320617320636f6e736563757469766520646174617365747320696e20612066696c652e2020456163682066696c65> 72.24 659.04 C +<636f6e7461696e6564207468652074696d657365726965732f65766f6c7574696f6e206f6620646966666572656e7420636f6d706f6e656e7473202869652e20796f752764206861766520612070726573737572652e686466> 72.24 672.48 C +<66696c6520746f2073746f7265207468652065766f6c7574696f6e206f6620746865207072657373757265206669656c64292e20204f746865722070656f706c652063686f736520746f2073746f726520616c6c206f6620746865> 72.24 685.92 C +<636f6d706f6e656e74732066726f6d206120706172746963756c61722074696d657374657020696e20612073696e676c652066696c6520616e642068617665206f6e652066696c65207065722074696d65737465702e2020536f> 72.24 699.36 C +gr +%%PageTrailer +rs +%%BoundingBox: 18 72 522 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 2 2 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<227072657373757265222c202274656d7065726174757265222c20616e64202264656e736974792220776f756c642062652073746f72656420636f6e73656375746976656c7920696e20612066696c65> 72.24 64.80 C +<636f6e7461696e696e67207468652066697273742074696d657374657020282274696d653030302e68646622292e202050726f7065727469657320666f7220746865206e6578742074696d65737465702073746f72656420696e> 72.24 78.24 C +<746865206e65787420636f6e73656375746976656c79206e756d62657265642066696c6520282274696d653030312e68646622292e20205468697320636f6d62696e656420776974682074686520616d62696775697479> 72.24 91.68 C +<696e2074686520757365206f6620746865206461746173657420226e616d6522206669656c642c20686173206d616465207468696e6773207665727920646966666963756c7420666f722076697375616c697a6174696f6e> 72.24 105.12 C +<73797374656d2047554927732e2020536f2073706563696669636174696f6e206f66202274696d65222073686f756c6420626520726571756972656420666f7220646174617365747320696e206164646974696f6e20746f> 72.24 118.56 C +<746865206461746173657420226e616d65222e202041742061206d696e696d756d2c20746865204150492073686f756c642062652061626c6520746f2073656172636820666f72206461746173657473206261736564> 72.24 132.00 C +<656e746972656c79206f6e207468656972202274696d652220286576656e20612074696d6520696e74657276616c2920616e6420226e616d6522206669656c64732e2020496e207468697320636173652c2073656c656374696f6e206f66> 72.24 145.44 C +<64617461736574732077696c6c20626520756e616d626967756f7573207265676172646c657373206f662077686963682073746f7261676520636f6e76656e74696f6e2069732063686f73656e20627920746865> 72.24 158.88 C +<757365722e20205468697320776f756c6420676f2061206c6f6e672077617920746f776172647320737570706f7274696e67206d6f726520736f70686973746963617465642076697375616c697a6174696f6e> 72.24 172.32 C +<73797374656d2047554927732e> 72.24 185.76 C +ski{/Helvetica-Bold fcd /Helvetica-Bold-ISO8859-1 fdf}if +/Helvetica-Bold-ISO8859-1 ff [18.00 0 0 -18.00 0 0] mf sf +<4465736372697074696f6e73206f6620536369656e7469666963204461746120536368656d6173> 72.24 219.36 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 221.04 t 72.24 222.24 lo 417.84 222.24 lo 417.84 221.04 lo cp f st gr +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54687265652066756e64616d656e74616c206461746174797065732077686963682061726520636f6d6d6f6e6c79206465616c74207769746820696e20736369656e74696669632073696d756c6174696f6e7320617265> 72.24 234.00 C +<7374727563747572656420677269647320286d756c746964696d656e73696f6e616c20726567756c617220617272617973292c2066696e69746520656c656d656e742064617461202846454d292c20616e64> 72.24 247.44 C +<68696572617263686963616c204164617074697665204d65736820526566696e656d656e742028414d52292e20> 72.24 261.12 C +<20> 309.12 261.12 C +<53747275637475726564204772696473> 72.24 288.00 C +gs np 72.24 289.20 t 72.24 289.92 lo 152.16 289.92 lo 152.16 289.20 lo cp f st gr +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<537472756374757265642067726964206461746120636f6e7461696e7320626f74682061> 72.24 301.44 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Italic fcd /Times-Italic-ISO8859-1 fdf}if +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<206c6f676963616c207368617065> 243.84 301.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20616e642061> 311.28 301.44 C +<20> 340.08 301.44 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<706879736963616c207368617065> 343.20 301.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2e2020546865> 414.00 301.44 C +<20> 442.08 301.44 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6c6f676963616c> 445.20 301.44 C +<7368617065> 72.24 314.88 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2069732068616e646c6564206279204844463520696e7472696e736963616c6c7920617320746865204835532028736861706529206f662074686520646174617365742e2020486f77657665722c20746865> 100.08 314.88 C +<636f6e76656e74696f6e7320666f722067726f7570207374727563747572657320636f6e7461696e696e672074686520706879736963616c207368617065206d6179206469666665722067726561746c792066726f6d> 72.24 328.32 C +<746865206c6f676963616c207368617065206f6620746865206d656d6f727920696d61676520616e642077696c6c207265717569726520736f6d652073706563696669636174696f6e20616e64206d757374206265> 72.24 341.76 C +<646566696e656420696e646570656e64656e746c792066726f6d20746865206c6f676963616c20636f6f7264696e617465732e2020466f7220696e7374616e636520796f752063616e206861766520616e206172726179> 72.24 355.20 C +<776974682032206c6f676963616c2064696d656e73696f6e7320746f20696e6465782069747320656c656d656e747320696e206d656d6f72792028746865> 72.24 368.64 C +<20> 375.84 368.64 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6c6f676963616c207368617065> 378.96 368.64 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<292c20627574206974> 443.28 368.64 C +<64657363726962657320612063656c6c2d63656e7465726564206d656d6272616e6520656d626564656420696e2033442073706163652028746865> 72.24 382.08 C +<20> 374.40 382.08 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<706879736963616c207368617065> 377.52 382.08 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<292e2020536f2065616368> 448.32 382.08 C +<656c656d656e74206f66207468652064617461736574206d75737420686176652061203320636f6f7264696e617465732028782c20792c20616e64207a20696e2063617274657369616e20737061636529> 72.24 395.52 C +<6173736f636961746564207769746820697420616e6420746865206461746120636f6f7264696e61746573206c696e652075702077697468207468652063656c6c2d63656e74657273206f6620746865206772696420726174686572> 72.24 408.96 C +<7468616e2074686520677269642076657274696365732e20204d616e7920646174612073746f7261676520736368656d6573206465616c2077697468207468697320627920666f7263696e67207468652073746f72616765206f66> 72.24 422.40 C +<6578706c6963697420636f6f7264696e6174657320666f72206576657279206c6f676963616c206461746120656c656d656e742073746f726564206f6e206469736b2e2020486f77657665722c2073746f72696e6720746865> 72.24 435.84 C +<636f6f7264696e61746573206578706c696369746c79206973207665727920636f73746c7920696e207465726d73206f66206469736b20737061636520616e6420776f756c6420726573756c7420696e2061> 72.24 449.28 C +<7369676e69666963616e7420706572666f726d616e63652070656e616c74792e2020546865206d6f737420636f6d7061637420706f737369626c65206461746120726570726573656e746174696f6e> 72.24 462.72 C +<617661696c61626c652073686f756c6420626520757365642e2020547261646974696f6e616c6c79207468697320686173206d65616e20746861742c2073747275637475726564206772696420636f6f7264696e6174657320617265> 72.24 476.16 C +<73746f726564207573696e67203320646966666572656e7420736368656d617320646570656e64696e67206f6e20686f7720726567756c61722074686520636f6f7264696e61746520646174612069732e202054686973206973> 72.24 489.60 C +<736c696768746c7920636f756e74657220746f20736f6d6520766563746f722d62756e646c652d6c696b6520736368656d61732c206275742049207468696e6b206974206973206e6f7420656e746972656c79> 72.24 503.04 C +<696e636f6d70617461626c652073696e636520796f752063616e20616c776179732067656e657261746520746865206578706c6963697420636f6f7264696e617465732066726f6d20746865206d6f7265> 72.24 516.48 C +<636f6d70616374206469736b20726570726573656e746174696f6e2e2020546865207374727563747572656420646174612073746f7261676520736368656d617320617265> 72.24 529.92 C +<2d756e69666f726d3a2020646566696e6520626f756e64696e6720626f7820666f72207468652064617461736574> 130.32 557.28 C +<2d72656374696c696e6561723a2020646566696e65206564676520636f6f7264696e6174657320666f7220746865206461746173657420286a757374206c696b652044465344292e> 130.32 570.72 C +<2d6972726567756c61723a2020646566696e65206578706c6963697420636f6f7264696e6174657320666f72206561636820706f696e742e> 130.32 584.16 C +<466f722065616368206f6620746865736520736368656d61732c20796f752073686f756c642062652061626c6520746f207265717565737420646174612061626f757420746865697220636f6f7264696e6174657320696e2061> 72.24 611.04 C +<76617269657479206f66206d616e6e6572732074686f7567682e20205468652074797065206f6620696e666f726d6174696f6e2070726f766964656420696e20726573706f6e736520746f20612072657175657374> 72.24 624.72 C +<61626f757420746865206461746120636f6f7264696e617465732073686f756c64206e6f74206265206c696d6974656420746f2074686520706172746963756c61722074797065206f6620636f6f7264696e617465> 72.24 638.16 C +<73746f7261676520736368656d6120757365642e> 72.24 651.60 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Bold fcd /Times-Bold-ISO8859-1 fdf}if +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<436f6f7264696e617465205265717565737473> 108.72 678.96 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2d756e69666f726d3a2063616e207265717565737420626f756e64696e6720626f782c20656467652d636f6f7264696e617465732c20616e642066756c6c20636f6f7264696e617465732d> 129.60 692.40 C +gr +%%PageTrailer +rs +%%BoundingBox: 18 79 521 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 3 3 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<7065722d766572746578> 138.72 64.80 C +<2d72656374696c696e6561723a2063616e207265717565737420656467652d636f6f7264696e6174657320616e642066756c6c20636f6f7264696e61746573206f7220626f756e64696e67> 129.60 78.24 C +<626f78> 138.72 91.68 C +<2d6972726567756c61723a202063616e207265717565737420626f756e64696e6720626f7820616e6420636f6f7264696e617465732d7065722d7665727465782c20627574> 129.60 105.12 C +<72657175657374696e67206564676520636f6f7264696e6174657320697320616e206572726f72> 138.72 118.56 C +<496e206164646974696f6e20746f20646566696e696e672074686520706879736963616c20636f6f7264696e61746573206f662074686520646174617365742c20796f75206d7573742062652061626c6520746f> 107.28 145.44 C +<646566696e65207468652063656e746572696e6720666f722074686520646174612077697468207265737065637420746f2074686520636f6f7264696e6174652073797374656d202863656c6c2d63656e74657265642c> 72.24 158.88 C +<7665727465782d63656e74657265642c206f722074686520766172696f757320666f726d73206f6620666163652d63656e746572696e67292e2020497420686173206265656e206f6620677265617420636f6e6365726e20746f> 72.24 172.32 C +<666c7569642064796e616d6963732072657365617263686572732074686174206d6f7374206461746120666f726d61742073706563696669636174696f6e732028696e636c7564696e67204844462d534420616e64> 72.24 185.76 C +<4446534429206f7665726c6f6f6b207468697320617474726962757465207768696368207468657920636f6e736964657220612066756e64616d656e74616c20666561747572652e20204f6e652077617920746f20646f> 72.24 199.20 C +<7468697320697320746f2070726f76696465206f66667365747320696e20782c792c7a20746f20646566696e6520686f7720746865206461746120697320616c69676e656420746f2074686520677269642e2020546869732063616e206265> 72.24 212.64 C +<67656e6572616c697a656420746f2061726269747261727920636f6f7264696e6174652073797374656d7320736f206c6f6e6720617320746865206e65696768626f722d636f6e6e6563746976697479206973> 72.24 226.32 C +<756e69666f726d202877686963682073686f756c6420626520746865206361736520666f722073747275637475726564206772696473292e> 72.24 239.76 C +<46696e616c6c792c207468652061637475616c206461746120746861742069732073746f72656420746f206469736b206d7573742062652061626c6520746f2068616e646c6520766563746f7220616e64> 107.28 253.20 C +<70657268617073206576656e2074656e736f72206461746174797065732028766563746f72732061726520686967686572207072696f72697479207468616e2074656e736f7273292e20204f6e65206f6620746865> 72.24 266.64 C +<70726f626c656d7320776974682070726576696f75732067656e65726174696f6e73206f66204844462077617320746865206c61636b206f6620612073706563696669636174696f6e20666f72206465616c696e67> 72.24 280.08 C +<6578706c696369746c79207769746820766563746f7220646174612028666f72206578616d706c6520666c6f7720726174657320696e2074686520782c20792026207a20646972656374696f6e73292e2020536f6d65> 72.24 293.52 C +<70656f706c6520776f756c6420657870726573732074686520766563746f722061732033207365706172617465207363616c61722064617461736574732077686572656173206f746865727320776f756c64207061636b> 72.24 306.96 C +<74686520766563746f727320696e20612073696e676c65206461746173657420627920616464696e6720616e2065787472612064696d656e73696f6e20746f2069742e2020546865206c61636b206f662061207374616e64617264> 72.24 320.40 C +<6d6164652076697375616c697a6174696f6e2073797374656d732077686963682072656164204844462066696c657320766572792066726167696c65207768656e2069742063616d6520746f2072656164696e6720696e> 72.24 333.84 C +<64617461207468617420776173207772697474656e207769746820656974686572206f6620746865736520636f6e76656e74696f6e732e2020536f20766563746f72206c61796f7574206d7573742062652061> 72.24 347.28 C +<746f706c6576656c2066656174757265206f66207468652073706563696669636174696f6e2e> 72.24 360.72 C +<492070726f706f736520746861742077652073686f756c6420726570726573656e7420766563746f727320696e7465726e616c6c79206173207365706172617465207363616c6172206461746120617272617973> 107.28 374.16 C +<626f756e6420746f67657468657220696e20616e20484446352067726f75702e202049207468696e6b20746869732077696c6c20626520626574746572207468616e20616e20696e7465726c61636564> 72.24 387.60 C +<726570726573656e746174696f6e2077686572652074686520766563746f722069732065787072657373656420696e20612073696e676c65206461746173657420617320616e2065787472612064696d656e73696f6e20746f> 72.24 401.04 C +<7468652073746f7265642064617461206f72207573696e6720616e2048355420636f6d706f756e6420646174617479706520646566696e6974696f6e20626563617573652069742069732065617369657220616e64> 72.24 414.48 C +<6d6f726520656666696369656e7420746f20646f206761746865722d73636174746572206f7065726174696f6e73206f6e206461746120696e206d656d6f7279207468616e206f6e206469736b20287468696e6b> 72.24 427.92 C +<61626f757420686f7720746f20636f6e76657274206265747765656e20696e7465726c6163656420616e64206e6f6e2d696e7465726c616365642073746f726167652e20205468697320697320657373656e7469616c6c792061> 72.24 441.36 C +<726573747269637465642063617365206f662061206761746865722d73636174746572206f7065726174696f6e292e2020546869732073686f756c64206265206120706f696e74206f662064697363757373696f6e> 72.24 454.80 C +<686f77657665722e20204920646f6e2774206b6e6f77207768696368206c61796f757420776f756c64206265206d6f737420656666696369656e7420666f722072656164696e672f77726974696e67> 72.24 468.24 C +<616c74686f7567682049207375737065637420746865207363616c6172732d696e2d612d67726f7570206d6574686f64206d69676874206265206d6f737420656666696369656e743f> 72.24 481.68 C +ski{/Times-Bold fcd /Times-Bold-ISO8859-1 fdf}if +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<46454d2044617461> 72.24 509.04 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 510.24 t 72.24 510.96 lo 126.72 510.96 lo 126.72 510.24 lo cp f st gr +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<46696e69746520656c656d656e7420646174617365747320636f6e73697374206f6620616e206172726179206f6620636f6f7264696e617465206c6f636174696f6e732028706f696e74732f766572746963657329> 106.80 522.48 C +<616e642061206c697374206f662063656c6c7320776869636820646566696e652074686520636f6e6e6563746976697479206265747765656e20746865736520706f696e74732e20205468652063656c6c> 72.24 535.92 C +<636f6e6e656374697669747920696e666f726d6174696f6e20666f7220656163682063656c6c20697320757375616c6c7920657870726573736564206173206120736574206f6620696e646963657320696e746f20746865> 72.24 549.36 C +<6172726179206f6620706f696e747320286f6e6520696e746567657220696e6465782070657220766572746578206f66207468652063656c6c292e20205468652063656c6c7320617265206f66207365766572616c> 72.24 562.80 C +<66756e64616d656e74616c207479706573207769746820646966666572656e74206e756d62657273206f6620636f6e6e656374697669747920656c656d656e747320666f72206561636820747970652e> 72.24 576.24 C +<486f77657665722c207468657265206d75737420626520737570706f727420666f7220646566696e696e67206172626974726172792063656c6c2074797065732073696e6365206e6f626f64792063616e206b6e6f77> 72.24 589.92 C +<612d7072696f72692077686174206b696e6473206f6620636f6e6e656374697669747920736369656e7469737473206d7920636f6d65207570207769746820696e20746865206675747572652e> 72.24 603.36 C +<536f2046454d2064617461736574732020636f6e73697374207072696d6172696c79206f6620616e206172726179206f6620706879736963616c20636f6f7264696e61746573> 108.00 691.92 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np + 112.08 617.28 t 112.08 654.24 lo 371.76 654.24 lo 371.76 617.28 lo +cp clip np +gs +0.7527 0.7494 sl +148.9048 823.7124 tl +345 49 8 [1 0 0 1 0 1] +/datastr 345 string def +/pp 1 string def +/s 1 string def +/rn{currentfile s readhexstring{0 get}{pop exit}ifelse}def +/unpack{ + /DC 0 def + /BC 0 def{ + DC datastr length ge{exit}if + rn + /BC exch def + BC 127 le{ + /BC BC 1 add def + DC 1 DC BC add 1 sub{ + datastr exch rn put + }for + }{ + /BC BC 126 sub def + rn + /pp exch def + DC 1 DC BC add 1 sub{ + datastr exch pp put + }for + } ifelse + /DC DC BC add def + }loop + datastr +}bdf +{unpack} bind +image +80fe05f8f6fef9fefc80fe02f1fefd80fe09f8fef8fefdfef8fef6fa80fe00e680fe02edfefa80fe03fcf9fefb80fe02f8fef380fc00fb80fe06fcf7fefcfef7fa8efe0dfcfbfefafef5fefbfeeffefbfef981fe04fbfef9fef781fe01fcfe80f608fef9fef5fefcfdfefc88fe05fbfef7fef9fe80fd04fcfafef7fe80fd07fbfef7feeffef6fb81fe01f9fc81fe00f880fe04fdfefcfef780fe0cedfbfeedf9fef7fdfcfdfcf9f781fe00fd81fc01fefb80fe05f7feeffef6fb80fe00f880fe0bfcfbfefcfefdfef7fef6fef980fe06fbfef2fef5fefb80fd05fef7fefafcf780fe00fa80fe00f580fe06fafefcfdfafef680fe05fbfefbf3fef580fe04f8fdf6feef81fe03faf7fef780fd0afef1fefbfef8fef3f4fcf580fe1bf8fefaf5fef7fdfefcf9f4f6fef8fefaeafefdfefaf8fef3fefcfafe80fb80fe80fb03fef8fefb80fe04ebfefaf0fd80fe00fd80fa81fe01fcf581fe06f9fdfcfdfcf9f781fe +01f9ef82fe02f6fefc80fe08f5fefbf1fefafeeef080fe00f381fe03e9fefaf181fe07effef7feeefef6fb81fe00f480fe03effefbf880fe00ee91fe02edfefc80fe00ef82fe00ed83fe05f1fdfef9fef580fe00e482fe00fa81fe02f3fcee80fe00f986fe00ef80fe06f4fefcfefbfef180fe02f3fef581fe06f8fef9fcfee7f481fe01f7f880fe04faf5fef7f680fe00ed81fe05ebfef8f7fdf880fe00f880fe80f207f6fef3feeff4feee80fe0ef8fef9fcfee7f9fefbfef6fefaf6f781fe00e882fe00ec83fe04fafef5fef380fe06f1fefbfef7f8fc80fe02f4fef680fe02f8fdfe80fa02f5fef280fe04f2fef5fefc80fe00fa80fe01f7f081fe03fdf6fef981fe04fdf1fefafd80fe07f2f9fbfef5fefbf580fe00e781fe02faf6fb80fe00f080fe01fbfc80fe01edf988fe00df80fe00f380fe00fb80fe02fde8fa80fe04f6f2fef9fe80f302fdfef880fe00f880fe80f200fe +81fe00dc80fe00f180fe01f7fc80fe00fa81fe80fc00fe80fd80fe01eff880fe0aeef8fefbeffef8fef6fef780fe02f5fef480fe02effef282fe02fbfef38efe80f702fefdeb80fe0cfdf8f0fef6f8fef9feecfef5fb81fe01faf380fe05fafef1fef6ec83fe00fa88fe00f480fe07f2fcfafef3fef2f782fe00f580fe01fcf282fe02faf2f880fe03fdf8fef180fe09fbfcf0fef3fef3fef3fa81fe05f3fef1fef6fc81fe00f880fe00fd80fe00f580fe01fcf281fe00f880fe00f580fe00fb80fe02f0fef580fe04e6fef5fef480fe02f0fbfc82fe11f7f2fef3fefdfbfefbf2fef9faf6fef1feea81fe00e980fe05f0fcfef9fef880fe01f8f983fe00dd80fe00f080fe02f4f2f480fe00ed80fe05e0fcfefbfefa80fe03e9fef1f680fe02f8f9fb80fe00e780fe05fbf8fef7f2fc80fe01f9fe80f880fe80f882fe07f7fefdeafdf6fefa81fe00f680fe02fbfef181fe09f6fef3fef1fef6fcfefc +0cf6faf3fef1fefcf3f7fcf6feea80fe03eff3fef381fe01f6f181fe00f780fe05f8f7f2fefcf180fe0ef6f2fbfef9fcfee6fef0fafef0fcef91fe00f680fe03fafcf9fa81fe80fc0afefcfefafefbfee4fafef380fe80f700f180fe00f480fe02fcfedf80fe00f787fe02ecfee680fe02f9fef780fe19fdfcfeeafaf8fef4fef1fefadffaf4f8fafefcf9f2fef4fef1fc80fe00fb80fe02fdfbf380fe0af1f9fef6f4fef2fefbf0f680fe03f9fefced80fe0ef4fef1fefadffafef1f8f5f9f0f8fd80fe03f6f5fef681fe01fcfe80fa08fef6fef8faeafefcfd81fe00ef80fe07fbfef7fefdfeefee80fe04ecfefcfefb81fe81f180fe00f180fe0ae1fef4fbf5fef0fefcf4f082fe03eefef0f181fe03f8ecfefc80fe00f880fe07f2fef2faf8e9fef981fe02eefefc81fe02effef480fe80f480fe05f4f7fef9fefa83fe04ecfef3fef880fe00ea81fe01f1ef80fe07f6f4fef2fefbf0fe +80fe00f780fe01edfb82fe03eefcfee180fe04e6fef9faf681fe05f0f5fefcfaf680fe04f2f4fef5f383fe07fbecfcfefbfef6fd81fe00ef8ffe02faedef80fe07f1fbf3f4fbf9f5f480fe02f8fee781fe00f180fe01fdf680fe05f7fafef9feec80fe03f1fcfefa86fe00f980fe00ef80fe06fbfefdedfef6e780fe03f8fef0f982fe01f7fa80fe03f7fbfefa83fe05fcecfef7fefa80fe04fafefbfeec81fe08f2f7fef8fef5fee9f780fe03f7fef0f982fe01f7ed81fe05edfef7fdf4f380fe00ea80fe02f2fef280fe04f9f6fee9f880fe08e7f6feedfdf0fef6f481fe02eefef680fe01f9f680fe06fcfbf7fee8fef981fe03f4fef5f882fe00f880fe01ebfb80fe04eef1fef3f982fe01f8f180fe02f5fef080fe03fafbfefb82fe03f7fcfeec82fe03f5f8fef780fe80fc80fe80fc81fe06f3fef2fefdf9f680fe09f7fefdfef6f9fee8fef580fe01f9ec81fe04f2f7fef8fe +0afcfef9effefbfefcebfef480fe03f1fe010081fe05f5fef9f2000282fe02f8faf480fe020006fe800002f3fefa81fe07eafef6f4fef4fefa93fe00f2800003fef7fef980fe060600f1fef5fef483fe04f9fef8f5fe80f680fe01070380fe02f1fefb87fe06e8fefcfefdfef880fe00f181fe08fafefafef7feeafefd800000d980fe08fcfefbf60500fefbf981fe07fafe0004fcf4fef580fe07f9edfefdf8fe020080fe02fdfef980fa0dfef7feeafefd0005fef0eefef3fb80fe02f9fee680fe08fdfefbfeeefefdfefb80fe00fa81fe00f180fe00fb83fe01f5fe80fa03fef6fef982fe1ff8fe0100feebfcfa0005fbfefdf2fbfefaf0fefafefdfcfdfef1fe0600fefdef80fe00f980fe00f581fe00fc80fe0fecf6f7f2f30a00f3fef7faebfefafef781fe80fc80fe80fc80fe00f780fe0a0104fef8fafcf7fef9fefd80fe01fdfe800002fefcfa80fe06f9edfefdf8fefc +0cfef2fef9fdfef2fef9fef3ecf281fe05f3fcf7f4fef780fe0a0800f1f9f1fefbfcfee4fe800082fe02fbfef781fe00f780fe00ed80fe02f7fef58efe0bf9fbfcfe0005fbf3f7fee9f780fe00f680fc08fef5f9fef2fef0fbf780fe04fcfef5fefc800004fcfeebfef686fe01fdfb80fe07f2fef7fefdf4fef680fe03f8f1fef281fe80f501000d80fe01f2f581fe01000180fe02fbfef581fe800081fe0efbfde9fef1fbfef6fe0300feedfef781fe00f281fe80f5800081fe01f2f680fe11f8fefbfefcfbf9f3fcf7fefcf8f9eff8f1f880fe08f6fef4fdfeecf8faf280fe00f380fe03fbfef9fe80fa0df9effefdf7fefdfef7fb1500feed81fe05f2fefafcfef280fe05f6f1fef4fef681fe0bf4fbfefcfefcfef0fefcfeea81fe01fcfe800080fe00fc80fe06effef5f6fef1fb80fe80fb80fe07fbfefafefa0006f682fe01fafe80fd00f580f40cfe0700fef9fefde9fef1fbfef680fe +04fef2fe00f9800513f8fefc000110edfe0007fd01fe0002f9fe00090082fe0ef9fef6fd0105f30800f908f20500f580fe03001100f380fe00f792fe01dd08800003fe00fa0c81000afef7000500fef803fd040080fe0af20d00fe00fb0003f6fb05800087fe09f9fd0005fb00f90200fe80000dfef50c000ffaf7fd01020300fef680fe1ef3f9fe000100fafe020005fafe000a00fe00fe0100fe000800f5fe0005000b80fe00f780000a0ffaf7fd01020308fb00fe800003fb00070080fe0e00f50c00fef8f7feef01fe000cf5fe80001bfe0002f408fa0a00fe000b00fefd00fe0200fe0014eff90700fefd0280001103fcfafef9fef2fe00f90305f9f704fe000b800001fafe8000130cf0fe00fe0300fe0001fefbfef8fef40006020080fe07fc0e0007fbf8070080fe800080fe80000d05fefa00020009f7fdfe000609e780fe0f00020400fd04f60100fe000800f5fe00 +02fee7fe800009fe0002f70204f30608ec800008fe0005fe000ff9030080fe06fcf6fef7fef9f8800000fc80000ff6000bf60802f10906f90800fbecfef48efe07fbfee5fa0007e2fe80000a04f70d00ee05f4fe0b00fe800012fe0206fe0200f80600f30a00f4000feb060bec80fe14f1f9fef8fdfc0600fe0300fe0004fb0e00f904f0fe800006f5020bee0a00f980fe07fbfdf9fe0c00fdfe800007fe0100fe0200f8fe810003fe03f8fe800003fe0010f8800206f80f00fe0001fe800003fe0006fe810000fe800000fe800003fe000af880002cfef2fefd0014f4000deb0204f20300fe001600fa07effe0003fa0400fe0002f6000bf60802f10904fc0004f7fd81fe01eafe80000dfe0005f5080100fb0a00fc0010f0800300f9800006f01100f01501f181fe03fc0100fe80001ff21000f70700fefc00060006fefa04f6f9000bfe0003fd0306fa0004fe0004f8800003fe0400fe80000801f00e00fa0001fb01 +02f1fef3800003f4fe00fb800000fa80000dfe0700f50b00fe1000fa060af8ed80fe04e8fef3f9fe800000fe800000fe800000fe800000fe80000007800092fe03fdf1eced80000afcf3000aeefd000aede80280000402fe000dfe800001fa0080fe800006f90900fc03000a800002fef6ec84fe0d00feed0500f80f00fb0006fefa1180000207fe0080fe04000af8f3f880fe01fcfd80001efcfe08000f0009f70008fee50810fcfbec0a0c0007f90800fd0500f7050706800006f20bfafe0300fe800080fe0b0401f00b02fe0900f80705ec80fe02ed030080fe0100fe800000fe800006f80200fefdfe01810000fe800003fe0006fe800000fe800005fe00fefc000380fe80f904effeee020580fe0300fe000780fe01070080fe80000505f5fe0700fe800000fe800004fef8f3fcfe800000fe800003fe000a02800002fef7fe800005fefdedfc030c800003f30b00fe800001f11a8000030900fe0080fe80000bfe0001fbfe0004fe0009fa00 +08fdf2fe0004fefc04f7800000fe800009fe0001fa0008fc000ff9800002fdfee683fe06f80703fe0007f7800000fe800000fe800082fe01f8eb8ffe05fafef4fc070080fe030800f7fe80000dfe0001fe0e00ee0600e50013e60480fe070010fe0400ec010580fe00fb81fe80f780fe02f7fe0080fe020014fe800000fe800000fe800000fe800005fe00f9fe0a0081fe01fdf280fe1d0907fef20306ebfef9fe0005eafe0a00fcfe0d00fc0507fb0300fe0001fe800006f3fef5fe00f5fa80001ffe0006f8fe0005fe1000ec0a00f70400fefafdfe0500faf900fe0009f60005fe80000dfefd0012fe0005f00c00e60600f7800000fe800008fe00f1fe0800fef8ee80fe01f3fe800080fe0b0af30b00fedb0007f3f6fcfe80000afe0300fd0c00fb0100fefd80fe06fa0601fe0004fe800080fe80f702fd060180001bfefd0006f11509f60009f70600fe0002f9feebfe00fef11000f7000280fe800004fe0003fd00 +02fefcf5800009ee0302fe060fdf0301fd800000fa800000fb800000fe800008fefafeeefeeefef5ed800000fb800000fe800006fd0001f10c02fe800000f680fe00fc8ffe06f5fefb0005feee800080fe800003fe0200f4800003fe0003f7800009f90b00f51600fe0004fe800000fa800000f180f71cfef9fcf4fefd0500fe1400ef0608f80906eb0a02f11100fe0900ee000a80fe00f581fe00ed800012fcfe0800fe000bf6000bf6fe000dfef50006fd800012f70600f50006fe000afe000ef80605fd0d00fe800004feef0600f8800025fe000ff00003fbfef1fb0009f1000ffafe00010a00f60004f8fe0500f40a00fe0003fe1100fe800009fd0001f10c00fe000beb80fe06f2fbfafe0d00ed800004fc0e00f5fe800006fd0700f41100fe800000e9800400f4800000f980fe01f7ef800000fd800003f20800fe800000fe800007fefc0d00fe0200fe800006fe1200f8010ef0800006fe000af50300fe800000fe800008feee0013f60800f900 +80f70ffe000b0203f9f2ec000700fef20500fe800004fd0803e6fe800081fe12eefee6fcfe0800fb1100f70014ef0700f8fa06800080fe02f0feea8efe02eefeef80fe800002fe000b80f1060001f6fc0a00fe8000061000fe0700fefb800009060cfe0008f3fe000f0081fe08f1f2fefafef3fef6028000000780fe800001fe0080fe0a0011e01600fa00090705d781fe08f3fefdfe040ef3fa04800005f6feec0109f8800007f8fcfe0d00f90b0c800004fe0203eefe810080fe00fa82000afe0001fcfef4000701fefc800000fe800000f280fe02fd0005800700eb80fe06f60500f2fe100080fe04fc0009ee1180000105fa800008f70014ef0700f8fa0480000302fef8f582fe81001a05fef40001fef60100f7ec0a0400fbfe0002fe0005fb0800f5fee680fe060800fe1500fefc8000060dfdfe000ffbf6800080fe800000fd81000109fe800080fe810080fe05fd01080014fa800000f880fe810080fe0000 +80fe04f60008fdf280fe00fc81fe08e5fdfef8fefaf1fef480fe00ed80fe04f3fdf4f3f480fe0ad7fdfef4f1fdf3fef1fbfa81fe01f7f980fe02f2fef692fe00f381fe00ed80fe00e880fe00f380fe06f3feeeeafefafc80fe04f3fefdf5fe800080fe08f1fdfbfefafef6feeb80fe05f9fef6fbfef080fe800084fe00e880fe02f6fef681fe00fa81fe03f9f3fefb80fe03fafef3f881fe06f6fdf8effef9fd81fe16f0fef7fef9f2fefbfef4fef2fef3f8fef4f5f9fafcfefd81fe01fde780fe01f9ed80fe00f381fe05f5feeffef3fe800005fef7fefbeefe800001fef780fe01faec80fe05eefefbfefbf181fe04f3fef1fbfa81fe01fdfb80fe00f880f90afef6fef50014fef0f4fef980fe00ed84fe01f9f180fa05feeafee9fef580fe00f980fe00da80fe0ef8f5fefaeafef5f9feddfef4f7fef580fe00ee80fe02f7fef680fe1afcfef7feeeeffefae6fefbfef0faecf7fef7fcfbf4fef8f5fef1fe +05f8eefe1100fb80fe03f0f7fee881fe05f6f9f0fef2fa80fe08edfefbf0f1fef3f2fe80f604fefcf8feed80fe00f580fe0bf5fdf4f1fef6fef1fef6fefc8efe09fcf5f6fee8fef7fef7f180fe00ea80fe03f5fefbc480fe07f2fee9fefbf4fa01800001feed82fe00f683fe06f2fbfee9fef8f580fe07fc0400fbf4fef7fc80fe04f4f9fafefb80fe04f1fdfbf2f082fe02f5fcf782fe00ed83fe06f5fef6eefaf8ed80fe08f5fefdfafef6fe0bf381fe00ee80fe00f680fe08f5f2f9fafefcfeedf180fe00ed81fe03fbfafdf881fe0ef90002fafdfefbf60209feeff7fef481fe00e780fe00f181fe01f2f880fe00f580fe11f5fdf4f1fcf6fdf8fcfef4fcfeeffe0900fd80fe80fb01fef180fe04f7f2feeff682fe00f880fe13f9fefbfaf6f2f5f8fefcf8fef0fef6fefcf8fef282fe07f7fee3fefbfcfee880fe01f7fe80f501000780fe0eecfefdfaf4f7fdfefbfeedfef7fef581fe02e8fefb +80fe03ecfef9fe81fb00fd80fe02f3fef680fe02f4fef680fe00f280fe09f6f3ddfdf2e6f9fdfefb80fe03f5fef6f780fe00f080fe04f4fefcfef080fe01fcf68ffe03f7fef5f280fe00f981fe03fdf6fefb80fe09f7fe9cf3fcfef0fef6fa80fe00fd80fe02f9feed80fe00f880fb80fe00fa83fe00f680fe8200061300060006000280000102fc80fe02e9fef881fe03f4fef6f280fe0ffafef2fefdf6fef3fefaf9f7fbfafefd81fe0becfefaf4fefaf5fe030009fe80f905fefcf3fefbe981fe03fbfef8f980fe10f7fefdfef7f8fefdfbfef7fefafdfafef980fd0afef8feeefefafefcfdfef680fe03f6f8fef280fe00fc80fe00f780fe00f080fe09f4fefafefcfdfef9fefc80fe05f5fef6fef7fd80fe04effef8fdfc82fe08fdf1fef3fefaf2fef980fe04f9fefafefc80fe06f8fef6fdfefdf480fe01f7fb80fc00f780fe01effe80f80afe03000700070304fbfef680fe80fb80fe0cf5fafbfef4fdfef8fef7fdfef780fe +cefe0ef6fef3f7fef3fafef9624f45fefbf999fe0d00fef9fefcfef5feeffef9fef00c86000601000800fdfef38ffe04f5fdfefcfa80fe04fdf8fe00fe800003feeffef580fe02f3fef490fe00f481fe05f6fefdf9f7fb80fe01f1f880fe02f6fefa80fe01fafd9ffe0cf3fefcf5fdf8fefbfef7f9feee81fe00f581fe00f288fe0bf8fef9fbf8feeefefcfefafe80fb000780000104f280fe01f50180020200fef580fe04f1fefcfef582fe00fc87fe +cefe00f684fe07fb2f25fe3aecfef297fe06f1fe00fefdfef681fe00ee80fe02fafef086fe00fa80fe000093fe12eff8fefdf8fef7fef600fe010200fef4fef2f881fe00f98ffe00f181fe01f7f081fe810002fefaf880fe03e7fef1f8a0fe04f3fefafefc80fe0df1f8edf3fef4fef7fb001ceafcf980fc87fe03fbf3fe0081fe01f7fe80000009800002fef9fa83fe0c00fdfe000af3fef3f2feedfefb81fe00fb88fe +cffe07edfef5fee8f3fd1680fe030816fbf998fe08f500effafefdfef7fd82fe01f2fe86fc04fef500fef280fe00f58efe00ec80fe06f2feeffef9fe0080fe0200f30082fe04f8fef3fefc8efe00fd80fe01f5fb82fe0efa13000408eefefbf6f9fefbf0fef19ffe07f8fef5f9f6f5fefa80fe00e880fe03f7001a0080fe03f7fef3fa88fe0100028200000981fe02fafefb80fc01fee381fe0600fef1fe0008f380fe00f580fe01faed80fe00f788fe +cefe03fbf7fef280fe06fd10fef4f8fe0280fe00f096fe08f2f80efef7fef6fefa80fe04eafafef4f888fe040bf9fef5f790fe03f2fafef381fe0500f4fef20bfe800000f181fe02f4fef88ffe00fd81fe01f2f580fe03f604000d8000080afdf7fef5f6fbfefd9ffe03f1fef2eb81fe0fedfdfeeafdfe000102e409fef7f8fef789fe02ec000d81fe01f6fe80f101fef580fe00ed81fe0df6f911fcfeeafe0700f8fdfef2ef81fe01f8f388fe +cefe00f581fe0afae40800feecfef9f600f298fe03f301faf480fe01fdfe80fb02fefcfa88fe07f8fe00f3fef8fefd8ffe0ffcfef5f2fef904f4fef8fe00f2fe00fe81f880fe00f690fe01f0ef82fe03f4fe00fe80000608fe0001f9fefa80fe01f7f19efe06faf5fbfefafefd80fe80fd03fe00070080fe0100fc80fe01fafb87fe08f8f0fe07f803eaf7fa83fe00f380fe04ebfef6fe0080f481fe09fbfe00fef3fefbfcfefb80fe00fd87fe +cffe06fafef6f4fe00fa80fe05f0fafe0103fc96fe06f3fe00fefdfef880fe01faf980fe02f1feef86fc03f809fef980fe01f5f48efe02f7fceb80fe07f20500feecf1fb0c81fe0100f380fe00f080fe00f78efe00f980fe05f8f4feeefe0280f90400fe00effe800080fe00f8a1fe00fc80fe0eecfee7fdf3fef301000500fef0fe0081fe02f5fef586fe03f6fefa0080fe01000d80fe08e7fbfef8fefafbf4fb80fe0106fa80fe0bf2eef7fbfd0afee6fef5fef680fe00f987fe +cffe00e680fe01fb0080fe05f1fef8fef6fb800097fe000080fe80f401fef180fe02f8f5f980fe00fc87fe0500fbfefafbfa8ffe00fd81fe03e8fe00fb82fe000080fe08eafe01f2fef8effefc91fe14f6fef70002fef9fe02fb0806e2fc180002fefbfdf49ffe01fcfb80fe01edfe80000b0dfe0200f2f8fefd00f9f6f880fe00fa87fe05f8fe00fef6fe800000f580fe05f1fef9f7fefc80fe04f508fee8f883fe03e80914e880fe02f8f7ef88fe +cefe06f7fefcfe00fef080fe00fd80fe00fa80fe000096fe03fb07f5f980fe02fbfef380fe00fa80fe00f287fe05f806fcfbf9fe80fa8ffe01f8f380fe000080fe0aeffef1fe0af6e9fef9020381fe00f490fe00f380fe07f9fe0bf9f6fefb0080fe060009feebfe0001a1fe00fb80fe02f6fdfe800004fef900fefa80fe02f8fe0282fe01fafc86fe00f580fe0200fef181fe01050080fe08fbf8fefcfef7fdf80081fe05f6feedfef410800002fefaf480fe00f088fe +86fe00fc80fe00fc80fe00f487fe06fafeeafdfef6fe97fd01fef480fe02f2fef387fe02f9fdf380fe00f780fe02fafef980000cfefdfef5feeffef9fef00c00f481fe02f6fef98ffe0400fdfefafe80fd8ffe0400fdfefafe80fd88fe04fcfefdfef180fe0ef8fef80003f0fefbf8fefa00fafefd80fe01f30480fe05f1fefbf8fdf880fe05f8fef3fef9f480fe01fdfc80fe0ffafefc00fcfbf1fef80401000700080081fe040001f5fef880fe00ed80fe00f88ffe05f1fefafefaf380fe04f8f607000380fe020300f480fe08f9fef6fe00fdfefafe80fd86fe04fdfefa02fc81fe07fafd0306ecfefdfa80fe03fafe00fb80fe06f9fefbf707020090fe +86fe02f8fce580fe02fafef48afe03fdf6f9fb96fe03fceef7fd8efe0be3fdfefdfee20604fef7fef380fe00ee80fe09fafef00901fef2f5fede90fe0400fdfefafe80fd8ffe0400fdfefafe80fd86fe00fc80fe04fdfef4fef680fe05f70300fafeef80fe0debfe03fef5fefcf5fdfe00fefbf180fe03fbfef7f080fe01fced81fe08effef9fef5fafe00fc81fe01ea0d800004fef500fe07800006f9fe00feebfef381fe00ee92fe03ebf1fef980fe07000806fdfcfef40080fe01f3f282fe0400fdfefafe80fd86fe04fdfefa02fc83fe06f10700fef1fef380fe0cf500fcfef4fbfe0010e7f600f88ffe +89fe04fd0102fbfd86fe06f8fbfef3fbfefb99fe00f780fe02fdfef287fe01f7ef80fe07fbf9f6fe0003fef081fe01f7fd82fe05f2fef700fefa81fe00fd8ffe0400fdfefafe80fd8ffe0400fdfefafe80fd86fe03faf6fdfe80fd80fe03fafd050080fe06f0fef3fdfefb0080fe06f5fefbfef60e0080fe00ec80fe00fd80fe00fb82fe00e681fe07fcf8fef806eefcfb80000201fc0380fe00f680fe0ef9fe02000ef400f7feecfef4fbfef88efe02fafbf180fe01f503820080fe04ebfd06feef80fe02fdfce980fe0400fdfefafe80fd86fe04fdfefa02fc82fe00f880fe80000bfefafef3fef900fe0003000b80fd80fe000090fe +86fe06f8fcf9000107ea89fe00fd81fe01f4fd99fe01fcf589fe05fcfefbf8fef380fe800006f9fefafef6fefa80fe0beafafef4f8fe0609fef3f7e690fe0400fdfefafe80fd8ffe0400fdfefafe80fd87fe07fcfef5f0fefafcfe800002fefdfa80f80cfef6fcfd02fbf2fefbfef5edfc800080fe02f9fefc80fe00ed80fe00ed80fe03fcf6f9fa80fe0f0005fe000900fefafe00fef5f6fef6fe80fd04f40012f70180fe00e780fe01fcf88ffe00f880fe010005810004fefceefe0f810002fefaf381fe06f3fe00fdfefafe80fd86fe04fdfefa02fc81fe0af3fef9fcfe000cfafef2fe81000507fef8eefef580fe000090fe +86fe03f4fef605800088fe04eefeeffef381fe96fa04fee5fef1fe80f800fa87fe00f980fe0ceffef4fb00fef5f9feeefef8fe80fb02fefcfa80fe07f5fb00fefbf9fef38ffe0400fdfefafe80fd8ffe0400fdfefafe80fd86fe01f9fb80fe0cf6fef2fe000afbf6fefafefcf181fe06ea00fef9feeaf981fe100102f1fef7fef7fefcfefbfef4f0fcfef380fe830080fe00f780fe0105f980fe00f180fe00f380fe01f9f7820003fefcfbf28ffe04fdfcfd030780001609f6fbeefe0100fef70800fcfee8f6fef5fe00fdfefafe80fd86fe04fdfefa02fc81fe05fdfef3fef5fb83000115fa80fe00f281fe04faf7f208fb8ffe +87fe06e9f61900fcfaf187fe06dbfef1fe0007009602060024000e00fef887fe09f4fefceefef00800fefc80fe02f6fdf680fe01faf980fe03f1feeff680fe000081fe00f98ffe0400fdfefafe80fd8ffe0400fdfefafe80fd87fe05f5fcf0fef6fe800008fefdf2feecfdf9feed80fe010011800002020514820006040cfefbf9fef680fe02fdfef880fe06fcfefc000d070080fe08e2fefbfefb00fef3fa80fe0bedfeefe5fef8fe05040cfef480fe00fd90fe01e9fb800007fe00fe001900fee680fe01f303800080fe00f580fe0400fdfefafe80fd86fe04fdfefa02fc82fe07fcfef3fcfe0ffeee80fe0300f8feef80fe00ec82fe0109f78ffe +86fe00f580fe800080fe00fb86fe00ea82fe02f0fcfd96fc07fef2f5f4f6fefcfb87fe0afdf1fefb0005f9fafef9ed80fe00f481fe02f8f5f980fe07fcfee8fdfa01f9fa90fe0400fdfefafe80fd8ffe0400fdfefafe80fd87fe80fb0afef1fb000200100002050e80000a06000a00f000fef5fef6ed81fe0002800080fe00f280fe00f380fe00ec80fe00ed80fe04000200fedd80fe00f980fe0afbfe00e1f9fefbfafefdf880fe07f8f4f6fb000400f390fe00f880fe000080fe06f2000300f8fee880fe03f8fefcfe800001fef480fe0400fdfefafe80fd86fe04fdfefa02fc81fe02f2feee80fe06f805f4feecfe0081fe07f6fef5fefbf2fe0090fe +86fe03fdfefcf780fe00f388fe02fcfeee80fe01fcfb96fe05f7fefbfef7fb88fe00f880fe06f9fe02f1fefcf980fe04effefdfaf380fe00fa80fe03f2fef8fb80fe800001fefa8ffe0400fdfefafe80fd8ffe0400fdfefafe80fd87fe02f8fef480fe0cf3030bebfefbfef1fefcf7fef280fe000080fe00ee80fe03f3fef90081fe04f8fef3fef280fe12f8fcfef9030005fefdeffeeff6fefdfefbfc0080fe00f883fe02fbfaf881fe05fc000201fef28ffe020002fe8000020d00f980fe0af7fef2fefbfeedfdfe000180fc05fe00fdfefafe80fd86fe04fdfefa02fc82fe00f580fe80fa0400fef4fe0080fe05f2fdfef7fefa80fe0107f790fe +c6fe80fc02fef1088000000480000212000f800080fe0df7fdfefdf6fefcfaf8fefdfe00068ffe04f605faf6fa80fe00f68efd07fe00fef7fcfdfefb8efe03fc0100f880fd03fefdfaf481fe0200fcfd81fe03eafe00f78afe06eefe00f1fefcf980fe12effefdfaf3fef300fef7f4fefdfefbfcf9fef583fe02fd000188fe04fafbfafef680fe12000e000d0beefc02f7fef6fbfef6fefbf2fef181fe090400fe09f7fbfef8fef486fe08f8fefc00fefcf8fef980fe03fafef50080fc05fb15eafefdfa80fe00f880fe03f303fef88ffe +c6fe00fa81fe800082fe02dffef180fe80000007800002030f0080fe04f9eefdf8fe80008efe06080af4fefcf5f490fe0508fefbfdfefa90fe05f70100fef7f680fe05f5fcfef400fb80fe03fbf6060380fe00f786fe01fcf780fe070003fef4fafef9ed80fe00f480fe03e9fe00f080fe05f4feeef8fef880fe08f9fef5fcfefafe000486fe01f8fb80fe02edfef2810005fee8fbfdfe0081fe01f6f580fe08f9feeefeeff6fdfe03800001fef98cfe03f209fefb82fe14ecfdfe00fef4000200fafefcfef9fcfefdf1fe03fd90fe +c7fe02fcfef380fe04effbf6fefc80fe01f8fc81fe09f7f8fefb000800110306800080078efe000080fe00ec81fe00f28efe06f405f9fbf9fef78ffe00fb80fe07f00f00fef2fbfef980fe0209f3f581fe020ffbf289fe02f4fefc80fe03000dfefc80fe02f6fdf681fe0702f9fee8fbfefcfe80f70bedfbfdfef8fefbf0fef40d0088fe00ed80fe04f000080bf080fe05faf8fa01fcec80fe04faf9f7fee883fe09f2fe03000100f5f1fef687fe03e9fe02e280fe06edfefcfefdfa0a80000f0df8060cebf2fefdfefafcfef300fefa8ffe +c7fe00f180fe80f903fefdfeeb80fe05f4fefbf5fcf780fe0bf3fefbf3fcebfdf7fef4fef98efe0102f680fe02f8fcf090fe0200f8fc80fe01f5fd8efe06f9f3f1fef5030080fe04eafef2fe0080fe06f0fe03faf8feed88fe00f380fe02fdfef280000afef5f9feeefef8f5ea10fd81fe01f4ed80fe00f980fe00f782fe00f6800000f087fe02effefa8000030704f4f180fe04fcfef7fe0080fe01f3f980fe01fcfd80fe00ee80fe03f4fefdfe8000000680fe00f887fe00f780fe0800f9fef1fee9fe0b00800180fe04f3fef9001180fe00f780fe00e880fe0103fb90fe +c6fe02f3fee580fe02eafef580fe00f780fe01f6f884fe00e681fe05f1fefaf4feeb8ffe0300fef8f180fe01fbfe8efa01fd0080fe02f9fef592fe02f4fcfe800000fa81fe06f70019f4fe08f582fe00fd86fe05eef8fefdf1ed80fe800004f9fefafef680fe01f90080fe01f7f980fe01e9fb80fe09f7f9fdf5f20003fef7f888fe80fb0004800081fe08fbfef7fdfef9fe00ed80fe06fbf5fefcf1f4fe80f680fe04fb0008fef481fe00fa86fe03f9fde20e82000d1103fbf8ec04f8fafefdf4fb000281fe06eefefd00fcfbf58ffe +cafe1afbfeecfefdf7fef4f2fefcfefbf8fbf1f6fefdfafcfefbfafee3fc8ffe0704000c0f001400098e0204f514f2edf691fe02ebfef480fe01fcfe800002fafef180fe0207fe0e80fe04eef7eafefb88fe00f881fe06f8f7fe0003fef083fe0507f4fef8fefd81fe06f8f4feecfe150080fe00f280fe00ea86fe05f2fdfbfe000280fe08f5fef8f5fef4fef30080fe00f081fe03f5fdfee880fe02fc000380fe01eef981fe00f386fe0a0500090300fef7f2f1fbf580fe000080fe04faf5feeefe810004fef4fee20092fe +c6fe06f0fcfafcf8fef681fe00f380fe04f1fbf9fee980fe08f7fef3feeffefbf6f780fe00fd8efe07fcfef9f6f2fef9fe8efc020102ee80fe02f4f1fb8ffe00f980fe07e2f4fef9fe0009fb80fe0411363efafd81fe00f087fe0ff7fdfefafef9fef9fee20604fef7fef380f7000080fe00f982fe00ef80fe01fb0a800001f8fb80fe01f8fb87fe04fcfbfeecfe800080fe03f8fdfef980fc03fe00fbfa80fe06f4fafef3f8fef8800003fefdfef080fe00e589fe00fc80fe0200fef981fe0afafef6fa00feeef2fef6fb80fe08f6fe0012fafe13e6f290fe +c7fe00f680fe02f8fcfe80f680fe00f781fe00fb81fe01f5f783fe00fa81fe01fcfd90fe04f5fefcfef790fe03f7fefbf091fe02f6fef180fe12f7fafbf3fe06040ef92f38fdf5fef9f6fcfef189fe02f4fef880fe02fafef9800001fefd80fe05ef0bf9f7fbfe80fc80fe03f200050082fe04f9fcf0fef487fe0af6f3fef8fe0c00fafefaf880fe03f5fc05f880fe00f583fe0d0004fef8fefcf9fef9f7fef3fefa86fe01f3fe800005fcfef9f8fef980fe0200fef680fe00f480fe80fc80fb00fe820092fe +fefeaffe00f180fe03161a445b82fe03fcfbfcfd8ffe03fbf6fafe80000efef6fe00f5fefcfefaf8f9040601f998fe030100f8fd81fe00f2800005fefdf1fef9fe800002fefdf680fe00fb8efe06f8fe070008feec81fe04fcfb00fbf780fe01fcfa80fe03f7fefaf981fe800001fef58ffe +fefeaefe00f180fe05f3fef64b5efb81fe02fcfafd8ffe00ef81fe03effe000480fe000080fe00ef80fe02f8190081fe00ec98fe050007f9fef4e280fe0100f781fe0005800001feed80fe01fbfc91fe0700fe0001fefcf6f880fe000080fe07fdfeecfeeaf5f8fa80fe05f8080007fbfc90fe +fefeaffe01eeef81fe04fb8ab5cdee81fe01fcfa8ffe0beffdfef5f0fe0002f516f0e180fe050506f7fef4e999fe00f580fe01020080fe04fdf215f3f5810005fef3fde7feec80fe00fc8ffe01e90080fe03000efcfe80f604fe0ffef2f180fe00eb81fe000a80000201fefa80fe01f1fd8ffe +fefeaefe04f5fcfef1f080fe03fde4ecf580fa00fb90fe03f3fefbf280fe00fa80fe800080fe05000100eff8f780fe02f7fef097fe00ec80fe00f8800080fe0500fe0108feec80fe06fdfefafefbf5fa8efe00fd80fe00f780fe07e800f4fefcfe00fa80fe00f781000a0100f3fefbfde8fafcf8fb90fe +fefeaffe00fd80fe00fd80fe00fd82fe81fc00fb8efe02f9fbfd80fe00f381fe010001810001fef781fe02f8f9f798fe02f6feeb81fe02f70004810004f2fcfef7ed81fe03ebf2fef18efe00f180fe02effcf480fe0c00f0fef712f1f9ee0a00fefdef80fe00f882fe00f080fe00f78ffe +fefeaefe0afafed9f9fef6fcf8f0f2f981fe01fdf490fe05ebfef2fafef480fe040006f5fef380fe02fbf0fb80fe00fc98fe05fbfef4f5f7fc80fe800080fe01f1f580fe05f5f6f9f5fef890fe02fdf6fd80fe00f280fe1100fef10705000cf4f6fef2fef6f2feeffee180fe02f5fefd8ffe +fefeaefe00f983fe00ee81fe03fdf8f9fd90fe02f6fef480fe00f280fe01faea80fe03faf4feee82fe00fa80f197fe03fbfdfee480fe00ec82fe00fa80fe02f5fcf180fe04fcfefafef38efe00e581fe02f8e7fe80f70607000ef9f1fef980fe01f6ea80fe09f8fafef8fef5f2fef7fd8ffe +fefeaefe09fdfef2fef8f0fef0fafc80fe00fc80fa00fb8ffe00f080fe00f980fe00f580fe07fbeefefbfefafeee80fe00fc80fe00f697fe00f880fe01eff980fe0ef9fbfef4fef8fefafef8fdf5fcfef393fe02f5fef880fe02effeec80fe03fbfdfef180fe02effefc80fe06f1fbfefafefdfc8ffe +fefefefed7fe +gr +gr +%%PageTrailer +rs +%%BoundingBox: 18 80 521 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 4 4 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<28706f696e74732f7665727469636573292e20205468697320697320666f6c6c6f77656420627920616e206172726179206f662063656c6c2074797065732077686963682063616e206265207573656420746f> 72.24 64.80 C +<64657465726d696e6520746865206e756d626572206f6620636f6e6e656374697669747920656e7472696573207065722063656c6c2e2020412063656c6c20636f6e6e656374697669747920617272617920636f6e7461696e73> 72.24 78.24 C +<61206c697374206f6620696e746567657220696e646963657320696e746f20746865206172726179206f6620636f6f7264696e61746573202874686520696e6469636573207374617274206174203020666f72204320616e64207374617274> 72.24 91.68 C +<6174203120666f7220466f727472616e20756e6c657373206f746865727769736520737065636966696564292e202054686572652063616e206265206d756c7469706c6520617272617973206f662064617461207768696368> 72.24 105.12 C +<63616e206265206465636c6172656420746f2062652063656c6c2d63656e74657265642c207665727465782d63656e7465726564206f7220616e7920636f6d62696e6174696f6e206f66206f666673657473> 72.24 118.56 C +<28656467652d63656e7465726564206f7220666163652d63656e7465726564292e20205468652063656c6c20616e64207665727465782063656e7465726564206172726179732077696c6c2068617665206120312d746f2d31> 72.24 132.00 C +<636f72726573706f6e64656e63652077697468207468652063656c6c20616e64207665727465782064617461206c6973747320726573706563746976656c792e202054686520656467652d63656e74657265642c20666163652d> 72.24 145.44 C +<63656e746572656420616e64206f74686572207479706573206f66206f666673657420646174612077696c6c20626520616c69676e656420746f207468652063656c6c206c6973747320616e6420646566696e656420696e2061> 72.24 158.88 C +<63616e6f6e6963616c206f726465722028656163682063656c6c206d75737420646566696e6520746865206f7264657220696e20776869636820666163657320616e642065646765732061726520696e6465786564292e20> 72.24 172.32 C +<20> 494.16 172.32 C +<50656f706c65206f6674656e2073746f7265206f66667365747320746f20656163682063656c6c20696e2074686520636f6e6e65637469766974792061727261792073657061726174656c792066726f6d20746865> 109.20 185.76 C +<61637475616c2063656c6c207479706520696e666f726d6174696f6e20696e206f7264657220746f20737570706f72742072616e646f6d206163636573732e20205468697320646174612063616e206265> 72.24 199.20 C +<67656e6572617465642066726f6d207468652063656c6c207479706520696e666f726d6174696f6e2c20686f77657665722c20696e206120706172616c6c656c20656e7669726f6e6d656e742c20697420776f756c64> 72.24 212.64 C +<6e6f74206265206665617369626c6520746f2073746570207468726f756768207468652063656c6c207479706520696e666f2073657175656e7469616c6c7920696e206f7264657220746f20616371756972652074686973> 72.24 226.32 C +<696e666f726d6174696f6e2e2020536f20736f6d6520666f726d206f6620696e666f726d6174696f6e20746f20737570706f72742072616e646f6d20616363657373206f662063656c6c20636f6e6e6563746976697479> 72.24 239.76 C +<6d6179206e65656420746f20626520737570706f727465642e2020416c736f2c20736f6d6574696d65732c2074686520766572746963657320686176652061206c697374206f6620696e646963657320696e746f20746865> 72.24 253.20 C +<63656c6c2061727261792e20205065726861707320746865726520697320612077617920746f206175746f6d61746963616c6c792067656e6572617465207468697320696e666f2c20626563617573652074686973206973206e6f742061> 72.24 266.64 C +<766572792066756e64616d656e74616c207175616e746974792028616e64206973206e6f74206f6674656e2075736564292e20204f74686572776973652061207574696c6974792066756e6374696f6e20636f756c64206265> 72.24 280.08 C +<70726f76696465642077686963682067656e657261746573207468697320646174612066726f6d207072652d726561642076657274657820616e642063656c6c20696e666f2e> 72.24 293.52 C +<5468652073616d65206973737565732061626f75742073746f72696e6720766563746f7220616e642074656e736f72206461746120657869737420666f722046454d20646174612061732077697468> 107.28 306.96 C +<7374727563747572656420677269642064617461736574732e2020416761696e2c20492070726f706f7365207468652073616d6520736368656d65206f662073746f72696e67206561636820766563746f722061732061> 72.24 320.40 C +<7365706172617465207363616c6172207175616e746974792077686963682069732067726f7570656420696e746f206120766563746f72207573696e672074686520484446352067726f7570696e67> 72.24 333.84 C +<6d656368616e69736d20726174686572207468616e207573696e67207468652048355420636f6d706f7369746520747970696e67206d656368616e69736d20746f206163636f6d706c69736820746869732e> 72.24 347.28 C +<414d522044617461> 72.24 374.16 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 375.36 t 72.24 376.08 lo 125.04 376.08 lo 125.04 375.36 lo cp f st gr +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4164617074697665204d65736820526566696e656d656e74206461746173657473206f662074686520736f7274207468617420726573756c742066726f6d204265726765722026204f6c69676572206f72> 107.28 387.60 C +<426572676572202620436f6c6c656c61207374796c652073696d756c6174696f6e20616c676f726974686d7320617265206120726172652c2062757420696e6372656173696e676c7920706f70756c61722064617461> 72.24 401.04 C +<736368656d612e20204927766520696d706c656d656e7465642061206d65746164617461206e616d696e6720636f6e76656e74696f6e20666f722064657363726962696e67207468652068696572617263686963616c> 72.24 414.48 C +<72656c6174696f6e7368697073206265747765656e20414d5220677269647320666f72204844462d747970652066696c65732e2020486f77657665722c2074686520636f6e76656e74696f6e20697320726174686572> 72.24 427.92 C +<6c696d6974656420696e20746861742069742063616e206f6e6c792068616e646c65207468652072656c6174696f6e7368697073206265747765656e206e6f6e2d726f74617465642072656374696c696e6561722067726964732e> 72.24 441.36 C +<556e666f7274756e6174656c792c20414d5220616c676f726974686d732063616e2075736520616e79206f6620746865206461746120736368656d617320492068617665206465736372696265642061626f7665> 72.24 454.80 C +<2846454d2c206f7220616e79206f66207468652073747275637475726564206772696420666f726d61747320696e636c7564696e672063757276696c696e656172206772696473292e2020536f2074686520414d52> 72.24 468.24 C +<6461746120736368656d61206d757374206e6f7420636172652061626f7574207768617420736f7274206f6620677269647320617265207573656420696e20746865206869657261726368793b206f6e6c7920746865> 72.24 481.68 C +<67656e6572616c2074696d652d7374657070696e6720616e64207370617469616c20737472756374757265206f66207468652073696d756c6174696f6e20646174612e> 72.24 495.12 C +<4920776f756c6420757365207468652073616d65206261736963206d6574616461746120636f6e76656e74696f6e7320646573637269626564206174> 107.28 508.56 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.502 RGB +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<687474703a2f2f626163682e6e6373612e756975632e6564752f486967684c65762e68746d6c> 72.24 522.00 C +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 523.20 t 72.24 523.92 lo 263.28 523.92 lo 263.28 523.20 lo cp f st gr +0.000 0.000 0.000 RGB +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<486f77657665722c2074686520226d696e5f657874222c20616e6420226d61785f65787422206174747269627574657320617265206f6e6c792075736566756c20666f722072656374696c696e656172206461746173657473> 72.24 535.44 C +<616e64206d7573742062652067656e6572616c697a656420746f20737570706f72742061206d6f72652067656e6572616c20636c617373206f662067726964732e202054686520636f6e76656e74696f6e732075736564> 72.24 549.12 C +<666f722065616368206772696420636f756c64206265207468652073616d652061732074686f7365206465736372696265642061626f766520666f722046454d20616e6420737472756374757265642067726964732c> 72.24 562.56 C +<616e64207573652074686520414d52206174747269627574657320616e6420736f6d6520636c657665722067726f7570696e6720746f2064657363726962652074686569722072656c6174696f6e736869707320746f> 72.24 576.00 C +<6f6e652d616e6f746865722e202049276c6c2074727920746f2070757420616c6c206f66207468697320746f67657468657220696e746f206120636f686572656e74207374616e6461726420696e20746865206c6173742073656374696f6e> 72.24 589.44 C +<6265636175736520697420646570656e6473206f6e207468652067726f7570696e67206d656368616e69736d7320646566696e656420666f7220746865207374727563747572656420616e642046454d> 72.24 602.88 C +<646174617365747320696e2074686520666f6c6c6f77696e672073656374696f6e2e> 72.24 616.32 C +ski{/Helvetica-Bold fcd /Helvetica-Bold-ISO8859-1 fdf}if +/Helvetica-Bold-ISO8859-1 ff [18.00 0 0 -18.00 0 0] mf sf +<50726f706f7365642043616e6f6e6963616c2044617461204c61796f757473> 72.24 657.60 C +gs np 72.24 659.28 t 72.24 660.48 lo 365.52 660.48 lo 365.52 659.28 lo cp f st gr +/Helvetica-Bold-ISO8859-1 ff [18.00 0 0 -18.00 0 0] mf sf +<20> 365.52 657.60 C +gs np 365.52 659.28 t 365.52 660.48 lo 370.56 660.48 lo 370.56 659.28 lo cp f st gr +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Helvetica-Oblique fcd /Helvetica-Oblique-ISO8859-1 fdf}if +/Helvetica-Oblique-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<287769746820706c656e7479206f6620726f6f6d20666f72> 370.56 657.60 C +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 370.56 658.80 t 370.56 659.52 lo 493.44 659.52 lo 493.44 658.80 lo cp f st gr +/Helvetica-Oblique-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<657874656e73696f6e732067726f75707329> 72.24 672.96 C +gs np 72.24 674.16 t 72.24 674.88 lo 174.24 674.88 lo 174.24 674.16 lo cp f st gr +gr +%%PageTrailer +rs +%%BoundingBox: 18 99 522 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 5 5 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<436f6e76656e74696f6e73> 72.24 64.80 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +%%BeginResource: font StarBats +%!PS-AdobeFont-1.0: StarBats 001.000 %%CreationDate: 09.09.98 at 15:50 %%VMusage: 1024 36745 % Generated by Fontographer 4.1 % \(c\) Copyright 1998 Star Division GmbH % ADL: 917 200 0 %%EndComments FontDirectory/StarBats known{/StarBats findfont dup/UniqueID known{dup /UniqueID get 4092170 eq exch/FontType get 1 eq and}{pop false}ifelse {save true}{false}ifelse}{false}ifelse 20 dict begin /FontInfo 16 dict dup begin /version (001.000) readonly def /FullName (StarBats) readonly def /FamilyName (StarBats) readonly def /Weight (Medium) readonly def /ItalicAngle 0 def /isFixedPitch false def /UnderlinePosition -133 def /UnderlineThickness 20 def /Notice (\(c\) Copyright 1998 Star Division GmbH) readonly def /em 1000 def /ascent 917 def /descent 200 def end readonly def /FontName /StarBats def /Encoding 256 array dup 0/.notdef put dup 1/.notdef put dup 2/.notdef put dup 3/glyph140 put dup 4/glyph141 put dup 5/ch5 put dup 6/ch6 put dup 7/.notdef put dup 8/.notdef put dup 9/.notdef put dup 10/.notdef put dup 11/.notdef put dup 12/.notdef put dup 13/.notdef put dup 14/.notdef put dup 15/.notdef put dup 16/.notdef put dup 17/.notdef put dup 18/.notdef put dup 19/.notdef put dup 20/.notdef put dup 21/.notdef put dup 22/.notdef put dup 23/.notdef put dup 24/.notdef put dup 25/.notdef put dup 26/.notdef put dup 27/.notdef put dup 28/.notdef put dup 29/.notdef put dup 30/.notdef put dup 31/.notdef put dup 32/space put dup 33/exclam put dup 34/quotedbl put dup 35/numbersign put dup 36/dollar put dup 37/percent put dup 38/ampersand put dup 39/quotesingle put dup 40/parenleft put dup 41/parenright put dup 42/asterisk put dup 43/plus put dup 44/comma put dup 45/hyphen put dup 46/period put dup 47/slash put dup 48/zero put dup 49/one put dup 50/two put dup 51/three put dup 52/four put dup 53/five put dup 54/six put dup 55/seven put dup 56/eight put dup 57/nine put dup 58/colon put dup 59/semicolon put dup 60/less put dup 61/equal put dup 62/greater put dup 63/question put dup 64/at put dup 65/A put dup 66/B put dup 67/C put dup 68/D put dup 69/E put dup 70/F put dup 71/G put dup 72/H put dup 73/I put dup 74/J put dup 75/K put dup 76/L put dup 77/M put dup 78/N put dup 79/O put dup 80/P put dup 81/Q put dup 82/R put dup 83/S put dup 84/T put dup 85/U put dup 86/V put dup 87/W put dup 88/X put dup 89/Y put dup 90/Z put dup 91/bracketleft put dup 92/backslash put dup 93/bracketright put dup 94/asciicircum put dup 95/underscore put dup 96/grave put dup 97/a put dup 98/b put dup 99/c put dup 100/d put dup 101/e put dup 102/f put dup 103/g put dup 104/h put dup 105/i put dup 106/j put dup 107/k put dup 108/l put dup 109/m put dup 110/n put dup 111/o put dup 112/p put dup 113/q put dup 114/r put dup 115/s put dup 116/t put dup 117/u put dup 118/v put dup 119/w put dup 120/x put dup 121/y put dup 122/z put dup 123/braceleft put dup 124/bar put dup 125/braceright put dup 126/asciitilde put dup 127/.notdef put dup 128/Euro put dup 129/.notdef put dup 130/quotesinglbase put dup 131/florin put dup 132/quotedblbase put dup 133/ellipsis put dup 134/.notdef put dup 135/daggerdbl put dup 136/circumflex put dup 137/perthousand put dup 138/Scaron put dup 139/guilsinglleft put dup 140/OE put dup 141/.notdef put dup 142/.notdef put dup 143/.notdef put dup 144/.notdef put dup 145/quoteleft put dup 146/quoteright put dup 147/quotedblleft put dup 148/quotedblright put dup 149/bullet put dup 150/endash put dup 151/emdash put dup 152/.notdef put dup 153/trademark put dup 154/scaron put dup 155/guilsinglright put dup 156/oe put dup 157/.notdef put dup 158/.notdef put dup 159/.notdef put dup 160/.notdef put dup 161/exclamdown put dup 162/cent put dup 163/sterling put dup 164/currency put dup 165/yen put dup 166/brokenbar put dup 167/section put dup 168/dieresis put dup 169/copyright put dup 170/ordfeminine put dup 171/guillemotleft put dup 172/Tom put dup 173/Pete put dup 174/registered put dup 175/macron put dup 176/degree put dup 177/plusminus put dup 178/twosuperior put dup 179/threesuperior put dup 180/acute put dup 181/mu1 put dup 182/paragraph put dup 183/middot put dup 184/cedilla put dup 185/onesuperior put dup 186/ordmasculine put dup 187/guillemotright put dup 188/onequarter put dup 189/onehalf put dup 190/threequarters put dup 191/questiondown put dup 192/Agrave put dup 193/Aacute put dup 194/Acircumflex put dup 195/Atilde put dup 196/Adieresis put dup 197/Aring put dup 198/AE put dup 199/Ccedilla put dup 200/STARling put dup 201/Idee put dup 202/nbspace put dup 203/Edieresis put dup 204/Igrave put dup 205/Iacute put dup 206/Icircumflex put dup 207/Idieresis put dup 208/Eth put dup 209/Ntilde put dup 210/Ograve put dup 211/Oacute put dup 212/Ocircumflex put dup 213/Otilde put dup 214/Odieresis put dup 215/multiply put dup 216/Oslash put dup 217/Ugrave put dup 218/Uacute put dup 219/Ucircumflex put dup 220/Udieresis put dup 221/Yacute put dup 222/Thorn put dup 223/germandbls put dup 224/agrave put dup 225/aacute put dup 226/acircumflex put dup 227/atilde put dup 228/adieresis put dup 229/aring put dup 230/ae put dup 231/ccedilla put dup 232/egrave put dup 233/eacute put dup 234/ecircumflex put dup 235/edieresis put dup 236/igrave put dup 237/iacute put dup 238/icircumflex put dup 239/idieresis put dup 240/eth put dup 241/ntilde put dup 242/ograve put dup 243/oacute put dup 244/ocircumflex put dup 245/otilde put dup 246/odieresis put dup 247/divide put dup 248/oslash put dup 249/ugrave put dup 250/uacute put dup 251/ucircumflex put dup 252/udieresis put dup 253/yacute put dup 254/thorn put dup 255/uni20AC put readonly def /PaintType 0 def /FontType 1 def /StrokeWidth 0 def /FontMatrix[0.001 0 0 0.001 0 0]readonly def /UniqueID 4092170 def /FontBBox{-12 -210 1083 917}readonly def currentdict end currentfile eexec +d8061d93a824650eefe2785f13cd28a8a226cfb0a1a9915b91e00d2c2cb80ac548a1ab21bed4518a56748942842eff6121b01bc269e7837046266cb27dafd3a4fd0344e68245aa98a5f1b5bc9db554ebffb879f1c082989cf6c044b76f4814df51dcd03f9e3397f3c73d94f85771983bd52fbe6ecbcd9a2cbb7b3636cfb819daa5469925fc89a188732d68c6d06c906d183cb4bd495aed0c41fe6b7333ad90a1674478062c8996476573a0cdad62593c86e4741ecab7b8c75a6bf02971dfdc2c5a2e1c8f74ab1e91315c54e72426da3a62dede611d5967201fe8bfaa5a21c612c0b245fa35c6706b7b9aa3f73ce16604e3109770d367fb30fa663aa8d2b246de733d27174a0b818d54c58c3676435d43949eb9e5e335396296bc3f096fc154616c0b723b0b4a100ed45072f371f77f26e02f1dcc41376638097d79af0a4ddbfc37dd6cb60d0d34ea5a7536c655d95549b8a5a269e7e927c3d89f74b88e17973c2e8d64688089d329abe6b1009c0334d57a6dc34f22efdd933023231fa03fc81093ef255a199448f17d8f67dbc57c38b2fa163b8cef97a6f42e74af55319eb81a6fb9de18810ba9e3659a7144b80aa066a9f386de3030fc4985efffd13c0cab7049a09a71dc1dfa21a1540f4289b13dde08c0d3b4a01fd2bcb4e256b398c94036935bc270713a24c51042bac575ed4827e17e5dc2997753fcee0ecaaca582c85518edc0c3dee2851fa4d2581f7b399f07013ca3d1d4702cc27be134cfa8aa1cbfecac76f1b406b5b3126c3b7b60ec34340aac6433997656b3dcc1af6c8036f051edfc109a493243546721683fe5c0e48790848079c74ea0640c3f9c92cdd22fab8af9b5575a5d1d2cea0f1f715505cb02a1e200cbe4ea5563d0475cb13bda929286f9c11eab10ddd676314996954ae3c94bd14f364d5202e6ddd20b1b4c7abec1c061b2d8a1776577387a2f2dc424f56d44e58b96f91f7b871627089498d76bbc6664e1ebc9b26486cb727d4a5d62fe405324ceb0a5dbf51c9619f2913e4dcea44c5bac49d74bd049f28b83955e13f0fc77d998a307b0bb560757b21e4a982b59cd5723d66952b8a7ad0311ee6874842f454046538c475b86983b4b8d9c00e814009235a058f6d5fca9e8339555518ba2b64ee925cf0944deff5c14069a1ee1de2cadafaa6421f495c21c042690b3a7c9e6a5a137ee005240308e63e0b1d4bead90ec607d19c57ecc24c2ea9b8ed4af8e5ec19575ba230c19156ff9b23915a7b50666ec4b655a2946f97c5013cdfc31825f2c1040fb28bb8876b1accb1fc005010e5e5d061651dc9df17b7bb37c495a37df9659962680951290f3f4168dffb294f83b2a3c423526a97451e2504fc0c819f4d263834ef7c8588ea4d68c98eb5e3ee3c2de20a6da219b3256400a7c745059581d33158a505d5bb07c75bda324c2d8fe34eadb98520c7b82838835e92ddd1d89516478cb1ca795324f802e1f7a5547f671588fc3e5b909f5ab9d573bb0766569a36e89586b7410b76867cad6577022e9be567d1a5578361d83b817fb994758c679fcfd6b22c9fa7c6c76f2a72be566e42167247c831f826d9a10e03874b9747783adece88750be1206a07923cd9fe06b677b61c69a7dd9e0f9dc60771ac529f6adaeee9ee6652cdeca5789c7f242266d86f0154a1984402c720adbc3dc79b6eece6d378555d78873844ba1cf057f385e70474132e0bdfabe169a631e07d12fd21f18736013499081e58d72e9cd451df304a5bf52c1f1723a5ec8b7992d8fa3f33d5be97d4c114fd435a94607f8be09812bc1fa4db028644e2fcef5d86ffb947a14993a93185b054a7cd9ad734c62f2d9ce3c0f9e2e8678bae5b92315f60169aa85d4ae22488cfab72b841374ac3f39966b9e126ad64c0307b54085b6e25d51caef51fecae4c5ddbfb5c29b15cc90ec0795123a84d3c31173b49096d617707d9e192da82493ac9884759115c02ba4686ed464d523aad69167e24e5303ac3eb3da0eebcc420fdc256cc26d466f979c8e637344958f02ba9d3a481693fbf13283d7d276af546abf2f2bb4e6c6f835c97e532bd5b40e8b08eea4441e8a9e03021add36c4fe28180ea466082e4fd7facb03f7abd47c929c4e0d84132835e59f8276ac7fddec7755cba924dd1c97e02691f13f2e159b1e358ef2ba347e2298b0b39f5ffdab57daae22d94ba5064abf716c866b64add8e3981b76a77a3a8be0a462594b9e1257e7940b237875e000c0e23a0841a85da6eb5af931dc0ddfe912285d160f12a66ebc8717fd37c13d20cc132218d31680d596ffbbb2f2805fd931c61693bcbe365f0d19c8fea4ff3eceefe09c5e29b7fde3782b8adf4bb1aa7f89ce01fa59d1322a1ccc4d92705e274bdc287312b23ab830968143efe12c8d4ac45e0c72c11f630eb5ae0c835b7f7d32cf261c20f04b7df8e362cb15cf38c531a3988afc8eb957fcee0364049ccc8d8a6935200970293486bb69db1969a2aeb39829cc4bed803e0c266c77b0dffd349ff9ae8f95558a3977775b1bc2dba5be54800a9e9645155315b062d0b5a0491cf90a66e84b581070f30d5796f71e88db0352432e8df588d25c9c9b2dd12b976618551d5625e357737966d9a15fe3cd9d54bc275b6f5993ecfcfbb373c419e2f8ed32fcd56d30db1345987a445ad259e03053244a1ff80c9343538c74845a907b0480f013289cf475df6c989a81aa5ba904a63db328292553fd4fc3a783fb76ee6ae50be4809ea0aaac9a9ba429c9990eb45affca8587972c54fdd677cd14f81404c77e4358212f44826316a927983c968767e7be1c7a36f308b6cab1648780b4f1a568cbb0ea49f6a6352d6ab18d54d442c176037ad16e18a17d88cd8fda7e86895c89368239f0f75f8c26f850316a328c40efcf316d8829ddb0fb69b250e41b94144e0475acadf63e51f27f6ecb6af4ed78ddce68c055b7a1f78ec1174bf9d67f54838da11655980a909ae1b80a2e6282137c75e49d703e6d5b4be616e62b020a8d08efd14912337a75857920f1d3515ab2771d38d8d8f610c9801d0b0c8d3388c75d211ac4e4c0c491d3b70e1bf1b926a6fabf60487613e76e6f779c4aed60929561ed06c676de7d5052f60db62e446ca4e2775b966f74a2ab55466ecac93c65e48d5e6b88080f24534ca63dd1e6781920be3010f3e9ceb771c5509754ebf963de75b4b9c9116ba7f4e21d9d89d2df167d8c5674b2fa61f49f016b4269e602c6e144de4a382fb7f185dcd82942081d6362f335695587d2ed1071a70bb27d51200a1de03763bec6b2c7a86d8f200505c07f25fc6be9c044110607154cb69efcbfce495dc86dc634e20349712d3754ce99a8b33cc59ce272e39f481b729c878399e51976652b4a525d107ebbd809909ec95f07f2012672601eb9ada5e0b3292d68b6ff8d529a2dcd23f7150d77ba5b1a36701d5954d37ee96501f9efa8e037290f6dca8c024ec0a2ced95b8dcbfea0ddc55dac8ffa55e224d33fdae74502f8f0085fdb5d6d031d34a609db4ed63ceeb285f3697049800bd560e31bfdc6862a49da0ff4b4e84bac9f184e08181c7870058559f826977e851f7dde09163b8b3cc82be8103f7baea3072202ffce888f1bbe37cadb748e2a3b3b53cf38b4336a4eadd0afffd76389b1dd9d067888c4e647b07a7643b81fc08a15872f08f6295eb45e7838021253432f2bdfca6c2a85aa70efea06863d3ebfdc555f41abceb6fc1a5f92448e917ae97706dc04adf0b7bc817c1b93d2f924b118fac5fe6053093401a4676c6d7ce7b4ceae1f5c149b1d8d712d32d56bc8430c210a7124e192e387ed9696df38ac2763e3a065c3ae4726afe9c16b07891bf5243c16add2bf494f9ae8b7566d4ee600a7fcc945d4bdd305daf4df51b1c0222e5594c65af003b51549e0e790ef194943d4accef39419ba173d05788ff822d4e3d4fb5a612fb13292aa377e50a44a6953bb793d0c521c2179012a882b74ece2f79723fb75624ae9c446ba358a3effd738ccb59a856f1bb5afe8635e1033936d58da18ea1f7464758e4647ac03552bcd1be22ef9d4c0f4aea0d7d1c91234ac50d5192bda73b0e63a8303ee284009e6f42c0a8671cbac1c02ac67f096cdb67e83a8d3a8b0e2915fe4e498d50a80892a374cf637cbdc145c2a4a16e0449fd300f7f03b9c80b320addb404d3b7388e5473a6502c74a9d614b21f2526b2e4f9fd9c5adca0f01677b57de5a55d60d9c428c6833d7abb14514926e09bba6b07763aad75d0a934b7c44976be43c289fb238aeff7556183515a5c4b085447922adff5498d29e101a60ff02e893ce8fb8d446874914eb3d3009db46a579d14dfe884d22d9ca5bfde436f4bf334c8c8e73cad66d26b9b711b3a2a3ea84d6864945e529bf59d397ed0acca03a3bb32e470c46cd6639cdae83b4e8e6decd2e8574e1b9361e2600bdccd6c9231ddb2b5981f4148984e0d21d2bc7c54fa7b32144192d32a60bb17520e855b14ea6ba31068d4e209a5add8dd6cec44932063adac2280f985cc70099a1fffb3cdc3134604bb8e50ede70ce9db412a309a21a0541662050f545cf6f2fbb39e9106e83d34dd1a7f9f08b66e68052482a68778687aac8b793ca24cf3d258d7991c4d2c0eb760d1b83dec08277bce87bef9883ff7af63a927a509eb44ffdf2f8f2a529baee6c68478a1f8a10c81fc3fe0a88004843f05d15b34d04149508d7b29ff2b11ad5e150269dd78545f0f57ca1752f6197a8539ab3aef587645b5dda3dbf18060d30c3426f2fff04d9bf22f1591762597d72cd6225f01377293696235f084801440fb9590bf6468e73c11d7de5c7c9899d6a84a9bbe18c8238e117ae4e74ce9c087957935630399f186f4712caa2775ee026f1c9f334bfa2ea897f2cef8f6d2f200bb2fd7d9292c056149cb3091d54be657c5efb690dd7290b7f866330d8b64cdb134019ba3c608bebca348fac2ee3891d54ce18d427de0e8270ca0b19b5cb9ab69ff7bfce6b5c6431fc794f1a2ae04975dfca6d865e38a85d0092b339119f43ee8f11f999ff0132145ef65f2786d9dae9c45dff0ff2195bfc604db64e4da4b681dcb6a3e2be4f691bad02abb6347e7ffb00172df452182679d10029a878d14569825c6df61c229e158f92a6a0e0590722313729ecc3c93a9de9f044e62d3abdf500ea46557e90649aeb8cc582bfb6fa71042b330800d50aebe27e1b7605c3aca1f67c4116d93a1d59d7f9a9d7dacb2c949193b0e901291474ed0f6b746c680b337ccc6adcccddfee2ba9e31f588940931c6d697222b14220ece34f97d640f78eafe33d689d8c5e94ba3eaccb197728d58924f1325c5951246898b2477057915ce4caea524151e7f3cb049441ae88014b89fe7730eed66c4161b2e01d608d977d674edd37527433214b40081ec8a262da3f69f07dd54acc3a8dc5058a927bf7ac5d3ff18e0e526cda9eeacc331cfecac11d2bec5872fdd5cff5f7459a42f263304294b139fd7106149b962873b757a2db3ee8e030a8ea3af3366fa5f3226d9f9de3c48dcc0f701ac74385d2b753e655804a834456e17ee576872bb5e9815bd6ab6a4555ce5fdcfd0b1637357424813dfa6443a46200dbcd46f7a15d342c14e5b99c1e53953283d83e81311eb2537162005d2bc0f18b336e33f7190d4cc4ab8a86f596ac2522b6fe3aec0befaf024e35f811a309c8a03734e432ac4695d977d6fc14c93773edfe0eab4b5a0a6d55b4ccd205086b92107a434b119d15f145d0f3511f823e69a4b3777b659555f06116cd99075982c200e36eff85d7931c7b918af5504bb4129cf65c8a33964b3b6fd3b2340fd3737c73f7667632cbf81535b88096e99a5e98ffee00409948eb2b46010a275ffdf345bc0e359ae4c2b6b804a36ec5018db1ddfd43ed28e0982be3dd61a41fc78221bfaf4eea3c94e8819e2d296a355bf61cc29ad69e2baa9caa77f4587be6bccfb178d553bb99bdf52716e6a8e2626505b819cc595f5173d13340fde8dbb4db3313a66348c8cf5fddfe7d7fd04becc8fec0ee1385ce5329088e772f1939fd59e2dce71c2946044fdcd131e06695ebfe5ae6e512640d0ea79492c20880391bffb1b3c9851cfba1b5b16d5860baa2a2b1f4e0a571aa3551cd73256e171c2590687e3596108defc56ca6cefb27095380b0bfff828d897c5f4a1f7710cc1fbe37ce9254c27edb772093e789a7e2a941d676fa8f14edf641dcb06fbd638e74a3764be77ccb7f93b5f961be59a6df0c5305b6ab3a20ead2d3eadd749fff40762a25833c9efbe377d2aae40b18e7785a77f9eb4f05f987ac7572854859f5fc5f56240e94305543baf5df3fb905a1122d20d09d7133923783f4d1e30ce9bc990e1d4989280cdcae75b5a78ff48ec68254373f9a57663255c0d5a18bc78b3cf2002befdf0cbb3cb5e76243b963e16ef7a34a06016dbd728117ed141ce213dae5acc96930ef9320938084dec3f77ee4e595b496648896de03deef6fcf49f6477a04a0b190fa668ecb8dec555db55d7ba7d0151042dd4f205e50f53ca706d93c9ae1b67b51989ad1b3ebb27f2416588397429d2129bfe0d5fbc7888fe0ca49754024224ba6fbd089214122d5c5dfacf7fe314c34581b80fe2f0786f7a70788a1dc27bce9f69daf04f197e9fe3f735a339f6f88067636e23559d1a02cd1d8b70fb07146532a5b404a4491d8650a22ed0f49088e86054e76656f079074ae121f5039c5a128109551c3ad7bfb874de16f639a82f0cae1ba1e26cb21bb8ab0ffd0fdda61da950d00e9a9d319c32757cceb80c07716cecf71f96dc167d760bcb54c8c41387d7fb8b5f884a0f7f53acced99690e1316a8f2005edcce538b3b511a637736a08c932fe9f54e281535c9ebe5716228cef9648813df7f0ce70b5107833eb4025e11f93aa574ca8215ce3dc6a5069f03f22a2224d9d2f8c819714b3b02f32066785f9aaf616afa69a3c031f1d1ece51d541f60d6b8e739b63b0f6472b93e5e34cbca3474b47deec1d72ddf91baaafa42078c177469e8099ef4a80758225c7839a0ba643dc3c88fb01ca0f278f077675f0f3bf3319931f129dbd9ef04dd0daa8cf8bc6573b6b2091b64326a366df67a739f27f8c20f47ea3bea9a9880b0aa3b558c56f6596b0f51b124b78b717336142cc03823f2d75c0ad84c09868cbd0dcfae4ccf37b345a26d5e08b20c36505447042ee2ce81f450a835d7e0b679c0c9eae37ef6982001a8c52708c5db0ec2294a90b9876eb789ab09af859a0a879cc27d2f52dde9e9a6960fca2530244cc26d3a21cb294458d707dbe2441460d79d1783fb334a3d144339bdd635b676a1b260f5969bf089d59a526f56bdcf92bbb2d52cb268ccca6c66e4ceefa57c72cbdf8a4e1a2b57ff356f8fa49db680fdbaa3d4df9f1d6201307a44a9ebef9ab8c893518d71beceba645d6df155f6aa68163f8d66b40c1084b673ac16b287f763d40db303c4c9f9e76a3e8fff77d595e97f7e59e56b02aa8f005d0c6830931892207e25a11520efbce320b99362de47e093fdd48318cef9458ab6b4093d1480ab1424e82695527412d0c5e3c299eac02b67ee503a9d04d31431d172f50666fa59e778dc43ffb7eb3f78324a5cd88601f7109bf3bc03f0256ec90473715c9a626a8488a4ac0403438c7fb97438334506f3718c262c6fb671cc1501e1616281c50c1f1abb0e796b5a989d9419e9146784619689562ee006255b58c5030d4deb7bd4e723d5dddced22c58905adb6a1b319ff10a8610912023c965c87e8b9f50babf746950ca2b356c1a9cc1cb8180a3536b2a639a147f65a8178fbe711c5fffb8fba62069c74e02ee7bb219bde7f581ed080e33ada55e37013823fbe5eaf8f7b774209a75b047e7626b8b82733f525e57792ca6c79bd882c5bfa323fc5ed98227c892ff958a359fcf654cb8facb6827d717a899ab9b4d2093e7a3762ba0c9f7ad55124173a5bb29f9f8769484f698dc8f8b394816dd74eff3b1a7dbdf16096bd0ad1b5bd409d56783b6d418631be43d241d6b834e1e8107bd9e296f9aa43e90ef753d6ad527875f230f6b1d3914692840fd51e8048ef5ecc8e7d2da90645c8e0acbdb3803d677cb07714a5fbaf0caa48234e6abfd0cc1be8a80ea7e956ec40a54ce712c979d9d108c28566d3c71c93c25fd7c202c637aa06f1baa00ed6262f87062cbc03e7722983a7c87645ad8d6e0df84112139cd220b03e3b874dea9b9705efa254db06927ab7951eb72ea84b253e0bb877b77fb1810b078ba9f20280d7e85fd9d134ee7166cb1cd51525a5bde7cf96b26569af11b40dbf5b4b25a662c9e14dc084cc349bf451cc976d1de3ef735d001c18d7e6027fdba88d29016ba395ab7f6b1d232151acca1ee234a287c2d7843223db3df6e3e5325a9fc82d92b0baa4a28fc927a3c3d307f7a7ca1ec7a54e8b4a56c177aedb633425bc7676a10c0c2d51b5555f4757c2c9908cf39eee8f85913216c5df40fc6a04dc460e99f55844700b4e02ef7a81ddf4bfa798e5ea327d2c66db67c608afb6ea5753ade25c620d52a5ff2c1d43385737d41e7e6cc645b1f9dffacdc0e8cf72a9128abd66cfe77f2c273e7efb2c6d3ddf4848a023911b7287797cb7a3baff8df5f4d8baf2d30d8ef3daa330fe4728f2fc405bf82b6360d1c9f78d17fe13bad721756ec2bba578702ab8a41c094b22a2ea393e9d4d597e5d0c2f12ab5f21d4546ac61e0b96ad5bc47586bd42edd8caf964cd2b997e0bd816ffd593d5481a8ab543384f8090d7cc0d9d4dba9001992366bbd61949f2b33bb6633f45554e879ec6399f11a13be5d195c927f9e4fb503c2f7f1af69725add00166a3c6f0b72230416d09687ac6109eb06d16b8321ab293cc112cccae7bd8233a6206b814694eb0057b708a76f7c793115dbd09b6b6808cddd0dccbc2a20c5abd02a91f0846ac0856a5cf7be1319057e48631937a3bfff2d24f0fecb55e929c1c7d8dfddf2fb892926e20c9fe4a84bc1d9dfd203d438a7f989ba23836bd55b1089bcaadbbbf19e8cf001f75059a1dc3daace5ef08b0b55231f3b63ccbcb50805601c86e10e48f90dbae123b55d421df8301a9c67f4cdead045d1ace302b93f9337ada9ed3ea36369cf35577e868383d69cd425ece04e0cdc1940b296c35e1314d837d6fa900d661eed125ada136ae005179a03494e23a245d96e60cbd7a04f9503c227e835e58935e28bdba5446128f0db08dcd9b85049c5c67e357a3a511f37a71df23c25f971df40b9982b1b5ab845bd4870fbcdf4ea319afa2e225dcbe3b4b06b73429467ab402aeb48e3b661a0355cdeefdb754d43b66d1b576a1ec93994587b16fef1d493d53263ba10fae3dd01736b479e33dcf87dd9af58b353bc55b8a5382aff065773ca8e932d8e55a80537dc04193176a1c38082e3d4fbc38ffbac68bfcbd80ea1682b79961ca070d3f7938571303267b2be5afc70f196383a01fabd8952db19f7c5921fd66ef6f44523adb1bb09ed0cd03c14b8fa91b088ecc5152d6e288f2f388b5870733b489081581fcdc2e1483d3a2dd9b1bfabe1732b2ae37041d49727a2bde007820f328cc2118b610793e6a6996e1f336a061eef6b61120049fd0b9f0847409cb3a8ab404c563c1769de2660b073dcb30bb916f3679b5819958ce2f5330634e2361cff5c0915861ec791b0dedf34a845103f7e1041a366e6109b88bcdfea2e0d0d260f16717d67e20c9a0b624f15f1f05339a408dbc7fa3b8395895bf50691bbeaccbfe69bc22e136a37fb9d074d668eaaa2f98af8ee35119d46af0dd9939462cfd2ddeb85792ca7d38d61e2c5109d2c91fc8232503900396ae6a85b7a88c80136699e77c0d7408eb88538cc544a3db250e2bcccbfa8076d70b026d46cefa250c128f8ab95d1ed9f028d56b01489d81da013201747b80513f318b84fca9dd1c4d65f36a82d09d847d550e1854341338456714e0a93424e6146e34994f84cc6bee325ae41d716920dcc0bfec62368546c901a8d43bf94c9bd2cb56283888ca54b758135fbff776c9fa98d50271b172889414b7e948180c03700d2cf3ebf390f0f9c8985900a76be9171f7439c60e18a0db5a46983722ff1489f77d24f2112b9035e65cfd10fe4c560426e464b6759ae5f24116d16f9a3167eadd85389114535f44f8054d463c1b8bab08779d40b74ee854aa6d652aaf40c30d63622eda14aacdbc002c0891abcc764b676a3b049deaf49d6789c7f9cb12bb6f0d1619548bc12b6df69c98a4af5b085c76966b116d6a2cffe4a00733efe59a473985d5602319fab0f04dc3a55be53e9c87726d6ace09dd8343e3e111858a3ae45b35de08b1730fc628265f0afcd3924b9c143450128aaf68f41fd5bd4aedfaa9411bd33032a81405dc45005c62b682112ce0952e1926a47571a8790d639580797e33f991aa9c0b7178448591f044dc794e31acd413e6ec84b3ec0ac0df66e08e9a89727f91620f3f18f9238ada2abf4557d72553f01bebdf62bdf5742d25b47def93114918c643aa2bf8761441ba5e6699760f9370b5c29545606f6003e4c6e4725dbe4078b416022b20c1d2aa30d0dcbb724783777fcae6d2487bb793e9435218f93573064f47408d08a9c39bc44caa91c24177e8283e59cb9be2c46c5329b150478beed8c6e1e35bf56c3becbcadaef963bbc70128a1518c635420921fb37e2252910e270692e8bd641832740d67f2174ff3171ac73c23512bb0682a305899af28fce475f399ffcb310dd96cd469fbbb7629fbceccfc497fc2e469a14943fbd5c4d24c8c89b66f6638daa38cbf9dcb49dcf016d768acdf758356834503afa00b7f5c8116e147c5397c2aa8ec8a241bb2a5dcfd45627821a79dee1ad9b162796b53c59e3938c94a2a531b737b7d108b9f1f42a2164027e7d3922858aa7931dc0f7e0ec8e0fc30c27d4722a4d083115c916da5976680da42e3a7fdbcb8084abde4d1f95f62a2291847c4358cfe83b13b9ec2f1378f75f787b2b573a027b24e9eb8a47188be809666df8772e43672f910eeb1c23355987358a1bf34c3a88c2647a46eb85c1429e2e5123acfce3504e0ccf4b89e9b3de548e2bc16b8e765bb53568070a17b23aee93b0988b67e10dca6129f19083a22e950a6beaffbf958a232d2b40a7966f96d8d6c1d30d4e9d42ee28dbcf0bfde533a8b5c07c32c90c634bbb90471c53658d596fd066db06cf96e76f5563b2dbf17c284fb88a7e389b9340cb17c0707caee7791234d4b9cdc0406a59ad5aa3ebe06c7ac21851139171b188bbe7b43422e3847e30014dc2f4966126c2d23e1d54d0db34fb2f415347f14ccdb4f533d2f4ccfeae45f21b027cda966933daa5732464d7e125f32b05447fe1d15170654b53a5fc3ee1d2d8427096d1f71f2bfa3e240740c879ab752f0b14d1d17fd880f05d65ff64a05bc08f69d97fb63dd78346b9ca038d79764cabd013d57fb3506d4b0ccef1c92bbd704aaba9cb912e6034ec9ab77210531c9a1266c272ce3261dde19b9a574fe5a7a031416011100ef594396adaed9f884d18173f0fbf256e47d5c57a47864a3d592c2324c39bb6b9f8cd770e23e5884fbfc119eace855f4f21356a57f912c9e27fcd292534cf2ce0e0490aca08b4df6a3faa614239252279fd2c3df91e054129e1ba23fd9b7a90ed0cbc1f9f8790ebb11bec7b0b07a228054e1f8bb4241ab3a66bb6a224bafa455ebf835e5cc1b0f7701e2e64190091a577dd835afc77e72f3970721e1b6fd64ed65abe1b7376eb58e3273254b2da264df7a97286ac43f1c55f1b50710f54cf02da4023260084aa143dff539c5c7d5951767d0ca6b48d5ae8dcfd1727774ad1c5e7273c2aa5076c0a0fa3ff8f1bdd088fbfc17040808f3bbaa83a228b573694aa171d4fcdf13185e0a010788698eba537240a9ee729d7af975b4a8637901fa3aa401cee44a0940b4378ec67b101784d07fea844a50c542fe2a3e01bda791c2ba0ea9879bb298b7883e1b8ee13a88f9dd3b28813baed3f97c29bc8b9b2a0bdfd03df29f826498abe20f8bb7ef6be2930377c56430b7b0ffafa4193998c32fb12ab1ff63695a3201e227698fa8fcdb065c9c3a82d2f0b8a78ddc9afd5a1c5b135b019c22a46d8401559149293420d91aa98397741e9cf6bd30134bd8b5f3c5a1889e5cdb61aeb0f8a052417c5dcc3eda52fd90b2a8c2ade1a0cba31ccc88a78e1573f68ec6104fab6c417c631e90bb9ee10daba4cc047ce30b2eb735ec694521b7a87edf3e15fbacc941269090845894eacc56321d38ebd3bf3bdcffe80e3b21e4683736c81a61ced165e3a2fa10b969ddfa1f55d340612e7550144aa43868d2ce06491f2e5e089b1fb3880c17b6040343b795832e1638791ab2d12b1df0ae253aa1b3e9fe01bb06f7f306c7468bdb397cf4a9977caeb0a3c95adcceb5161f95c985b08d5d703bdd011d2d4a38f16795b54058fa2183ce076cff0762b3ebf56d8d8d0fafdd508449a2f5b0a8692eabfa509dcd0b38f09f4f99e56a0044c61c067a107857dac52e1a364ea053dcb290a7cc1c78420bf502fcd56c804c8729871aae4a4752eda8c1f78de3419afae90eccdc7572a00deb5e1a90d1b8676ac638f011b18cf42c99264d350b77a64a09c433a470f3a2ea988348f59abaa12a1384b0558890e955f1f385c05c740a0b44bb51e9cddd91bdc46c8804eca94cbf9e0fb0c18b770b70f81fe5c9c6554b3a781b22665de565d08fe0b3bf6a57943888d387c19c296827e60eb6b81685016bd1b1c8d95b29eb8c335fd76b208dbd5054b22e1fc0ab4743f7b95d623ca64c9f9afd5285978bc5635a54a70aa16e736372ed027e9518a4d0d0f9951996b210830e6d46ce43272dd0923483f986349321b2184555b6a6573bced5fc778d682085d1970f05cdbe85c936a4634c9821776b4ca2e8dbadf3715228a73c71aaa271ad02bdd76a00aca5bbd2036ef7bf949814e76561a22c2f2ebcc43c7f4af62f5a40e2df2ba612e77adaf6715e1c980aec44b1164ea20020dcb5d9fb7072052e733a0a5b69d175ba8cf48b780b371575e490571e05b3fbff92f1e0fb87abfb18f4f81c8838d5bb155942adcf8911fc3926a22d60bc9037d8eb026ea975c00937d79432be5e791ff1265b396443813020ad11f0e0ee66bcc4d68aca9ebc2b4b8aff28de824007d9d9d00a12ee894e55c565f957f5f0cff21e1219c0badbc99de37c17efaabbbdfa903ca892d5a99a7201813a2ca9cbf7b5d19d779c82af7a1be51cce30ff3820448d2e10b39154573358bb6376ce5413267f6de7d7cfcb8d4d9aeed7a0f6648834b1452c58f397ea28dba8cadd4ef29382d757b78649c6436aa3e38505e1543fad8d22a415f8c0b6afa7bf16cbe0aa85eb9042f0757c8f3ce4e0d432b2b0a328ab69529c5f8bf8da11b0b354858df07e4644aeda913eaec05fdc24b95f6f4307741897662f347ff5785bcb06c0aca0ea708cfee767f385962de34b05f897242256c1eaf5fd9382fa9f07c3b2acc2d0193cc7688fa71448b4374cc3805cec6e7b503a693be2438fb03037d7a70088dc9fe10ac37c84d29c8b5f04648bc23c998872af1df21a88cee43d52ab580248f6d11c0896d25c4ec8068afc138518f52a23c9c8ae8dfba103cc49368a2ba7a6111a8d0e154d007cecd32d9a71c3341ee238d7664d39a263ce2d5efefe4065c1654c4996e5eb10397d78ab6ad8155ab5c815707655d2a85a00187f8ed16ca19f0fbc8c116417420666e9edabb192cb81fc6e2a4fdf00bcbe0ab582a63de69af3d7e7c6ec7f23c09f02a81a221ca2d2edaa751bfd3949ecc3e81d6f518453b47911b0aa13ff53dd8a4af4b6d8f40cf4ed2f5c3e700749aa3211aab791b9e9e899b4e53f3cf1d1c62bbdc06ae2ac394be1a9694858919da321123184a8a07d01e084655b974e8ae6919709ffcc4826f62b6a5dd420b784eb881ae6e682b292d2e575a28eec33e21afe2fe17e024829ed46bb4babce2e65d97a656feae5f5bcd3f10312a5a102bac3e502a468c382349d47b6e7fc4435a8c56d61ca2c33d93ded9f2165c1f640cd23b0f36e64adfd4c5afcba0fe8cab87ba2040efc0c2f00d3fbab933303b1c34f15a60158e5ebf5c82ed18c84c54babe8e1e4910921d3cf829cad909acef813f174ea65802614fb567944b14630d1e4b063c49637e7110a2ca6de4f34935866b3ff0c3643014aba7f8ce5b2701abc1e0f9caa048e7d8fb937bff1c0319a1de8f126a16740d7f0a8833b60b56864f98ea428e2f105ceff6dd30a16bd24da9f75dea0f4ce864bd44bc52b73057527b73f35a7f9e7bfdde6435e68fdd781e82b69b22c09b139b35b5a47a385ecf05cbf2152cb5c686616f81585bafa01d067a5a086cee61113870dfa9bda1b2eb1975403b994e4669b30bd5354784b1c5126ea7313e3230fbab806e8cc7411149ac52029430ce0be92453dd7cb39026ef26451d2f230392670bdc181a0d0b24267d08861c5e5e0d00d85b84a0873c02f678f2522eb8bdb04c2624256e79396404f475be988e4ccdca00ff9c4aa86cc48ac5f05d2ff1ae536c5f576d719862d44049edeb7d25c2e78e328bff60bc1f09db639c10486d65a8da9638080ab92b3c9af7799a8149cc771857f3d36a495fd7e58236beccd8ecb68aa4fdd1f8b3fc21796e7327e0eb730e0cf78567e40a8c0842dc3a9f7451f347af2375ef47b560bf6f9cdc8e682ae9574b9d7c9cb4c764ee84a22303a35b49568d8dc89f74c0447b0f263ec71e4acc6de6e6116085b7edbb61ca4b198e2af4dba714c3fe6b9c821ca1880eb1b896b01d086e80a43ddc9619789c75ca44f8dc9d4013ed4d10c50976201e6f020d6993d42fc902b299000581b04d1db1a4c548a774fff638bccb298f45bd0a30ac11a107e6b9042c41634732855c7431610456d2d163129166cf90feb8df5a72ad9ca31a8613ca3df539f599996904716878028bd884b1a8d75fd0d3fcc6dd8e007f6f9761ba55a00fa6799b6a3ea67a6a55ff8843cfda811582ef1b553b27c05331aae09b5a46aab96566568153afaebb7b4ae5e71f7cfa6fe08aaa52aea18d1551068e25942f623c4b8e8a56f46e352cafe4885dcb1eb19c458580d2049ffd77af8380ff452acf5ab88fd52d7ef112c29ff6464e62465398fafd06ef81bd3fc2b4feecc6f45f0146c96d4a7c0f90e861a1d433c5deac14a019f50511d6ae9f363952c0ba815bbb3774c97c16038e82e39b76bd15f58f6c693a973d1cfcfdfd65ff61efd3d6ded93c3aef8a715097e97d24ddc94ba972fdd68c732e1a9001f3fcc1a71f1f9fcc1b98637899fdb949c281d858130712d5d5408f0208d62f5cd7f81dda2649edca15790c87cd4e24ba48a7ae328822f5a21e57f6fc5a6fcc71d532ca6817f6eea89f76b60e4fc7bd243c2d2163b46ec46ae4be40764f95d1a51efe6f6d8274b668c50cf1de75ca2b4791dbca7c9232d147d568cfeba0b44caf8154bd09fe8a55a8bf1bb1afa95226a827167b13f33b924ca637182b0bac8b56e03327986568016841bd25cfc769000a7c746b2d930d291ea94f371563b92535003c4bec0bea1b134915286a1665b643bd011015ef04ac9d5abd487c0c4d3c6b20a00646b476e518fc0b008960148a123365cb40be362b3b1694a8d5c05d23b018370f616496a52c2cd25021c3795baf897f812f62a5a5721ac8170e79b49cdf906bf71c83af3c445a82a9b0979506e7df0fff03405f717f51c69c995d11456b03cd8bf9395d33fbb127e4cf9d8fc8411a26d42617ff2d64e886ba9fe5c7d5b85b43fc4faf88e7b4eba7145234769d58d53a5c07d1468693b0f93bac6e2cf5a931b11506f556484824d227e448c0a3805f2217f136c1a7d56f3421588e286adec32d32422b95ce8fd81eda1c3e9beed20f03cbe487fdf2d65f59add2bce47cb5f225b2c6c09100225b4276d3cb5b6792be4b8f0489bb750f1188f371880930d79cca6b09b2e3f303f766081097bfbc5e538d3cd4ebf27befc9132225dd7428d444c764860a262e95221f0f1fe57f5ef3e4432d2be9b3c9954a88e58cb329ce9cd37f4fc8494ad1cef800a7bba8d2ce486f7ebd7a5bc9dc73458bda9e4c46c6297469cb8d4e3877ea8db014c04ebd313c6b1ab74abb69b03334d562422a6529b8e68f4262dd3ff05acf1c6d0074d35e4e977c665a26f86d6bae2c4d64114ecfb334c4d575adab7905729ecc6345e3726d7f2c361ab9d75de26315cfeeafcba9bff88c0ce812554b1c6ab0c5765c5618f1bd8dcde547b86af905406ea216e4eb454e59a835fd9648dc5c8c9da88d7a753a2516b50d93e7226868bd0c4c6c2eafa7a0696a8ac2f0f3e6958efc1e6504032b42962ba6eb3c5bf856cbc6bb090d481489c42a8e6d5721b6cc02b34d6650157752126de0cac4c31b7b073e2d6d546476682be55d764f5bb3154d70dfa9244a6fe5580db958e4a766f95a61987102d67707838b177d10d116ad56368c48e815b30fef5fd6554acfc0d9e64d3c4f6b8e9b8ef6af2e09c6126a92f0865045cf97c94070d2fa013be48df5e50bbadd9062fb6183b147f7dede8b571826f81d546abddf5de4f95a97bb75200ef5dec4abef4950b587763db4fcd61017a457c00230cb8aec3bd775980ba70362b6e8d064f81062eabc6149c115feca46efab3b703e76a9241c72f6b6810adda98e1baf07d6a7d8189f6ec869b54941c40080a91980fb827c61c1f7399539387fbec2d1d46a54b1f518859b3a385ca098b86039bba25d2e49b7968281e3e1c3e5c48f2012680d81ccedf131a8c8891b4134bdcfc70854fc7787d03671c9e55185793ff6926ae12f1dfe8cf246fcd33d88d159842e8dfc7c257836c98752b7152039eecefadd80ff76e816146635ed2d36fbcce101eee7daf1515676b9a2b203e1cfc8859d128852e25f9cf924c16d4a47272e495645a6dfde91cfeb39f4e6a1613a901e2bab7c975c885f6424b617475aceb396d0d3da14c102a69987f66f38599c60210dcebeddd8bbc80aefadb225df56b7f48d1ab0a8c92584a41b9fa726a7de8620cd32472c1b89ee1cd0e3da8b595f98672343417f766bd8d9c52f3cc1a9bd6e1c8c1e588c023ac6e5355e68aec6bcc303577faa7bff293265f9506c6107432145deedef7b254d5890c755a39f5b3aee4364373a931e98d5ec011d247fa9ef17a68b2df72810929a628f6ae634f4427c1538dd02e1c9962f33273cb6add06c81d6258de794f09700a9c8b2b6c3a30eeb00ece206d70dca75beff10e9619d80bf0a7d93f24cc82b33640aa992945eac34fff30584801e2ca0fde10854ec1c60cc5c4bf08753009063e7efe7e07a94cce2de1d2add68f2abf5e6fedeb161beb5cbac9ad02c043d3d157acf018751e1140776a7f32d71f34c05cbcdc9c08a7c7a03f596dd7164540566fc54fc1fdc2b23b14f002eff9066b55e30040ff5ac54b8fb6d9d643f939aca40e5005f1d5972feafcaa34f2a72d6ee03ed74fa5e70faa11ad4e8ad2d0f788900aba49c29090a73b3432d9ab5d933c115abe4718cc9e2a2d770e9cdc735ad5991455ee0496b0ef2465e39267af0e36c30da7f3ace53cf3f6010679001e39f6e2a55da65870e9793b447b418ea1e519dca3c2bf0e1d0b0b07ad96a0708f428173694f70a113c0a0f79b3251914d7f8af58d59d6e198bdd6155cc3a4468be06e0af9a1c94c488c9fc6b44e759e43695c0873c1415fbf56c065a3ed585a790bf38784ff3cd7baf3f4b22533d735684bbde582438d213bae7dffaf897289cd0052d6788718be4e3b7c071d3c6c7b75f6e0ff3437e48217e179e35db0f088e80c8aea5749c71fec4985d00647877c9db4a55b51f07198c232adae969c821be6ee6c2b1ebdadb00a8916b1f93b1724775ba9efb421df723d54cf22caeeaa1b6cc7567a4279647a6e099cfe285cb30cea5a1019f43cca22765a15759f20dd681057a0832833c15c54cb1e3f0196aff51abc2b0ccdf37edab8b536c2a4bb072293224e9d4e83ed427b8ab2b92f52a3fa6bc28269618922a022f67f778779bbd3d164aed6747c9639f1628a6643f47dee03112facf7431bfa1954ab2d58c7b02ee380b86bec76fb52093fa5419c17f20b123ef0b0b5c0efded93f18e2c0aef25c1665c3f91a3f7faf4dae9cbd84efd9ec0a5ac4521051118c1e28dc3282be83918c9b23e06363782ad6d6e99f69a016153f70845309cb9d8e85d0ef65aabb02b0648665ae39d5ca7ae9c4de2cb940ad8e9b5e0e59ebf2298c6e16fe35886fbbeecc719f000d9c9764f3f90f66c8f9a243bb25bf84ff7cafb76be8418da346319798866bda42213d5acf00d836b2a0487b7fef2fed4cddf10633bc7f2fc2c0e7e7c8785b9bc1eee0d2d5ba42fafd5360f9c84c1a9fcf8a76ad2916c31d66257c39a760621cd0ae7b4189e051036acd5aaded0acf934fef24fe71a14cadf03afd4b7c1752e0c2890930d3f74b2674bd6135555911face869062ba346fb8bfc45d09f224e69273d4d00d5451ba213c798811eac1b8fdbe4631313aa8e35ab728a1bb9db3c806c46db222980828ecc596b8a081368d73f184401ade2b7f6debae497ef70b13d2aba139f22f233b4299ebec79ec32f868786c60171f0633ba142938699a702eb57a26d9d6b2e955a90f1020e798b3903e9d9dd8f8c98888081174469697170c38d5737a58c8258c8a9361d270357e51b67011ebd39578f6963f18bd050d014b592dc375e006cd02405623bb724b1dade6b3cc632db58ea103ca4a3d939dee5df3307dcbbb3e3d0079fe70c6acfa53430f31075b1ce444454ab8208bc4dd2b71d3d8dec8bc4d49797d2bb3f6b35338e9f1100b6c079f327a639e33cc262fad9b18fb3746829af4c08ad4a84baf08f6cd31070997c6d4b78fce290807a05914db726d20735e0e7058f73856aba4dc8642c0fd52314e856f32e5d0dc7edb7fcf7c5d04e2fea3af94ebff28fa8e886d756049f0e8a4c2d22c94866366ab8b0350e1bab7094ed1337ce3002463e49fc894ccbfd05f133ab0500da55ee616f23b36a748c528ee8e2b792eaf869e606de86d3eb0a7822b7bcef21c010695c05adf371a88b0b36981910ce1317560bf020004077dba0bb55f26249beaa36e7da60d783cf89345b38e3c1b5928b9dcb5a677ec98cd4acdcf960d3ffd40e86c6fa43ffc198c2bb1ba99fc5fed92714591730fbc7a64ab5ef06e18b5f18bd37fa9c3d954239d6dcbba27c3081eb7944d53428bdfa189a83db26d864dfb4bd729a2ea41ec866b8814d8a0664f0dbfaad60dd54ec7c61358ebc416a6bf798fc65c408e48c785e9a0746548fa593858cdd067ae1e0b5a35e49a338dffb1aaba512f5fda377b8f3f4aa6c76f2d33a6d4fa73169a9a2cddbe44b49075efccb37acd99774e63769ae150647f354f0b4b93ff3028c66de35f1d715146cf5d5c1a854b45bb38a5fa45aa211f988b4c9daf94f61ceafbd989d168439c63b388672d2b0bf170b037e5c38e89df56f80d7c6645d7c045f4118fc79b7c667e0072500d627eac7bd3a17614934e238c2f575f4a978fd53246da9d3df02a28b9291cc09a71361b010d1605e86f4f58298cec9be2f7e17aedcecd5d87d7302b2290f1313eff056b100ff9890dd989f495182e2532c691d96aa97dbb2ce6481a0f76b4e26fcd97a02996c39347f90aadad5c4a65e62f9ba6f37fea8df342d5c6cdda448bbe7dfc4a461fa8cbe1c2dc0a78abcaa67129b998e6f9a913a6e7c84e36b936f4db32f000d06bcfe8ae2d5fac04cf45bf3fd3f117bb0b3da685e109a82f200a1e0d7f8522332e5524a3fbc6e864a86f9fbe30558b3263847d890afc1b64e835e1526ebf69d743a13717163fad0f9e058816a176051dac15dd0b7e2f0ece4d367abdb72a339898575595bad4acc3b46b597db68a5b6141f850d243fbe0b3cc113bf7eb27fe4359ddfc4ff3ef16bc7acaa0f3524f310679c03333d3fcaaf2e7507ba98f8dd1b770f36e426250b1ff8a9d4bc25c463ba8a7630a582aea3252e0ec28d656063d6177f74b1c88d457bf9059895e570cecdd6fa724d2015eca9c76ddae2798f82a181582723d0bd2fe875792e22bbd67b111812ef40703d6186261d6be2747c72746960fab45840f4ff6907949f20902b065fdee98d2c13ba04152bbc70eb415b14e172b028771339fb0ca708bf580bd2fb6a6d6efc0990ba5d213fa95f2efdd8b1c1b699841b8e154451c5de23871b54be129af8e3043ec5780cc395f325d33c4d932a30171ad6c362281b895db4b604d1d097b8f4162bca2f6da265e7a2d1130043a9d21c95effcca1ef06d47c6bbb7860392e5b77d17706b5accad18e8bd19ee8ab2e950a5d8f6789119a4dcb02ce64ad5fd29879e948be85c8c35669a06b2fef4fc27ad44a3a5cffff063f9268ba3b8c54a777bb750eac7e3f3ee767a4eeacb1b7019d3eac82fe5f943bd042063df081da663ad14e7f4661e550e495f413002a6d3eab63e159baaeb60fb7766baabab0d22b82221bc37ed6ca672ad60102c15d040e6085a1f4fe67bcf63da0a15205892a04dad9b3ea918adf24d6479fd16e935badebd0aeae1cb6d505ffc29abfff2708db39d1ff6420288b3b779d291e3ac4b944512eca4f63f4e1069281a089d91d3363d15975ffdd1b103e4e2c163bbeb915a5d08454857a9d29d24b72a7e7df6e3a7e90ed517abc95a448aa0179959285247f17cc8d0532fb13738a6a21738ebec71e2e68c55d8a8b77d456b385408650e627970ef13765744f4a72e4990912186a403f71bf2a9b8ac7211a0499266466c65de65157d36302cde084d348ba46da3efc430677bb5b34f75f39f16bc710dbe9c4a4869cc6e820ffc59239b1049720bc24f5e59395f0f0f153bdbf207df37311e0d85db2906f70645c876c000583812026239a535cc06a4a6c2201b19560bf574825662aaea2dfcfb3551752e89459e4082e9196dfbe1251fdb94b9f997689be8e8609d4d78fade40844bbad5caff8a07376bd83a13141c14d0ce0eb0a9b2e621cd7e031660970aa4be5f7dcb5d15c2bd2ede463c6fb2bb6bc1abcfcd7a1af96f1ae98ae81d315af3713d000ab889760c12443ac5fa79a48fafb39bef31b3c3b9c636927e868259e64ee02f2f9a5ba0b9f1c4b2a9e7cb48beb319433419798210d720f6879e4cefe84130bcaf22c1e270f3e7262a578ced12348bfacc7ee33573d2916ea63ae14659f467dd8e5f72115537fecc1406e977438fa47375d11d5327cf409aa1ec22b0d4905084e18135917ce073aa8bdbf4d9057bb2e7ae21cd46342745b6c1a43631a5a25baf33e59e461339e402f29d787463c8d5ac2a889e7d740b7baaa588024c683aef08e721ae1f880966e35e8288b4724d97f6feaa0d812a9e876d10c7c8c222742ed14764b183b66100f3644c98ee165abe1f36a2395279ac1cba57258cc5a26aa5520a16d77f075214e439b6eecf9791cf735066b66cf71442b377775018c9ab44312fb5a40c4833d198a2cfede24b5f8bf7e4231c62c5f33669a2ae631b3a116af83acc02b72e05819f01a5e1f0492b5b11ee1f3a73d8bd473bef885cf88b2e8e35189bbc8ae8c261521a0000cd0bebee7295e8d35df1cd49f078e68993fd10373a53eba652a3f4be4016b27961e93935a059a321c20970e694c4678813216632a684de2ba44885592672cf46e54c9ff27d01b29676ec1c058628ac1e7cb063885c6f6e428195a37698c7f1941c3066480ef3d4c8e1b601b6b65c61b21c10bb3d84d09f7e1eeb38b7c94d1fc658c57106b39cfcad009e4e4b93c6d969b0b7ee231234cc1383e71623de0c1930db8a8dbf266df0e2d924da51d9f49e836b82d2ce0bb30f50bffad57cb960f448965a23a6057140f7da0b5e29caa6f95025027be799a52fcc906cfd6f55cc96e712e11ba2bdfefd3ef150f1f04f6d8de5d7f5f9f9262ffd4c0509078cfeffc27d9bacdcbd99cfea305c080c296d6699654e909a3f8b05ec63ed6bf1c01f9b1b1ebcd5c3d34f8d5e8a5d3386626297e31f510a7dbf67751afc4f77effede7186e0ac5a05c4cc7bbaa0ca610433f49bc9518f1ab48049c1dc8e7ab9ac646e024225326431294d5335d627c3a6e9e8a06d8fbda1720dfd868c071682118c570782845edb082de727983c8e4be4aa9196046dd5a92f7e3e9a3d993613c76af2ed052681ad82d8446aecfbd169b3a659d27f0b012c45b9fd2d5b022492fb34176720daa6af6b61d245cdd44a017fcb0d82b4bc34d8c14d8c815b75616a4b8a0825658e903767625b4514c8ecb6bca7e3cf28d065a4b18456ee149ee611f6a6ed9fc8060a06b0f0a6e3de41e7d4628e915808b939e901cd0e48c11deb612f94b1eb4d589df95e2b19077aaff56d57afa46add91f6274ca2117fdf4ec9ad15f2ce0eddcadaddeb39117da645bc127188f7596ca6c7ec46914c17968e3c2c976a4d71f7f8e853a558d6f09cd504e0475641389dc5811d424893cbc25778b3f9ffe28d83db243f69d7fde1fc646d6726b7ed9ba058a2a69b0a368da3d7da417d71552e231c3334b7b37884f84d831e2952e80b10b205eb9b5c02697e110e3cbaecf4e5af641335a6f8c4d00e8d2862717d2164e4ef64ca969d66b23cdf3bf06f801fef9553859094bbc872153589e8153a49c233294fdffd46656c1304642139fecd39fbb08abd4b8730169b9615d4809910dbf0a2ccb1fa8d0c38c950265c77fc4904f97c11c5e59b9f92bc653e67bbb8ec57e1cb7111dbba62ee56eaf48210af4f5f238490a4aec16c6c60fb4d968915a5a6fb7e6767111a6dca6e279498aa016965c58939dc65f55863d7c21b6885c6c360b46772571acdd7b3eebfbeea2a681e8e10e4ea4d95e259a48bb53059650c9914c768f1b9cdc3998558b5c3fb2bb4a643c85cf4ac4582d554fa71a40235700747589a8f837ee85a9c66d18bb3d010bd28f47505c45bf7d61822152e6acd38b3103115e3f4f4839d9ed1fdc3a9abbdb8885274ebeef30278964b4833509fe21a75875b7a1e59aa1f293c9ebb12e2f8f2f112f99fa17c5eb3e7f4991416e2829f7fe1f851fc3fabfbb6c03ca56f72f11e5a21da6d3a6d9696e7de32137173b91c2f6891fe71089510ce634749312f9ac7124ad7b6757e4ff3d7594057e65742c447d56a91e718ce52eba5bd2d70c9fc35c463a9dc1c8591d8dd2092a7f6686bd784de00568fc57ace7ad9ae6805c37e8b751349b9b3ef1bc5cb2cd17d7a11f3ff522151311ed21e0b9c9c5ad9f1e4787e9cca1732f1666fc70b51e9764e66d1b9d30a1d88d75524d3fb53e5fb3a618b50200ed743ee6b165b147726120793dad8ab8b10e937e32de51ec7e3f2a3dbe047895ea4a6ae75739ec0e004cd0ee5fddea612d85a1ab88d7d2736c6e5272a40a3e47d013763d5a9b196a4c494ebb2ad4c6f72dee216b533bff8a61fb1a5dc95f39b4206ea2530a7844e77df2500fdbe7ef344d09898b7f3c5d8c79e3f9e9e99981c3df0e3dd7505696fde18c154f7e02d9bcfd47521d7381c93ba2cf41d78f561a3f53eccd577758e03fdf162e38e6b7ad8394b396bfd6aafce275591df4e8032d64784b7a731c408694c16a338d771eae93499d4051f8c668712f2c64fdd596bbb9a10a35766928428914a38b8a557856e13f97eda358b4489ff9ca5d523841f17f746948d5aee5698785e51492d8b8f6b6ec652b0c876ceffa2ed67efa633f66e21a5f435caa7a7dcea449d8e8a9bfbbbf8357cf2380a303ef8660522910a645ea39fe978baa4a3fcc588d283046b5267851f872aba05703ad893f89188b0714dbc4866be93dfb1d0d04e374ed83abfa660da4c6c609a3274e432b71475270e532f06da1210163895ef1d4a256adc7f300262158de51086124508d017712fc2eb1e2fd2d92222ad09b2f53009ab06d9bf5f3e71e7383297e63ca640e44389dbb99cf0f4845f71bcbd058bee28d4db1d80a328aba88bdd9a80b726bc51e53a92960a985e7b86ea2a8e88e6e3641180eee8cba7303d54eb60aa3860a0505a143ded66dc49565e0a80c0b31fb85f4966a2154c9d64eabf2dc8ef2a2014cee92a3ba64c27b3bffa528c9bf353195dca0e95329d8dc1d50b8d5f6cba99dfacd70180ba326bafc24a472a65a5929d7928b11443974187af4baf36da0e89ce5f08c5bd698fbfe81810bfd7762c0f5d975fe9c778e4f1166a5e3d8fe0de5a195e128bee49302ad6e1788ad555b9ad8ca4892d11df7867bb6edadc878894a0e199fb4bc05a34e04be99f27af0916cd68dd2fed1b2e9582cc30b8048e2f848d49d2955fd5ba97f0daef913749324112ce2864ba84998510a5281c1df35afedd4f98e3eb6c7b0c0a98b3477bc07e074614cc4d85fae7a151dab1a2ed42c43a38659b2fe859ddba5da7d4f2a8f63442bca4dd3e11b4b981071d764b8e02feed5b956eda0b872885ac801b678a54ee120e31429866ac759f6f373a0f1b95a3f1b42c1087371758e01278a69eff2eb0a2f1221629d020c7754b0ab0de3a0d6a0d2cb1e90f23fe08faff863bac1c837bf6696b734d066596022331c3d1cb3c3bb9be964e396a1e856553b6d968b73066aed50439d8e9a64a332d02a891c1d6e29a81e0bba8ef5a9f86683d83d72391b67b62d1780c77b6457a265da0b3599e0b7918e49208cb5cda359676c8d96191547ffa8cc717cc7b6a6f449349e1cc4beccfe7613f0d3b715e4882a69ef9173ac2c261cb62291602d61bf53ad9652186dbde45ffb908d1316e4ed3c1d0b21e95ea66745ca0f5d480f690d2c519b595ce82e967644cf7b72c9cdf158da5a7e8443a6c7b60c129f2063cfa9b9f8989065880eec8dacf623e93db8e99c09cd5d94df9ef277ea6471ac2911a3c86a92831fbcd52e3b3af31ff8445f043bc48bedb11069ca2b250ea31fdd4228cf2f7735b6012dd9027594afd09f0b5a38c1675fa7f6035d3b5669fc3375cdf438e635b62e7b4ddd003c8e366671bc8e9ef38d448a48e52feb48510daab05d38fa18c7d8c0b3a5e8420f933737a145de6130c74925bdcb3e305a07202f91385af1dc4808d026d33e6dc360391b8358dde02b04e6935c783280eb340fdfd4d015d2e525dd18cda917730df9d19b7eb51ec0f53b3aecdf46ee9f68fbfe0c71896553fc8e85115080ce5ae3937d69820757d54b4ea04476815a5321ecfa8667b5ad5059a4b5c9e4e0968a38900c7faf1d52b895c8420f1ec7fb4839fef81dc2825e602ce89f3c06902b61fc0aeba09483dadc596819019c54d2d1c52ef98bd2f7e6c3053daa2cc69529515d9cec00aa1a6aad3c4f093857fa82cfd78bb540772400277753a1196bd4005a91a3650f65460b3a9a36d6c53551053b95e24d1ec4d078cdce647198ca0463cd7cc0501369399fca08aa9df985e11bcafeb40899d419a851af6398eb3c15ce33a3d90055706c1da634e3120aa28de3eebb9bcb14e7dc2e11834b12347dc58b2292aa14513bb993b78f8121cfbd1778e1ee331461a556887a63c6a67d3265080f3bbf156f186a26bb800c35ac68c0a472eab420aa380146dc9076bc00c65e75e4dba58475e8b2c77b74f292db225fde4f6d2a959f162855519f07b77677a56c7e0e91c7154c9d20e400eca9e868e8cdc17027ee04164bd29678d7b8e6319730f060ca1b246489803918f62f9b7d759add3f3f4dad0a6ef1de4f4077945db34a570cdec7f7958103e0f73ff1ee8c466ea692d1dfaedf7e7a7e94484e1ca6204d044f468f4527844f765cf4eab0a33a680d770ad3507002e35ac84f6687ca59e4fcc3bb51955b2d4d98068d5d44a46ed5ef40704d3fb7d10154f4aebeb5d6a305de2cb6b2711c5770bf878f39f35779620b1d695c2904da2f6a595852630497caae4cc9a822c4751b51cb69d635e6ec47d6972a29c59515e2eaee01a5589c03bc24916b76c32ed9b78950e910211e331b033c052413e24ae325af29db647dd02ca06cc5224a8ddd55f26ac43a83d96e0beae9d7b9ffa31d515340cce114c66a177f8d7c291bdd49c1490e880d8f82ce4ea6f7651404d81367362f2a3e9b0ce311eaa8fb8525cf8690a8f943ce49bef0aa03caa44fcb439b8b7a31a72fbb61208a04697ca3bbf8b5a0606341a0e784d6cb82b093b274ebb4cede80485b612e321be1166e3c84f2bb1789b343863ebaf12ca70a92ac55a78c7998764400fcc9812fc3e8737af721a4d5cc5264f3a291f25e2b52abe5e07a38ed0932614e87fc1bee6b2a8b66b83fbaacf3f1b49270f8c78c5468ed6a7e4d2571d60cb9808c8df22161e553f1fc3361b0d4227e26d087c80693ae4c4477afa54cc53c3b15e1b3f4e137f9366aa52ae0ba3e5f2d50c84d243d55326218faf8ffc2d6e5202bd20e4823f1b4574181a7470dfd658471b2655b40395dc6359ae87a53f19edb007b977cff3c4b0dd1b2b23d4f4b5103cba48612cc2a8d1dcd208f85c903caeba0e6d3a7348a6129c86843df4bd2b5a50699955e9c1d6c6200dc5bb2d90df887813da1b9acc7678755e24da71ba4f60720b57ac93e7f8ca9e4c9c0be6a608008e5f5ebcb631542c9c2f6c408279633b43dd688ccb4679ea0e0d60267f194210ac7d7ff258f76525bb51e2ef7d72bb10161a72083e7de7ec3ce96f53ba4f83eed496525ee2ec23ba0e06713cb094637f2863d945432ccd307ef45e62b25266282b5227cbe0c9b27e2eb55c7c15510ecd3145c01ba5dfa6b57ba234d1548cd65e851953e0fe25805acbe0be413d12526dbf031d07f8e1177d3377a2575fee0dbf74eb62d01187af05ab977b1014a5f52a5a6f20de227f3a537eff328edc4a170dde3649d6778aae839e1e24793b44b4251518f4f39a2d87add841b3eadfca7f57d968e27587bcdf516b425e59866f31c19c2ff71c575fe262536499d92873266e559d4bd873147a449dfc72d80770e045c2d02bc3cf98270d5b66031cc3a8020e688c629886cd664a2e9e01491262a51d5472440257dff2e991101178abdfa061850683747fba1575df27f75a96a4d8aa64da924bb79ebe2e1e23ecefb00e88157f648c9ae937a5cba7d26dba81f9fcef54a4d550b6977656fd6be5226f77799b1b731f7f6f9ead317bb6a370075e4b5314829a0bcb4f67f35435df3a8303081a1d427409b01ba7b9824af827759643cc07c9ab6c20fdf9b94a54a3183d21b6f475f7b7cd8a515c1cef21b386368a39d855a92eabbf9e691ff24556ecaa9e551a8c415d89a0305c15cd8fa9838fca767318f14de9197e878c573bcc853a83107909311d62804fe87c3bfb056cfd43df4c09ea3a0d21f933bf722bfc924d1430ba51efba89d0c5e9450eb71f9e016ef8833d0a06e59829e66398b1114d39479f03d506394ca034388889b5333f1d0bc9fd8f09b7ec5cb4589aab56d96b2a2d16aaeb74d81a011ad5e54bb686c1a8df3a1447c7dc256cb670644010f68c1433c187b32920b9311ed70434f597258ee69a55ee5434c4c80623288f8cc9889498a5fc6653f4b823d6c3e6efe83d1bf4950ec13f9ffed06013b0721962ea59b8ca86cc06f05cdbdd0d2305d93abac05726b527177683bc28b149ffe1fafa89c009dcc0caf55e1d9bfcd1c4fe397d3c5fc0c6da383f4c41daa66263a471ffa9d981e47f85ed33653fdadce24b56b94fb30e567fc6184e01a8905a7aeb5925859118a1060295d50487ba0c1e76ca8f99e22f99a39b809b6505842261b0d4deaf7d83d2fb26bd39d2038bd1353a36ac970cadfdb87056420c78d63ea2b2a7b8289306c163ad35031750bb6adfaedbe1a7d51f5158cc4b04321c13926f56809b0335b6d88b5f779906cd0fcd5b7c0f0bf6d57490865b51ac8c9710997aa076ad1c40cc145e65c02d25485362c3f949763200c123e7cf1bd09cf556070bc874f0ab53e6988f439980de48974db3aa17f6137067fc13aaa24297473b2302d7b44265f473fe4455ee2f9d773feb52ca364a20df1ed7c6c78be155870a586e2132871ea4fad2b4add1d2c7040b46554c5b8586744dfde9612a76439e16bcaab8daf5cc20d89f880251a9fe6208c314095da7ac5ce369c57a576361cb1f66fe1da7513f997fd3c6e77b6d166592a749034ea50feefdc2f7a1bd4e6ec60fecdad23fcfcb829fcc8eaff523797d9dccc24145816b74161f3f6c47ab2b8632b0dbfaf01938edb025a9c9dbbe795dc542c24bd7135c7c5bf361c1c3bbf4a50497c9ef18ebab83833e4452a3df9657850d114a9d102ab023ae9cdb3db837d1b321a9bd69d9a278b97d1e086a2401c1ff69f5b228bf2b6cc7fd1e4aa6433c0bbd64a74a42591dc0ddf278cc12313d7d1b81c316018206e1f349b4ee5e3ad47562795c9478d29946e442c4494b6b6ae6415258f179cf340a9f99f9d16fab1a9f05726e37897d034d3f9b469daf9fe93e4c3994196a07c5f9128f04a17a8261a6e527629565c2890eb803722ec91e30c06ff14f407809e92f184c45440b20cac6f6be27fa691d140e8e584b623ba07dcd1ce6103c844f125671c253961ac00310fe5f4ab96bb88e7d7d7e1ecf63b5af80088110724d6a5ae7a4f6970cb920b3c055d82daf8e0b1ac53aa6679f5ac85959ab6264dcd6528d5a3f1a7c7fb9fc0e2ae9ed1e10a3331a450d6887fc51b0861b5f461369ae74099b381185fe076e2ea69b9eb54a699c9268fce1b3a07daf6b5dfcc4c02975307c9e725c3047e0fd1bca91f3133a5a14ba5cb001ed0523a95984b1a5c1a57bae0f3f556cf9c0ce59c2c4f892d0502ed46471a6745a5228adc2edf9f892b906b5c0e4e033feea3215e2b140993432d4c96c91e566cdea64a5a43648440d6cdce43c803ac6c3532d860473abb463d0737e6634aa9b20c78e73c3bbabb6cef59c8dd38fef882ca0c68866737731ac94fed1f8ffac930777301a35eed5c538ba913a1c63532c5fb6188b5c16ed280267439dca48f966c2a43b4ffc61261a17aee54da1afa7b5d2a92245beadff99989eb90a7c1acd3c6a066446987f64cbd6363bf750761e4d7c6c67f15118f782c7b9dff23b61bc124650ca02f0c8390dbe4ed73f994e1e5b45644838c0c6064624dc7761d3254dca99938bf376bb979921dfc19864a0fa2dbee6eb33800c50e4867e4ad14604e053b9a6339d5aabc5fdfcd160626a11e805572666d182eba3d983ae48df106572c7dec35eff7078d9ccd7e507c1e9a6ca2407231a0783bf13d201c4ddae4f9b77b4fb855f743aee3de013ba45d8a6420a476e52d38afb23c75f2f1bffc4f2ce861daa4ec733a757be06c5c63d086081020ded0e38a7ca7ffd27ba5cb21bc403666f301572e1763b2e60a7c0847244f540786740d26f0d1021a2b81ef853b2f07109f7094d4ae75f4e84cf1bd63ab94cb6a42c38b9825572036ab6961fc49dbb24094b2de3f3365613a04e557359ead16d4ab1e73be6dd71f37e88123c8b94c25c8b2bdeb89c517e413d9d09c6cba7aa3e573a1f5621948761455c665b713877db28d7c062ad721bca8b7b28ecc060b8ed68b461e9db67d4808e9e2446ff7a9f2e59161e6a0fc484afacee5843ceb45e6fcae60af3ddb9749f003d9889039039fcebab673512ecd739ff5b610a9a90029213e112cab2d83a709e19c7ab3ec16bb60b0a53f654f55ad2b734df700a100e5f2ccb0cca15802cffdfcc8076c8f22dbf9a8d42bc6e00b4548acc9bfff67c5d812ba4b35991d6c58fcdd60cd3f708e06ba59abe93bd44831cd6e403fe2d71b54ac7d813cfb4eb047bf799bc95f460fce9549b7a9a489f4ad105795689cfcdc9225ebe59299f6989b58a3e0065a9f646d82aa27fd954f015889562bdd4f897fe642be846cf3afbe2acd4e2e40e842ef4a44956b251a8bad504676ebbe99851701584f2f4f69aade1ffc639cfe3243729c938c15f26f8c8571b5ae94b02cd95b26715034390a1f1648cd35b1f0614baefcd2d7cf27530d6cf8e26f553ecdbebecbc1f6b0f2d3f152c5add956bae4422470d5522af30f13dbeed7580f2d3c9404cdbacd60bba697e85aee7e54ff7b4a6217cd29730c1ab867cf530de44478ab8c3e57c51866136b0497b89749c72c2fb8ae2b9cd77ad8c6d1af8878b66f64acf9df52b15d9bff07669794a751cf198cb5b52228d9e810321dde0381b9e294a60651e199db8bc0784ada92d86dbaf246584dc6c482ae93fe74cfed9d2e708f49de7513a07cb38724c7ae1cc3a2648c1c394fa85c56043060ca058bf7dd4dbe8c515a8057d7c56eed326905f25f00d091a9f6a2e5c528b670ed8d20a1338100dd2df256b7038ca7b92675138ae0283cb9840c9363a320d4ecca6e37bce9776ea21add8af8d470a33dea35c40e2fe88952bb3791de1677e7b9c32acb116e2282c2c78875c685ec1621da3bf69c3ffd3cccd9f0f0b08fe8f1d126f9db0440280a00dce41ed7a43ec3e6429f119ba69c536d6e384fc39715c54bd37d0de9232dc2cb4be2c437cd2b225d1e663e10e49c3de42bf6bde842fa49329adf64d81b1574c368a443aca940dfbe491a33b63db32b3190fe67dfb7fb86994eff1c294fbcc11ceb35ce80a600f80b8c79e60a88a9a38856535203daea2878362368f2e1441f5252878b016cd943828f2eb46da23adec24265b6af97693e065848af0157b3a6a6c65a04b0bcc8755eb1acfbec2792364ad0ad226d5c5a3e7f9ab49de80a49acf8aa5c7616bb4a67c26bcbf466eef8be47fc155ef610c790591cecdb2173295bec56ebf4fd91ef9fd499fdcb68f36e11e6c618b84692cd0ec332c32fa652d952e73c3e3dd35c55a9c05f9b049821cefafaf3a59d7680aa9ce02472e2fe5055125c9b9ba2a7b25d5f6906cf88628b994085604f93a3f72c71d81758c471ffe2e3aeb47a8c17fa5d75276d4fb1123b94098ab68066b45f387ffec1d1c79ce8d905705fa504c8d6811cdb28ff827c1848292ab86f43787157dd05764ec1482f6adcd99c3d54b85c1896083cc31b5c8026d377cf8a4ca5a18cd75f84ae7461a81045c0290558c20fa6956c4f58755dda891ac458a6c915a2076467e537eebe355505fcc2c973695d7dea386a52d2155de2dcf4747ee1374bfae34f1e26bc7f26036a53735013c670e5a97765f637723a0404931b578979b94f25de1d78b8bd6dbc8190112f05654fcc37a2e3af0cb2218c27af91d96b4dac8c15c7891b08e339780fd9cbb3fc54ee9521ec8039151ae5b447e7d818535cdf3f51fa49a9099af7774862866a17bd8cc15acd395773cde28240aef35970651d141b1b4dd950f79db94e41dc623161575815f52f34b2c009c622a8dc0f5e3841a36edfa29f450341137d0a61620dc62db96d6a54702d96b3c71782051a54cf1dd63fb6ffac8adc98f0f85c2d472018d4129e2458df225c357e4c77af6284500ccc6512dbf2368e1057a2a1bb6e95cf5e2421fe6f0b616ece11b16ee36e39ac2d9919423c7d59e77810173c6d6395a93592b4626886ff32925dfc8d6d252ca7b642a8f96bec5b034591c8a8dd5e5bef050e3250fca3698de501b4147c104889e5653931be758151adae8edd7c7a859048951f53eb462b6eb17b571b9324b9e45172bb5b1c93c6923255fba2305ca28cde0c57ec6da95269c836cd41e3cc9f24116267ca0ccff81d644843f10689364df823e60110d295da8a109b616f77464182f1e933abee28bfbe3e893bd059ee8983a0c28621dc1d734c04ab7e3c39650ed778a7afb22e811aae45b0cbd8f2be085e01ae9ae29d98ea42b353f053e1b3e62f0260fb4aaf91c94bedacb06c9814b67792cfc18fbf0c74004714de8146a771fee831a8819432a549765e3d98e0381c4a7595d38a2415dee9b38714ba48f3c1346c2e5a92f5a8a80ec390e78e5faf01ef784e7f9a89746988302cafe62ebc6bea14110f831a65c195a164741beda5d652b95a05b22573d231f7376b3b80335d3fa56e8e72c2dbc695f5252b01966864fc7228549da767b82d7752558f7ccdee1fd86cf25b09c0bf84e6286df14c5cfaedc4529f20863117eeab700bd3cbfdfffa778aed414080fc42a8bdef1901c6d770399857789d317faa24cad19459b7870e7acaa3d6eeab55af56976c683bf101caa052643c878fc505476e8e9e47a9cbe4a9de664d58c79c5c9b66a524c631975db9d4bab2706e97e207a4acaad781d453d39f7a13297459ca8fd3c5486210568907e32505764e8ae1315c2c38b82b8a2196ddb0ba106aadfe33e9c80d6fc404353b4e44bc6695535f505b2e850f3db9741e6aab44cffa74ab724f1a064f4a6db4f5ad8eec214dfd50f7a48b42faed430a590e582fd8af38c59dc0732f03a39130abf80bd7cb216224990b0290f837c605dea7c9ed496a879ca50756c22a92036789068b7ee0b4680d98b0e5a2a3e3087a6eb25e717d18f393ec21ccb7f3e4216999d30ca8589fc7306f11d49e2a2b7c43302697d17b789c3bfb8b1cdbf4517033b234913ce80685bcda0ee097f8a669054bbd016d0f6c307acc0cd308d59cbdf7f87e4aada45e74bfef42954633481911d034ea97cac9323a4799fa82d4714ea6c8afe0da1efa2e9d869e1aee36a5d67b2d0511f77de5d325ff0b42e06c2bd8551cc0cf5cac7c958f9a625ce53dbf76217b52e473d57d1c906e24aa8c34d192ee6fb88cef39afd66b847e6ea395eaddc45d12a1586eb769fbd21b955ce3a499ec868130c8a6f22abda5a5c86c7acf53fec0d1373feecfea2a35039b1dd5f875e715a28224a278ce96ee79c13593e2cba3025232e08e9214042ea99f9380e35587e160a00b41b70f1b0eb4dd71b07336f46079c25be95471de8b42a9f4fb03a1ac104d4ec1ac2c3acd51058d10ca9d3b7b5657d7dec74845d0447fa39bda1fe7dfeaf26daa8fae39fbcdf733ef7ce643572c5d5feefb350df7bd18c9235a41ecae829193e2f47b26408a7b8e9e844158ecaf50b395722a6a476a1bc1212d9b3430c09e802f0d3ef353abbcf29e0fe0358237e2049d1f93e660f5ded31e438b8e7393b68cc6880d4901044081464687079bb02607a4977416ce5d1823d1d9ebcf7562219a2bf767cdc7eaf0a159fd12431106a23e403812c4d948908132242e1c97fabbd69a565b58e922d13a728e92b04c877e05e6e4d877a9d0a3d094305d89495cae047517463b8cc04fff0adee7f44858a6acba6c5b763447b03a42c1918dfb70f54123c18920b0597363af65b66eee6962d91221d23565ea50462518a8e60fc5ff7964e11cd80d04bbb2412e29933c293db3ec78a04f38802ace93251af084677107f9b580f4890a1c6bd45e3225364a042ca09a6a6a5aa53d46f1e3b407fad951694d4c3742c43e10125e8699f48a8d133b8074995abb90e6c1d757aa773558d4a4aea451dafe0aa9b4c926efb29afea8d85959927d431b3809b69c2e65b59e30443c66cc6f864c6eafbd7ef32c8eb7a1dc6a663f5e02acc2249a3a98c91ca21a25544af94e246616c099a4aa12923ffc2ee23a3694098595e2b8a06cd236b39c4977c6e3a1e0a98b4120a0c360bb9127e332cf3dde68d99cb086b9b0ee25dc287e2d3f5420330516cac8a4e04449cb6076c795274f1c54b0ff8d554f38526b09eca3771606195c5c51c7c995548e91171002ea86bd4bca9c893691fae0f689feaf12201d31d0f2a1a3a9ae7e3b70d787bdc0c3a2a76c9b5713ccac9026491bf43b5323140ab2a0547d84ab83a48369baf87565bd8733c6fb9cad027f435f9ef0cbe3c402e5182fc8879b7216394b33b855f48ca8b1f1ac798bcdaa6dab95be3da780be57dff876a641e71f5da35da0490d0639b9c178c95fcb0e1602ee3f645367b2c684b90cae2d4722a1d54afab89642e008970d172d229c1fa4963635b5735e3c2c4ae30cc47a0a906c85f7b38a9335a24e87c2f74aa5c94902d4ddd087a9d5f65cc3fd5cc543545854a47a4d0a53ca653be46c4c0a5bec89c253344b000bc86379a86f2fabde29f2b56e08d6eb3278689e3611b97b22bbfee3d3242b7451af288f34c3ad642ed7352f182baede02a5deafa1844f1084bc4b5bd9ebac1e5766f7038c65868c970dcce1525c4ba4557cfc8647ec40f9043c4b7027350472693fb7371c7c212a368f1191f1cf1872aa3de694ebe05ae0a4f5ede7131856c643d7bec87cb58c02bc22d4df105cdd1810d4b9c07fb41f4cb824c03ac290c3a9d5a76492491616355679ad42bc98b06723ec035049726cc3ffc72072ff46ec39a9e829374b6545d5a2b5ccf34fec3f1755ca0e6e5b228e0674d8df64e3b8de4ba669490198692837079a8828cb0c2090ded5cdc360f67f21057826e4834901f4d306114805513678e4823b290a28beb8204ef99ca8e0d6429c7aa3e2d6dc5ea23ff89d325352fe7c3aa6f47f67d26cca3c51c383b62d27b009235af15ba039e84cc5755e61052f18ff2b16d2e7fab90e94cf30c36b68c2368727cdd247ada97ce1b5ca19e47f42a04c49c1636a68d74e5cdfb53a237d65d3dd421b24ba59ee8f6d47bb3e7bdf2472eefd148a9cff0422d8fdce5a87c43ff8c5b33ec890e619a190f147800cab6d1835ba2bfe2d932e9e595a87246346c5468f1f7db9bf08cb1158e2dac85ccd8ffe8189e30bf0487cdbd5d1fc1ffe34130b8b1a2191c0858d64f1e216a45fdd3e5591f787914cddb4557c88e6f5781d486fbd0c2dd7b68a9f3a9e05d2d29e7aef4f851d421a26d826fb69d1063815db49414296c7a930467649f5b875cac06134f9bcbc2d6bb9c88084a6ba106a6542bd03a786995d03f8c515cf66004b64f5f7bde8986aa02bdd84af0c9f6f9954e86f046950eb139b09f270be9f4b5fdc355a972f0e136144f1fef3be3d48dcf2929464b8bc255c4e814f000db912e999e59d37c272bd5adfa4f68b237bc851c2510b358d194adbd97f6ee38458de219fd1faffa0ab3dc0591aac11f61a3a9342c085d23b6c844eb3ce8c0dcdac17553eb1316d89ede3c84622224d63120f1a23cab58f5462386ddb407afc118398e304124df2358778987f85588356bf2a89874b9b4f83e326e36c9dbbc7d761fcb81ab62a72f0aa03107a5410dfbdc35b8c25e048c25ddcd79ad53ff6cc1b00c294b420c15627fb66d76f93fba4e560163f51766fa15d207b63ade8db5d216b17160b167c098cbc26f19837e15a6bf3ba37f93d5ecce0c14e2c7c780debfa99eba75add973226988bfac7abc0d4f0418469ba08cc4305c60672c97bf71e832de7d48b7cea61ac81e67de5e4971440342624fda46bf6b8af196827b9f85b0ddad4746b67c4ba2d7d4cbf1e7db99ef0a787646414d6a779a05643a821e6c7d22cdedf473e70050f4953d66df272f74676904ec5129fd5469762d8864a3a15819ea7c5a1716b628862e2a4c318d7b96384b75c0de290c035d3444bcd196a3f5ad1464eaa0e0c8a3190cd3d00f9c5cee18c86fed91624784685acbcf82fc86a928449460dc5b791da0e973f110c6e7230bd5b3ec98caafb6d4ae0bbc515664ec0251e66d8f210049797d280563418218f07e430ce2096600e2cb2c797230b403f21ee8e88d2c3b03ca7b3f272b0daf2ce1c2eb069768d92199b31fec315da1caf22e5a422410282772cb91f9a52f7148628889077b3f81d145b8721db54046fcebdf6d9c358c1578f120696e661f51d1d99a44448873e45f02fd7682faf0b7735c9867aa8673b06a91448f34e3f73f997337b47e4aa66248682d88f24daf2bfc0deec8d8a6dedf6b707da048eb899dabb34c4fe53de0fde66e2785d21c790ab1d1584bdfd96906a3ec1c269148a6943da1c537baca09b8adc5b6ec812888e232c76c29c0db0c1c18bbc93a81920c6509aff95fb46704b342b8eafe9581c43d61a65d135da188d4d942bfd0effa1db8e068cb6618f8bff6c0fe227619aaaae571601e749fcedaa100be7386a3c8b68694eaedccb2b9d2e0a6356a0f8bf1b7a2fdb3cc696321fb76a0c35e3f3784164ea184229a60deb76fb919e6860813203a9cd502bb542a216ebe2a9b458daf52df6591c6c5f16ec34b4a35f5c0b5edc4868fe788465f70bc7340ce661d43c178fb6aee2569d4e1f4152d1acc5a32879a6c28191828a8410d28959acd2e51a37619f3ec1c72e425a37065f49a1cccafd1f2b517c2f058133b0a36ff95b6d16274a7776df502bc3909e67bce5d1bd8ecd3d86dec0344c14448ced0428b06e309ff6b61ed1e128fae6728c921f3be87180fbdef2faa17014be6a9085452d7ab3133f51e41ed39d14972bcda0449751868f847a71166f6336df799fca7118e8b474e077d2ee6b73be947c9d3e53d662c915cfcff1f09d67268b0f2767ee0dec62708beb43be805c0b4511b97979176df458fb1a925ffbb05e4b7c58a20946a2ae788f8c4c1559011bdbed1cdb72b7cd8b3bc07f4c281a43ec59b2e169ea9fb9fe106257e8db9207c739374535f7731ff817fd6a97da5aa710192f4d4a88abcfc03ba764bc7e5b372ba36252ebaa2cfcdb05aed4e0b27401e1befc84ecdaa343a4a8185f6f0290ffe91d75b1b2518dd4550a4473e48499c5a92fb457ad30aa3943fb505c14649e7e1c73824a409b28b62cd7363d112292325edefd2f03c936d84995bd6a9d1654f69ff2305fddcef8421c6fa5e95e0804d21326f29090661e8b7d29acad4ed70088e0a02d9e0c20ef28bcf6c6e37f0ea5e8d101018274b1a9581cb0e4ffc249c6ff21507ec348c2b295e0a78295c70db6da3f61e3e060097394d4dd297c791ef4b56be9b01a29139fd0b69e035c332179ab95b905fa9206a6469c25f5b040e6d41fc75c41af2551b1e653bb4cdea718bf56be7aa323ffa7caea162d9737f25854562a0e86ff89bb5933016132a74321b229255a7722120b1cabcc76bdf4bab94b18a321414558f4363d700eaea6b036f292ab2ccc250a1acec76075af3157ad8e301d6c8a38a4cf5c3de2693876f0454db9353919500d13528f47452c4986d3fe2629a3449e8d878f64d29b34b275e4fe742363f99640c3fd23b3d389f23ffdb261c466726dbbcb3c34afa274b28901d1ad577fd38c81fb19bd7550062bb85d31b513614780a02b6b5e3b5b7887a79b97532d503b43d1c7c48c96829feacef3c031665551659f32875674e20f38721cdc1e641ce9fe4e9dfb9e42bf08fc28ed0b03ef218d0b0e127b5046a9b965d8287fc07d20d688150ca006c79be06c7fdc9bb7910613ff3b5ba73d67e8dd2657407b021cdbb78ea5106f1646e9fab0fe2816f78a750ded955e761ba85c819d46a9e2a5ff21cdfc247b7350b0f8ecb1b82b1f991dba6d8b1e63cc69d4a7da94a552e695c6ca72da158fdd2260128890e396f7aa3b62023deff2db64c9a39b6030e9b39d99e280a4fec1683e09bb3787305d649f7ebb7bec1c75b1a6ea0259b734c14a0a2558a99db4acabfd497d51adfa4a46fac0c29d21fc027f0488fb7a2952e576fc9efa0c6f3bbb9725ee8556fb5ab129aa3e3ce912b2df7fc3c15463f649844144f62493b9ca098c5bca1e14e2148aea9ef0b851400b32db71827c0b0b5f8347f36f3e78f2f165f8e3fdea653ba81865efca377df1273b6a1f5df53aada0cc162aa096083a8ff62f6bd1096861fb1aae2851b4e55feb071284c12c6993dba58a4e938ec33d897b5333d67da388a69569a5762165ac069b0f9c00cca0bd1139c96e8265c865c2f8e7c39063bc077f795749cb6076df4588e2b2d07853a1443fcab992c7be89857a004fa930864687868405f9d06cd44a0122e2df619de0c07ddb7bd136ef66b5a49f7c6251915d5361fbf75d8acc6471b2aec8c0d8499c78ea80511fe930ed6f8ff4406b5c061678c0e23dc998804dcd4c7fc166356e536d84a59bc35fd2c111c7aac8ac8c29f5310f40bf0161bc7950978b886f0ce03e2e053e0d426238e9401c126d362e59556ff6bbdd7886000b65fde3390be7c2e91df00f2e15bdf77fc84040f705fe1756c4402679479a18fea45b24ac145764d68c03b2ace1ad2a40c67b027b5a81c8e29ac5d69ea33c39e236c7f906f6a8445b7a88ddcedc5d7a5b3326e9192aaa4b13e12469a21b34c6709660dbbe4844ff9aab8c1af58a076ce7dbe92a63aeaa409de0aed0d76b0da0578f55c4d6cc5b77637710c3498c8cc4718da0efefb279511b4a026d613e50a3fa51401fc786f81708e619a9369b6d9d5daea06836850917d835304fa3d6dbb4dd72ac7e624587ec2437f466db42e2d5c8bb03eb389c0482c087b6c2ea1e81f13a0b3772e452c3d640583c9705267c10d4d5f88f8322d2df8a55ba2b2fd5c7cb1b905a0c2822bd46d86e73018d96953491224866bf73b315490b2cacc59a13c14ce68372fc66c6f76a3ad62c9cbf734bf90b44a0c04f2f7545d501c91ced47854b3a5d3773420c653558b73d3c59d7d3c1689db1782f2ef33fe06b7418229a34768351cf11f61eef9f3839d3e5530af4d089305a32ebd80c97223b67047148a36d8c3eca73f31f2d94c04d70e89173ee68501de0c945b74530795598204e145adc81502d83c2944ecc9a6c42db1d7cd91682e05051e93f714505d75c1553d85e4217ae2af8f40110cc1dc88a3b34653871ecc50420cedba771ff2502b58f3bf353d62b68c365f4c7a6603f3c2a238d3e98594f1ba6e1b08eada2918519a628a45ecae4b17fb39ec117fa16c9448fe1d21645120ba850e71e2947b54cf87c599a6a2827263640041367784ec51b9c37cdbb3627f76f21955d9876ea0283ed22b5a07cec34792d6f9dbb505184eec9ef7f35b8237fdaf2b05fad8d98ce61c635c10fb5d803f9096ed9c7205b421482557f2f7c6807df1f893568181371df13935446ce065beb87a55c2dea524b53c6d4fa06a7806e31ddd78bb4704c5764b66c793128a76b159d914f5d76543df761e1db72935277f57a7a7b2ab9e7fbee199d6b4638094cb89b66fbd8c82e179f53234e5abb6ec764690885115cedd1677f5c8b2887ad48de4af560fa3fdcf7350cc5e6b6b90a23541c6174d906278d63a7b850380c412984e8b16aceb3971f832e85ffeec27da4a05c46811bb9dc4f3693f6036a1fe551da2d57544f4c85708b06f137692d30fb2146cdfad11a65ecc4e0e1afa9f25ff22858b14efbec3557074fbbf067122a39370193dfeb1b41e38b24701506d64986a4cad8853a2a39028e29f46e08b4ea0a88d180c6762ff166212ce8280c6ae78665f9c70803a313030a3e69c41f93f246738e7d5f9862f9f1d126a5fa1d67b18c6a6480c8ee7f5f5b5d24740b6d55fb64acd9435b7d0b6e13abc83a76e075387f6b93296293815504948933d97c33edd95a62f0c28db4d179e49bafceec7973b5657285a7eb9420b22caad226aa8b055495eba5974a94b17f3c18928539f7f4b03e140aefb83f2d5c2b96f74bd2689ef465777f03672d0d744f2aa232e851e5da6dbbea3ab5948b65a60872de801be0665553d27f8b831cd1769bb4cd61140cec1c9bc6677091656eff149a9546ccd453beb00c4a1851f7a67921978c5ee2ca83cc84ad7c5687c556f227f97a6271f072cab034052b22046be0bfaebad6df055d007fc5d7b6cc63aacf4ec075a0e93fc4adf32819397db79d38193450e8fe88e8effb71030ce29e62d64497c1198f8190d3b8b25c8eae993fe86e3ec3519a7a56d533462bf20b7066894af483442d6145cd3702592f6ce789526904b9a916e1c26462338ce9dabbc4ced46be7db7203dbbb84a3bd575a5ce2a624141e7d57ee41481a24d9fce04a6597a376d843ec7f024393bfa4f043a3f0a0ee18c5c8d990cff3c9b6bd7caca182fdf365d03983d95c5bf21bd7cd1929e57817dcb8d82e932e9d4e293f7c7adbded7646c56728c99afde5bdd68e219a10fa986766ac55ba1f05e6e73f0ca5df6826258eb31d002bfd3e0500171cdc9f0dd4fcb9955a058f83b15444ec721c431b9dbf103c252bb34ff11e2eaf153ff5a061dc20f386297e36a7f3ca746aa3a135e479e0ba55cceedb69a7f7624fa975e048d763b3fc94aa7d96da972ddee7f91b7f00d6c1cfde389f4ab05c799aa106556611cd123a26ff6a23a4057a3b2ff2569dd14605968e76993965b7211c5b7405ff5c89cdcfb36283f7fa82ff1da9e26d0269fac8daf9015b93b3b536c5b00a2c7427e199d9807be9893b67f03a9a1970a1a046887e0a8dcf4e6a2cee57ff26b8a664f6c836b28b20082d0387e02d6d42adb8c5f126668c2292cda1123b85e39ffbd389d832138eaa1500b06f16b0d0e5505c970152194e30f8bc3a2ef01385533daec68f3246ef72956036ba3aead3d62e879dcacb7f505698c6687996ffeeefe7d2a0c3648968aec1e2b864a9b36b8f08211e8178883a27a079fe072f08ca49e5ef1ab910ff56ac7d4db6a0e25457c230cf920acad2698536ad3c6bbea096729e2687057b1d998103c0dde7df3d699a35e5b7a297dcae7d42dc5e6a138adada3247fd200f3060be71eaed95f6e17039650bd67ed21569598bba030ca1063affaef3ad2f17d74d33508a3c74b0a9a536a7c4109ffb9bd1e1ab3ea36555c2522f1cfad903c8a51e91cdff895146b56b83fff4680123b35a193c106e845f575c9b983e338793bddd57a0c46acd9298508e556d242d62cdb45e9c0f9bbdcce45a259ae0ffd57dfeaf85c64351e0cf392c4220a6d10c7e178ef8a88c4c1ad63c131cd92df268301730bcfc01f14882e51e9826b793fdfdf5f14ce7c44c59ed399e3a56ab3ede222dccd25736b85ffbf267efd69be2ad7e07a9b6360dcfee822e70f188722d0443239533c664b51d9d6bf46ccf8087116d5baf8dd6e0077800d84c309d7d749851f45d5f843cc369c00fadee5971af41f9451fdcb24138a1f19b9d3f166d6af9a4ac580b8b38c3ae8f0822640222d3563c611071c5ed0d370566ba597913dc6beed7470d7530b1b8ed213a3e6f37b15983e63f61de57cf0996250af0cb47c8c2cbe374678edd248d14f970fbe3c24a0a35a08b517af001b7fcf8cd9a01a4e909a1247600880a0db14025908498233325773bc70c907bffe93a537d60ef9590641987f23e28bf77550609aba6d5e1b13e79b1990ac9ab8b70e96ccf1c7d685606ea0194b40c68e3fcd64b3da521b770052221807de6c4186166a9d7efed120c978fcdb8380d5be361fcb52b5728831d367f29a8879a61d7eab88a95265b583c44068374cd3f26c23a1c62cf33b8f647c9891733ac9428d675510a6c9dfe5b0489c446a8601bd14bff6f637cb030b4dc60f8b17af638ac775a9339d7a4334cee79d830d735d3186adbc52e733f3fb410d20764d418f3863ed2acc874ca4be1aa47df5c24692638d703df3dfa0c7e7a1f3e9993b8f0e7607b4969532a97dcfd30531b19fc76c331b676881217067428c1403fce556557baeeb389b4146fa043d49680239df3182fa576d48c9d40492c78d029d149f1 + 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 cleartomark{restore}if +%%EndResource +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 78.48 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54686520415049207468617420696d706c656d656e74732074686973206d757374206e6f74207265717569726520736f706869737469636174696f6e206f6e20746865> 161.76 78.48 C +<70617274206f662075736572732e2020537570706f72742069676e6f72616e636521203a2d29> 161.76 91.92 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 105.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<457665727920484446352067726f75702068617320612022747970652220617474726962757465207768696368206973207573656420746f20646966666572656e7469617465> 161.76 105.60 C +<69742066726f6d20697473206e65696768626f72732e> 161.76 119.04 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 132.72 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<412072656164657220666f72207468697320415049207265636f676e697a65732064617461206173206d75636820617320706f737369626c652062617365642075706f6e> 161.76 132.72 C +<7468652022747970652220617474726962757465206f662069747320636f6e7461696e65722067726f757020736f2074686174206e6f20636f6d706c6578206465636973696f6e73> 161.76 146.16 C +<6e65656420746f206265206d616465206261736564206f6e20636c757374657273206f66206d656d62657273206f662067726f757073202869652e204920646f6e2774> 161.76 159.60 C +<6e65656420746f2074727920746f20696e6665722077686174206b696e64206f6620646174612049276d206465616c696e672077697468206261736564206f6e20686f77> 161.76 173.04 C +<6d616e79206461746120656c656d656e74732074686572652061726520696e206120706172746963756c61722067726f7570292e202049206b6e6f7720746861742074686973> 161.76 186.72 C +<63616e6e6f7420626520646f6e6520756e6976657273616c6c792c2062757420646570656e64656e6365206f6e20696e66657272696e67206461746120736368656d6173> 161.76 200.16 C +<6261736564206f6e2067726f757020636f6e74656e74732073686f756c64206265206d696e696d697a656420696e206f7264657220746f2073696d706c69667920746865> 161.76 213.60 C +<636f64696e67206f662048444635206461746173657420726561646572732e> 161.76 227.04 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 240.72 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4835542061746f6d6963206461746174797065732073686f756c642062652075736564206173206d75636820617320706f737369626c652e202049207468696e6b20746865> 161.76 240.72 C +<7479706520646566696e6974696f6e206172636869746563747572652069732067726561742c206275742069742063616e20626520636f6e667573696e6720746f> 161.76 254.16 C +<736369656e74697374732e2020536f2069742073686f756c6420626520617661696c61626c652c20627574206e6f2070617274206f6620746865204150492073686f756c64> 161.76 267.60 C +<646570656e64206f6e2069742e202048656e6365206d792063686f696365206f6620726570726573656e74696e6720766563746f727320617320612067726f7570206f66> 161.76 281.04 C +<7363616c61727320726174686572207468616e206120636f6d706f756e642064617461747970652e> 161.76 294.48 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 308.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4d75737420616c6c6f7720756e697175652073656c656374696f6e206f66206461746173657473206261736564206f6e2054696d652026204e616d652e2020536f> 161.76 308.16 C +<74686520746f706c6576656c2067726f7570696e67206f66206461746173657473206973206279202274696d6520696e74657276616c2220616e6420746865206e657874> 161.76 321.60 C +<6c6576656c206f662067726f7570696e672069732062792022636f6d706f6e656e74206e616d65222e20> 161.76 335.04 C +<20> 372.24 335.04 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 348.72 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4f6674656e20746865207370617469616c2022736861706522206465736372697074696f6e206f66206120646174617365742063616e20626520616c6d6f7374206173206c61726765> 161.76 348.72 C +<61732074686520646174612073746f7265642e2020486f77657665722c20746865207368617065206973206f6674656e20696e76617269616e742c20736f20796f75206d69676874> 161.76 362.16 C +<6f6e6c792077616e7420746f2073746f7265206974206f6e63652061742074686520626567696e6e696e67206f6620612066696c652e2020536f207468657265206d757374206265> 161.76 375.60 C +<686561767920757365206f6620746865204835205265666572656e63657320696e206f7264657220746f206b656570207468652067726f7570696e67206f662064617461> 161.76 389.04 C +<67656e65726963202873696d706c696679696e67206c6f6f6b7570206f66207468697320696e666f726d6174696f6e292e2020486f77657665722c2065616368> 161.76 402.48 C +<7265666572656e63656420656c656d656e74206d7573742068617665206120756e69717565207461672077686963682063616e206265207573656420746f2074656c6c> 161.76 415.92 C +<7468652075736572207768656e20746865206461746120686173206368616e67656420616e64206e6565647320746f2062652072656c6f6164656420666f722061> 161.76 429.36 C +<706172746963756c6172206368616e676520696e2074696d6573746570206f7220636f6d706f6e656e74206e616d652073656c656374696f6e2e2020546869732063616e> 161.76 442.80 C +<65697468657220626520616e20617474726962757465206e616d65642022494422206f7220657874726163746564206469726563746c792066726f6d20746865204835> 161.76 456.24 C +<4150492e> 161.76 469.92 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 483.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5468652041504920746f207772697465207468697320646174612077696c6c206c696b656c7920646570656e64206f6e20696e6372656d656e74616c20737461746566756c> 161.76 483.60 C +<73706563696669636174696f6e2e2020496e20746865736520736974756174696f6e7320746865207374617465206f66207468652073706563696669636174696f6e206d6179206265> 161.76 497.04 C +<696e636f6e73697374656e7420617420736f6d6520706f696e74206f6620746865206275696c64696e67206f662061206465736372697074696f6e2e2020496e207468657365> 161.76 510.48 C +<736974756174696f6e732c2074686520636f6e76656e74696f6e2077696c6c2062652074686174207468652073746174652063616e2072656d61696e20696e636f6e73697374656e74> 161.76 523.92 C +<616c6c207468652077617920757020756e74696c20646174612069732061637475616c6c79207772697474656e2e2020417420746865206d6f6d656e7420746861742064617461> 161.76 537.36 C +<28736861706520696e666f726d6174696f6e206f72206461746120636f6d706f6e656e7473292c20746865207374617465206f6620746865206465736372697074696f6e> 161.76 550.80 C +<6d7573742062652073656c662d636f6e73697374656e742e> 161.76 564.24 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 147.60 577.92 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746120547970657320666f7220656c656d656e7473206f662074686520646174617365742063616e20626520646566696e6564203320646966666572656e7420776179732e> 161.76 577.92 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 187.44 591.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<436f6e63726574653a202869652e20696e7433322c20696e7436342c20696e74656765722a3829> 201.60 591.60 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 187.44 605.28 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<41627374726163743a202869652e204c6f6e672c20696e74656765722c207265616c292e202054686973206d757374206f6620636f75727365206265> 201.60 605.28 C +<73656e73697469766520746f20636f6d70696c6572206f7074696f6e73206c696b65> 201.60 618.72 C +<20> 361.20 618.72 C +ski{/Times-Italic fcd /Times-Italic-ISO8859-1 fdf}if +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2d6938> 364.32 618.72 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20616e64> 381.60 618.72 C +<20> 402.24 618.72 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2d72382e> 405.36 618.72 C +/StarBats ff [12.00 0 0 -12.00 0 0] mf sf +<95> 187.44 632.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<484446353a204a757374207468652063757272656e742063726f70206f662061746f6d696320747970657320646566696e656420696e204835542e> 201.60 632.40 C +<496e646565642c2049206c696b6520746865204844463520747970696e6720636f6e76656e74696f6e206d75636820626574746572207468616e20746865> 161.76 645.84 C +<6578636c75736976656c7920636f6e6372657465207479706573206f66666572656420696e2070726576696f75732076657273696f6e73206f66204844462e> 161.76 659.28 C +<486f77657665722c2074686520747970696e67206973206578707265737365642061732074686520636f6e76657273696f6e206f662074686520646174612074797065206f6e> 161.76 672.72 C +<6469736b20746f2074686520696e2d6d656d6f72792074797065202867656e6572616c6c79206120226e6174697665222061746f6d6963206461746174797065292e> 161.76 686.16 C +gr +%%PageTrailer +rs +%%BoundingBox: 18 86 522 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 6 6 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5768696c652074686973206f6666657273206d6178696d756d20666c65786962696c6974792066726f6d20612043532d7374616e64706f696e742c2069742073686f756c64> 161.76 64.80 C +<62652068696464656e2066726f6d20736369656e74697374732062792074686973204150492062656361757365204927766520666f756e6420746861742074686973> 161.76 78.24 C +<617370656374206f66204844463520636f6e6675736573207468656d2067726561746c792e202049742063616e206265206d61646520617661696c61626c65207573696e67> 161.76 91.68 C +<6164646974696f6e616c2063616c6c732c206275742070656f706c652073686f756c64206e6f74206861766520746f207468696e6b206578706c696369746c7920696e207465726d73> 161.76 105.12 C +<6f66207468697320636f6e76657273696f6e2070726f6365737320666f72207479706963616c206f7065726174696f6e732e2020466f722077726974696e672c20492764> 161.76 118.56 C +<657870656374206d6f73742070656f706c6520776f756c642077616e7420746f2073696d706c792073706563696679207468652061627374726163742074797065206f66> 161.76 132.00 C +<746865206461746120617320697420697320696e206d656d6f727920616e64207772697465206974206469726563746c7920746f206469736b2e2020466f722072656164696e672c> 161.76 145.44 C +<492764206578706563742061207573657220776f756c642077616e7420746f206b6e6f772074686520636f6e6372657465206f7220736f6d65206571756976616c656e74> 161.76 158.88 C +<61627374726163742074797065206f66207468652064617461206f6e206469736b2028697272657370656374697665206f6620627974652d6f726465722920616e642072656164206974> 161.76 172.32 C +<696e746f2061206461746120617272617920696e206d656d6f7279207468617420697320737065636966696564207769746820616e20616273747261637420747970652e> 161.76 185.76 C +<54686520706c617965727320696e20746869732067726f7570696e6720617263686974656374757265206172653b> 72.24 212.64 C +ski{/Times-Bold fcd /Times-Bold-ISO8859-1 fdf}if +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54696d6547726f7570> 72.24 240.24 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20546865206d656d62657273206f6620746869732067726f7570> 132.96 240.24 C +<20> 270.00 240.24 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-BoldItalic fcd /Times-BoldItalic-ISO8859-1 fdf}if +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f757073> 273.12 240.24 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2077686963682061726520636f6c6c656374696f6e73206f66206461746173657473> 333.60 240.24 C +<74686174206578697374206174206120706172746963756c61722074696d657374657020696e207468652073696d756c6174696f6e2e2020496e20736f6d6520736974756174696f6e732c207468652061637475616c> 108.72 253.68 C +<73696d756c6174696f6e2074696d6520666f7220766172696f757320636f6d706f6e656e747320696e20612073696d756c6174696f6e206973207374616767657265642e2020496e207468657365> 108.72 267.12 C +<736974756174696f6e732c2074686520656c656d656e747320696e20746865> 108.72 280.80 C +<20> 251.28 280.80 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54696d6547726f7570> 254.40 280.80 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20726570726573656e7420696e74657276616c73206f662074696d6520726174686572207468616e2061> 311.76 280.80 C +<73706563696669632074696d652e202053656c656374696f6e206f6620612067726f7570206973206261736564206f6e20612074696d652073706563696669636174696f6e20746861742066616c6c73> 108.72 294.24 C +<77697468696e2074686520696e74657276616c20726174686572207468616e20616e206578616374206d61746368206f662074696d652e> 108.72 307.68 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f7570> 72.24 321.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a205468697320697320617373756d656420746f20626520612067726f7570206f66206461746120636f6d706f6e656e74732028> 131.04 321.60 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461536574> 384.96 321.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2773292074686174206578697374> 424.32 321.60 C +<647572696e67207468652073616d652074696d6520696e74657276616c2e2020466f7220696e7374616e63652c2061> 108.72 335.28 C +<20> 329.76 335.28 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f7570> 332.88 335.28 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20776f756c6420636f6e7461696e20746865> 388.80 335.28 C +<227072657373757265222c202274656d7065726174757265222c20616e6420222064656e736974792220636f6d706f6e656e7473206f6620612073696d756c6174696f6e20646174612e2020546865> 108.72 348.72 C +<6d656d62657273206f6620746865> 108.72 362.40 C +<20> 183.60 362.40 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f7570> 186.72 362.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2063616e206265206f662068657465726f67656e6f7573206461746120736368656d61732e2020466f7220696e7374616e63652c> 242.64 362.40 C +<796f752063616e206861766520736f6d65206f6620746865> 108.72 376.08 C +<20> 231.36 376.08 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746153657473> 234.48 376.08 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20696e20746865> 278.40 376.08 C +<20> 308.64 376.08 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f7570> 311.76 376.08 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2062652046454d20616e64206f7468657273206265> 367.68 376.08 C +<7374727563747572656420677269647320666f72206d697865642073696d756c6174696f6e20636f646573206f662074686520736f727420796f752073656520696e2074686520444f452e> 108.72 389.52 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461536574> 72.24 403.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20546869732069732074686520656c656d656e7473207468617420636f6d706f73652061206465736372697074696f6e206f66206120636f6d706f6e656e74206f6620646174612e202054686973> 113.04 403.44 C +<696e636c75646573207468652022> 108.72 417.36 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 174.24 417.36 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222077686963682069732074686520706879736963616c206c61796f7574206f66207468652064617461202874686520636f6f7264696e61746573> 204.96 417.36 C +<616e642f6f7220636f6e6e6563746976697479206f662074686520646174617365742920616e6420746865202244617461222067726f757020776869636820636f6e7461696e73207468652061637475616c> 108.72 430.80 C +<64617461206173736f6369617465642077697468207468697320636f6d706f6e656e742e> 108.72 444.24 C +<20> 285.12 444.24 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 72.24 458.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20546869732069732074686520706879736963616c20636f6f7264696e6174657320616e642f6f7220636f6e6e656374697669747920666f7220746865> 103.68 458.16 C +<20> 392.88 458.16 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461536574> 396.00 458.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2e2020466f72> 435.36 458.16 C +<5374727563747572656420446174612c2074686520636f6e6e656374697669747920697320696d706c696369742c20736f20697420776f756c64206f6e6c7920636f6e7461696e20656974686572> 108.72 471.60 C +<626f756e64696e672d626f782c20656467652c206f72207065722d76657274657820636f6f7264696e6174657320666f722074686520646174617365742e2020466f722046454d2064617461206974> 108.72 485.04 C +<776f756c6420616c736f20636f6e7461696e2061727261797320666f7220636f6e6e65637469766974792e2020496e206164646974696f6e20746f2069747320227479706522206174747269627574652c20746865> 108.72 498.48 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 108.72 512.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2067726f75702068617320612022736368656d61222061747472696275746520776869636820696e64696361746573207768657468657220746865206461746120697320616e> 139.44 512.16 C +<46454d2c206972726567756c61722c2072656374696c696e6561722c206972726567756c61722c206f7220414d52206461746120736368656d612e> 108.72 525.60 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461> 72.24 539.52 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20546865206461746120666f722074686520646174617365742e2020466f72207363616c617220646174612c207468697320776f756c64206c696b656c7920626520612073696e676c652048444635206f626a656374> 96.96 539.52 C +<776869636820636f6e7461696e732074686520646174612e2020466f7220766563746f72206f722074656e736f7220646174612c20697420776f756c6420626520612067726f7570206f66207363616c6172> 108.72 552.96 C +<6172726179732077686963682061726520726571756972656420746f20636f6d706c6574656c792073706563696679207468617420766563746f72206f722074656e736f7220646174612e2020546865> 108.72 566.40 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461> 108.72 580.08 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2067726f75702077696c6c20616c736f20636f6e7461696e20616e206164646974696f6e616c206174747269627574652063616c6c6564202273746f72616765222077686963682063616e> 132.72 580.08 C +<68617665207468652076616c75657320227363616c6172222c2022766563746f72222c206f72202274656e736f722220746f206465736372696265207468652067726f7570696e67206f662064617461> 108.72 593.52 C +<77697468696e2e> 108.72 606.96 C +<54686569722022747970652220617474726962757465206973207468652073616d65206173207468652061626f76652d737461746564206e616d65732e20205765206861766520746f207265736f727420746f20227479706522> 72.24 633.84 C +<6e616d65732062656361757365207468652061637475616c206e616d696e67206f66206d656d6265727320696e20616e20484446352067726f7570206d75737420626520756e697175652028616e64> 72.24 647.52 C +<7468657265666f726520646966666572656e74292e2020546865736520747970657320617265206e657374656420617320666f6c6c6f7773> 72.24 660.96 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<47726f7570696e67206f6620536369656e7469666963204461746173657420456c656d656e7473> 186.00 688.32 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 186.00 689.52 t 186.00 690.24 lo 392.16 690.24 lo 392.16 689.52 lo cp f st gr +gr +%%PageTrailer +rs +%%BoundingBox: 18 84 521 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 7 7 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4120636f6d706c657465206c697374206f66206174747269627574657320616e6420706f737369626c652067726f757020636f6e74656e7473206973207370656369666965642062656c6f772e> 72.24 249.84 C +ski{/Times-Bold fcd /Times-Bold-ISO8859-1 fdf}if +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54696d6547726f7570> 72.24 263.76 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20436f6e7461696e7320612067726f7570206f66> 132.96 263.76 C +<20> 234.72 263.76 C +ski{/Times-BoldItalic fcd /Times-BoldItalic-ISO8859-1 fdf}if +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f757073> 237.84 263.76 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2e20204561636820646174612067726f757020697320696d706c69656420746f20726570726573656e742061> 298.32 263.76 C +<706172746963756c61722074696d6573746570206f7220696e74657276616c206f662074696d652e202041747472696275746573206f66> 72.24 277.44 C +<20> 323.28 277.44 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54696d6547726f7570> 326.40 277.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<206172653b> 383.76 277.44 C +ski{/Times-Italic fcd /Times-Italic-ISO8859-1 fdf}if +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<747970653d737472696e67282254696d6547726f75702229203a> 108.72 290.88 C +<20> 245.28 290.88 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<45766572792067726f7570696e67206f626a656374206861732061206e616d65207468617420636f72726573706f6e6473> 248.40 290.88 C +<746f206974732066756e6374696f6e2e> 117.60 304.32 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<74696d65696e74657276616c3d446f75626c65286d696e2c6d617829> 108.72 317.76 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<203a205468652072616e6765206f662074696d65207468652074696d6567726f757020726570726573656e74732e> 259.20 317.76 C +<546869732076616c75652073686f756c64206265207570646174656420746f207265666c656374207468652072616e6765206f66> 117.60 331.44 C +<20> 365.52 331.44 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f757073> 368.64 331.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2074686174206172652073746f726564> 429.12 331.44 C +<696e20746865> 117.60 345.36 C +<20> 144.72 345.36 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54696d6547726f7570> 147.84 345.36 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2075706f6e20636c6f73696e67207468652066696c652e2020546869732063616e6e6f74206265207570646174656420636f6e74696e756f75736c79> 205.20 345.36 C +<6265636175736520697420776f756c6420636175736520746f6f206d756368207365656b696e672e> 117.60 358.80 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f7570> 72.24 386.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20436f6e7461696e732067726f757073206f6620747970652022> 131.04 386.16 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461536574> 260.64 386.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222e202041747472696275746573206f662074686973> 300.00 386.16 C +<20> 395.76 386.16 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4461746147726f7570> 398.88 386.16 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20617265> 454.80 386.16 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<747970653d737472696e6728224461746147726f75702229> 109.20 399.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<203a2045766572792067726f7570696e67206f626a656374206861732061206e616d65207468617420636f72726573706f6e6473> 238.56 399.60 C +<746f206974732066756e6374696f6e2e> 72.24 413.04 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461536574> 72.24 440.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20436f6e7461696e732067726f757073206f662074797065> 113.04 440.40 C +<20> 234.72 440.40 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461> 237.84 440.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20616e64> 261.84 440.40 C +<20> 282.24 440.40 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 285.36 440.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2e202041747472696275746573206f66> 316.08 440.40 C +<20> 386.64 440.40 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<44617461536574> 389.76 440.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20617265> 429.12 440.40 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<747970653d737472696e672822446174615365742229> 109.20 453.84 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<203a2045766572792067726f7570696e67206f626a656374206861732061206e616d65207468617420636f72726573706f6e647320746f20697473> 222.00 453.84 C +<66756e6374696f6e2e> 72.24 467.28 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 72.24 508.08 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a2020546869732067726f7570> 103.68 508.08 C +<20636f6e7461696e7320616c6c20646174612072656c6174656420746f2074686520706879736963616c20287370617469616c29206c61796f7574206f66207468652064617461206173> 165.84 508.08 C +<6f70706f73656420746f20697473206c6f676963616c2028696e2d6d656d6f7279206f72206f6e2d6469736b29206c61796f75742e2020546869732067726f7570206d617920636f6e7461696e20646966666572656e74> 72.24 521.52 C +<73657473206f66206f626a6563747320646570656e64696e67206f6e207768696368206461746120736368656d61206973206265696e67207573656420282273747275637475726564222c> 72.24 534.96 C +<22756e73747275637475726564222c206f722022616d7222292e202041747472696275746573206f66> 72.24 548.64 C +<20> 264.24 548.64 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 267.36 548.64 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20617265> 298.08 548.64 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<747970653d737472696e67282253686170652229> 109.20 562.32 C +<20> 212.64 562.32 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a2045766572792067726f7570696e67206f626a656374206861732061206e616d65207468617420636f72726573706f6e647320746f20697473> 215.76 562.32 C +<66756e6374696f6e2e> 72.24 575.76 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<4e73706163653d696e74284e756d626572206f66207370617469616c2064696d656e73696f6e7329> 109.20 589.20 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<203a205468697320697320746865206e756d626572206f6620636f6f7264696e61746573> 316.80 589.20 C +<74686174206d7573742065786973742070657220706f696e7420696e2074686520677269642e2020466f7220696e7374616e63652061203244206172726179206f662064617461206d61792062652061206d656d6272616e65> 72.24 602.64 C +<656d626564656420696e2033442073706163652028736f20697420776f756c64206861766520322064696d656e73696f6e732c20627574> 72.24 616.08 C +<20> 349.92 616.08 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6e7370616365> 353.04 616.08 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20776f756c6420626520332062656361757365206974> 386.16 616.08 C +<6861732033207370617469616c2064696d656e73696f6e73292e2020416e20696d6167652077696c6c2062652032442077697468> 72.24 629.52 C +<20> 328.08 629.52 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6e7370616365> 331.20 629.52 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3d322e> 364.32 629.52 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<446174612063656e746572696e67203d20737472696e67287b2263656c6c2063656e7465726564222c227665727465782063656e7465726564222c22666163652063656e7465726564222c202265646765> 109.20 642.96 C +<63656e7465726564227d29> 72.24 656.40 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20205468697320697320746865206c6f636174696f6e206f6620746865206461746120696e73696465206f662074686520677269642e> 127.20 656.40 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<436f6f72647379733d737472696e67287b2263617274657369616e222c2273706865726963616c222c2263796c696e64726963616c227d29> 109.20 669.84 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20204966207468697320706172616d65746572206973206e6f74> 384.96 669.84 C +<7370656369666965642c20697420697320617373756d656420746f2062652063617274657369616e2e2020546869732063616e20626520657870616e64656420696e207468652066757475726520746f20636f766572206f74686572> 72.24 683.28 C +<636f6f7264696e6174652073797374656d732e> 72.24 696.72 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np + 184.32 67.44 t 184.32 198.96 lo 393.84 198.96 lo 393.84 67.44 lo +cp clip np +gs +0.7528 0.7502 sl +244.8440 89.8995 tl +278 175 8 [1 0 0 1 0 1] +/datastr 278 string def +/pp 1 string def +/s 1 string def +/rn{currentfile s readhexstring{0 get}{pop exit}ifelse}def +/unpack{ + /DC 0 def + /BC 0 def{ + DC datastr length ge{exit}if + rn + /BC exch def + BC 127 le{ + /BC BC 1 add def + DC 1 DC BC add 1 sub{ + datastr exch rn put + }for + }{ + /BC BC 126 sub def + rn + /pp exch def + DC 1 DC BC add 1 sub{ + datastr exch pp put + }for + } ifelse + /DC DC BC add def + }loop + datastr +}bdf +{unpack} bind +image +e6b015b3acbaa3b3abadb4b7b8a2b5b7a4aeb1afb1b6afb6a380b105a7c1b4a0bebd80a902b4b0b180ad02b1b0b496af8eb117aeb2adafb7a8b8aea8b0b1afaeb7b5afaeabb4a7b1bfadb4c4b0 +e7b080ad14b9adb2b4a9aca4bab8a9afbfa6afaead95abbfadb280ab08b1a6aa9fb1c1acabb880ae02b8abac96b18eae07b4a0bbb3aab79dbd80b80dafbaa7aaa8b9b5acbab4aeab9fafc4b0 +e6b022afb1a7bba9a6c0acb8a9b5a8b6a3acb2b7a8b0d4b6a3c4a1bbacb9b2b7b5bb9dbca5b380af02b3a5bc96b08eb217abbaa5abbea9c4a1a4a8b9a1bbb4bca1b6a5abaaabb7b5b6c4b0 +e6b012b3adbdadb3aeacb1a6b0b7aeb2b3be0002000a82000107ae80a407c0adaaa9bfa3baa880ad02a8baa396b08eae14b1afbeb1a5a7a6bdc4b4a8b6b1aeacbcb3b1b5aba680b700a3c4b0 +e6b00cb7bfa4a1b9c1a3b5cc00080005800000ae80a904bea8bbb5b4800009b9cc9e0016000200b8b680b101b6b897008eb117b2acafb0b2c5adaaa0a7bbadb5a5b1afa4b1b9b8afadb1a9c4b0 +e6b00698a8b3c3afa50580000a09a8c2afb3bbabb1b5aa0c8000020400078000000380ad02bea9b280008004800097b28f00160c00b0a6bc96b4bab2aaafb6b9b1a9bcb7a2adbaadb1bbc4b0 +e6b001c0b881001d06adb7b9b7b5a2aaadacafb1aaa8aeb0abc6a6b3baa3b5acb3a1b8acb9aa80b502aab9ac96af8eb002b6a8be8100001680000e0408a7a0c892bf9dc1aaa5b7aaa6abc4b0 +e6b0800003b0a8b9b380af03b2a7abb580b114b0b1aebaaeb4aebba4b4b2a8b8acb1adbba6b6aab680ae02b6aab6a6b117b0b5a8b2b4afb7adb1afa10d040017000a99c1b1b5afb1b4c4b0 +d6b002b5a2b980aa0aadbca7b0a9b9a4b5a9050086b017b3acafa6b6afb1a8b2abb0acb3b5b1aeb0bca5b0a7adabb38eb007b4b0b3a6c2a9abb4a6b002b1000c80001209b6aeb2afb5aabb9fb8b5aabeadabb8a4b0b2b4b0 +d6b003b3b0aab080ba01adb680b4029eb6c3800000b986b00ab19eb8beb4a2babbb2a7b780b105afa9b3b2aead80b702bcada58eb007aeb5b6a8acb3b4a6a6b006afcf93b3bf980981000dc0aeb6bba5a8b39ab3b9b1b3c7a4b4b0 +d6b008a1c3b1b4b0b19bb6a080ba800002baabb287b016b4c395b0b1c299b0aea5b6adbda3b5b6a1b9aaa1adb2b88eb007aca9adb7a9aeb2b4a6b009a1bbaec19cbdacb1bebb81000a09afb5bab0a9b7a9b2a4aeb4b0 +d6b00fb2b1a4b5adaeb2b7b10500b0b2aabea786b017a3b79dbab2b99bbdb6acb8b9aba0bfabc699bfacafbbb0a28eb005beb3abb2b8b480aca6b00cb5a3b4b2b1a8beb8a0a7b4b9b880000810a2b6b4a2bda8b6bab4b0 +d6b00faab3afacbab2bb9c00059fb9a9aebbae86b003b8b2bbaf80a708b9b4acba97b8000204800006129fb9afaaadb98eb0079cb4baa7a9a5abb4a6b010bab29eb2b9b6a1b0b3beadb2a0c0b9a10d800004afb1aea1b8b4b0 +d6b00fb5b0b6a4a5b7aa09baa3bdb8b0ada7b487b00590bcaca9c3a981000d0105b7aaa6b5bea4baafadb7b1ac8eb007bfa9a6bab2b8b5ada6b006a6a9bbc5a2abb680b20ea0b2a1bda7b4b1a2af030004aeb2a7b4b0 +d6b004abb39cd2b5800008aba9afa5c5a2b2b1ad86b005b4baaeb8000880000da615a696bea9c6aaaeabaab0adb580ac8fb002afb8a68000010700a6b005afb8b59abbad80ae0fa9cba9b2b1b3acb8bda9b3abad0300bab4b0 +d6b006b5a8b7a2000ca780ba06abb4a2b8b1abb286b017b3afada6b8aaadb6b300b4b6b0b7a1b6aabcabb6abaeabb58eb007abb2afa909aeab07a6b000b880ac80b212b0b2b1ba9aadc1aca5b4a7a9afb6a7b4ad0100b4b0 +d7b006afb60500abb6ac96b04fb200b0b9a2b1bbb000adb3b5a8baaab5aab5aeb1b2b1a1bcafb3b1a3b7bab0aebea3ad05adb3b9a6b0b7ada4c0b0afb4b3b4aac097b1c0aab5adb4b5a1bfa2b3b6a6b6b3a0b2bbabadaeacbaaaa9b5a896b00700afb8a5b8b3aeadacb0 +d6b001aab0800003c5adb9aa96b04baf00a4b1b3b4aba500c5adb1a3afb7a9b8aeb5b3ada4c5a1b6a8b2b3aaa7a6aab0b108bcabaca8b6afaab7be9bbaa0b2b094bcb1c5ada6b7b2acb6a2b2bcafc0b1adb7c3b6b4a0b9b6aac19980bb01a1bf96b007ba0001bca5a4bdabacb0 +d6b007b6b000baa6afb2a996b04eab0aabafb4adb4bec1a2a1bdbe9fb1b3a1c0a5b1aec0a7b8b4a9baadaeb2b5b99d07009dbab3b1b7a4bfa4aebeb8b5abb2cda0aaadb8aeb4a5c49bbabcaca4a8b4b3b59eadb0b3a9acbba3beaca8ab97b080b7800003b4baa5b1acb0 +d6b007bfa70e99b1afb7b496b02fad09b3b1adacb994abb9b6a002baac040f9ec0b0a8b6adb7a69ccca0bab0b7a3c400a1c1bba3bca5c0aba6c5b100af08810001c1a9800008ae0a00b9a9aab10fb081ae000880af80b401a60f810002bcb9b496b002a6b2b4800002b2c5a9acb0 +d6b007a100a5beb4b0abae96b00eb300acb3adb6a91aa5c69e0b00ac02800023afb20ba8a3bda1c3020002b2a7b4b2ab03b1b49fb8a9b5acaeb1b500050200b8a5b2ae008009800003b200bab2800007b1bea501adb7b1a180000603b6b302a5b3a996b007be9fb8bbb4009bb5acb0 +d6b007b31b9fb3aeadb7b196b011b500b4b5a7b5ae00b3a60d0012ac02a805b280000b12b0b9b600a7c000b7ba99bf800004b8a60d000380000fb2b99e130700a9b3afae02b4a900bcac800814a7ae12b8a99fb500b6b5a1ca001196b0ae03b8a8b996b000b580b004a8a6bc07beacb0 +d6b0079b06bb95bab5a6ad96b00bb202bcb2a7afb609acbeb1a980002da4c10011adaa00ab0100b3040001aeb2acae00bdadb9adacaaad00bda30002b0abb3b1b5b100aa01b6acad00babb800007a5b3bb000faea4ab800007a5b1bdb700aeafb296b005abba9cbeb9ae8000acb0 +d6b007ba00afbbada1bcae96b033ae03afabb9b1a600adabb40400bcba0008a9b7ad00af0203000eaba7b3a9b3b00500aeadaac0a107029ebb05a6b5b8b3a7bca306800019b8b1030aa5ab07b5acb50100a9acbab900b6b2b10100b5b2abb496b007aeb3b8a8b8a3ba00acb0 +d6b00faf00b6abb2b1a7b6aeabb4a7b1bfadb48eb01e000cacadb2b401b1acbba50a00a7b702b9a8a6a903a907aeb2b0b6a4b1acb780ae0606b1a0b800030586b014abb5b600baafb100b0b9a9b600bbad00bb00b3a3bc80000806000611a5b4bca1b896b080b209ada9afadaf02b2adb0af80ac01aeb7a4b0 +d6b00fbaa810a2aeacb7afb5acbab4aeab9faf8eb02707a5b9a4afb400bcbe9db300b7b0b300a9b0b9bf00b000b0b1aeaaafb1b5aeabb5a800150300bbad86b012bda3ad05a8b50200a2b7a4ba100008b2a60bb080b2800008b2adb099bab5b6b2af96b00fada5c7adb7afa903b4b3b1a9c3c59faaa4b0 +d6b00fb1aa0002afb8b2b0b6a5abaaabb7b5b68eb00300afa9c480b31022949ac1cb00b5b8a901afb5a700adb30181000825a2c3b39dc0a2bab080af02b7a9ae86b00eabbbb9a10d00b1bbb0c5aaa1a9c1b180b60e97b0bbb300baa2b7bdb8a2aba3b6a697b00eb6b3a6b0c0b100a2c2a9a7a59fbcb1a4b0 +d6b004a3bab3000480ac05b0b3b1b5aba680b700a38eb00ca6c0a8baa1a7a6c6c2aca8a2ba80ab18b2bca3beb3b5acc9a5b9b2a3aca7b0abb0b5bca6a4c09db2b586b011b7a5b0aaaeb0bca5b6a4b8b9adaab8a2afc880b1800009bcbaaba8bab3c4aab8b496b00fb5afa2c99ca5c107bd9fb6c4afb3b9aca4b0 +d6b00fb9a8bab00ca5b5b4a4b1b9b8afadb1a98eb01bbcaea4abbdaaa5aca4a2afb5a4aec0b1afaca7aeb68ebfb1a8b1baac80b309b8aba6a8afb6a7c5aaad86b01fa1b7bfb2b3aabeada0afaea5acb1b2b7aeb1adae09aeaaa7b6a6acaeb3a3a4af96b00fb1a2c29fb6b4b500a8bbb2b3a4a8c29ea4b0 +d6b00fb5afa1aab500aab0bcb7a2adbaadb1bb8fb025afadaab3c0afb9b2b9b8b1bda9b1a59dbabfa9b6cdb5a5bda4b0b7c29cabc0bfb7aebc9db7b587b01aabbb9babacb0b6b4b6b9a8babfb59db1acb5baa705afc8aeb7b1b380ae02bab4ba96b00fa5c89fadbbb0051baeb0abacbcb3a6bea4b0 +d6b005a4bbc5b1b0b88004079dc1aaa5b7aaa6ab8eb001b2b080b923a3b5aca6a7b8a6aeb3acb4b9c0a8bca8ada4a0bea7b3b7aaabb2b4a9ad9db0b4bba9acaf87b005c2aac7b2a6b081af15a8ac99b8bcb3baa2b9ad00ad96b8adabbaa9aab3a8a996b004b3a3beacb4800008a9c3a1b30800afb0ada4b0 +d6b00facb8a2acb4b1ad000a99c1b1b5afb1b48eb004aeb2afabbc80ae20bab9b0aab9b2a7bda7adb5a9b0b9b4b2abb5b6abb8acb7abafacbeb3abb0b3aeb386b01fada8b2a5b8b6aab4adb2b3beb0aba6b2a7bfa50002b4b7b3b4a5bfacb6adacb996b008b2afb4b1000aafb5a580b300a8800001c2aba4b0 +deb00caa0609a5b7aeabbbabb1b7b5a680b610a1b4b8a8b2b0bbb4a8b4a2b5aab2b3b4af86b007b7a4b5aeafacbbac86b000b680ab02b4b6b180ae86b002adb4b380ad02b9a9b186b017b3b6b0a3babba0b4a6bea7bca8aeadb5aeafb2b7afa4bbae86b109afabbca7afaab3acaebd81001ab8a8b6b9a9b8a9af0004adb0b8a7b8b1a5bea3b2a9b9a3b6a8b6b794b0 +deb01fb8ae9d0d00a8afa4b2b7a5a7b2b5aec4aeabbfaba3a8aac1b0bbb9bba9c194b686b007a9bcb5acb0ba99bf86b207aeaab5b09ca9bbae86b007b7ada9b5b897c1a886b017a4b2a3bdb299beb7bf9eb8a2baacbda3abaea6a3b9b6afa286af07baa7aab7b5adbfb4810007bcb7abb7a3aba8b280b700b381000ea5c0a4b3aeb1b3b2aea3c3b2b4a6a394b0 +deb00fa9b7aeb1af020410aeafb6b5a9adac9f80ae0da6b3cda9bca0a8a1aba4b9a1c3ab86af80b4059cadb7aabd9e86ae07b3b8a9b2ccb79eb486af07aaacafbe9bcba5ba86af17c3aac1aaa6c2a9abafb2b9a9b2c198b9b0bfc2aba6a9aec186b203a807030182001faea4b9ada0ac0bb4b0bfa0aaa8b0aabd0ba9b9a2bfada3bca2c0b1a6a7adb1c994b0 +deb008bfabbcac9cb5b79d068000140ab7a2afbabda4baaba7b0a0c0b6c5a8c1a59ec3b186b307b1a3b7bca3b1bab486b300a980b504a5a0afbab586b307a5c6b0aebd9aa6b086b315a5aba8b7b4abb8afb8a6b9b7a9a4c3b0a4a5adb2000a890000b6800009b5afb5c7bba4aeb9b4b780000db0aebda6c9aea6b9a3b6aab1b8aa80af07bca0b8afb2b8a2a194b0 +deb004a2adabc6b580b4060001a0c49c001a81000e0a01a6b4c1a2aaa1b4afa5bdc691b886b006a6cd9ebab3b2a287ad01aeb780ad03c0b7a5ad86b007aeb69fa7abb9bbb586b007b2c0b4b3ada8b8b380a801000a80000905000a000200b1acafb186b00eb8a6bd0ba2bbb59ca6b9b6a3adbbb180000ea3bbaa9cb4b1adb9b2b3b4a4afc0a3800005abbb9eb7b2b894b0 +deb012baa7bf9db5b0000aa7c0b1a7beab9bbdb1a9b58100051d0008030004800001b8ae87af06a7ba9eb9a7b5b786b207aca9b0b3acb0b6b286af06b5a5adc3b200b087af00b180000209000180000f0805bda5b5bba1baaabfafacb3b1b4ac86b004a6c4ae000480ac13bbb3a7afadb29cadbe04bea0bebab1c09da1b1b480ae80b008adae001100bfb39eb694b0 +dfb080b11ab6a4ba00b5c0a5a8afb2afb7adb1b99bc2a9a8a6b2aeafb4abb8af8800070e00c0a2b7c2a0b586b106cc9bb9be98c2a58900000980000006890016b4ba9ec2b1aab7a4bd9ea9b6a5b5b20497b4bcb9a7b1af86b10cb5a6b99f0800b9a9b6b1a9c3a980b118aea5a7bd9fb3a39ec9b1b5adacbaafa1b7a8aead00aeadb4aa94b0 +deb015b1aca7baaa02b1b3acb0b7aeafaeb2aba9afb8aeadb480b107b7a7b7b3aeaabaaa86af03a9ab00138000000e880000138000020e000f87af03bf9fb2ba80b10100b386af17b8a2b6b4a7b4b3acb1b2aebaaeb4b0ac00beb6a1b8a9afae86af22adb1b2b9aa09a1b5b2a6c29cb6b4a8b2b3a9baa7b7b6b7a6acafb6adaab3b0afb6b3ad80b002b4b0af94b0 +deb007bf9bbbb9b100a4b2beb005b3b8afb0afb6800007aba8b4acadbfa2b18eb0800105a7b5a0b3b4b68eb004afb5a4b4b980ad10aaaeb2afacada7a9bab0b1a8b8b5aab9af86b007bba3b4c3aeb8a8a98cb0 +deb007aba5b3a3b601c3a7beb00fb3a2b8b4a6c1b605b7c4adb8aea3b8b68eb007a9baacb4c6aca7a68fb016afbdaba9adb9b7a3b1b0abb7c1b4a2aeafc0aba4bab4ae86b007a8b1ba99a9a5aec08cb0 +deb007b8bbb39b0da5a9b1beb001b2a980b302b593b2800006a7a3b4aeb7aab78eb007bda1a8b7a4b2bab28eb009b39cb9adbbbdb3a4bcb780b50baea4a9b8b1b79fa5c3b5a4b386b007b60100bec3b8bd9e8cb0 +deb005b193bdc800b480b2beb080b10da8acc2b6b8ab0aa6b9b7b6a6b5ac8eb007a6b3beb1b6b4a0bc8eb004b9aeb4afb180a500c180a60da7a6acbab9a8a2b3c0b0a6adaeb686b007b2af00b89d9eabb78cb0 +deb007b6abb400b2b3b1a4beb00fb5b1b7aa95b2acb2b003a89eb0c09bb88eb007acbfa4a8b6a3b4a48eb017a8b7a4adb8b4a5b8c2b0b5beaea3aeb8d18ebec2a0b6b1b286b007aab1ad00b7bbb0b58cb0 +deb007afc8a601aba9c0b3beb002a4acb680b809b7bda6a70b00b1baacb98fb007bd99b6bbaac0adb98fb016b8beaeaab8afb1aba0afbcb0afb2a59ebc99b2c2a6b9ae86b007b5b4baa0b5a4c39d8cb0 +deb007a9a007a6bbb0a3adbeb004b7bca5a2ba80a508b5bba900bbabb4abb78eb007aeaac1a1a4b105aa8eb0800015acbeafadacaeaabdbe9fa5ce961100bcb9a2a99ec5ae86b080b1059fbeb0b1b4b18cb0 +deb007b50500b0afb4abb6beb00fa7b1b9b3a8c0a2b4a9b70daab7b0b7aa8eb007b3b0a5c2abb003b38fb00103b280aa12b1b6aeb5a3afb9a9adb9a90005a3c3a9c2a1ae87b006b1b5abb5acafb28cb0 +d6b00faebba7b5be9db8b2b100c2ada5b8afaec6b007b3b5ad00a6acb8ac8eb000ad80af0cb0b3ab0901adb5aaafaca7b5b386b007b99fc2a7abbfaab386b000ab800304a6b4a4b6b39cb0 +d6b00faca6bfb09fb8bba608b4a9a8c0a1b6a9c6b007afa7af10b0afa6bc8eb080b50bb0a5adc88fb5b0baa8aac4bb80a686b007a2c4a1aec49da1b486b007aeb20006bfafc3979cb0 +d6b00fb4abb8a1c4b0a504aab2a8bea1bea8b5c6b005afc7a8ab00b680a98eb00fa4afbab2b0b3a6bdadb1b4a9a6a9aabc86b007c3a9b5a2afbac6a687b001a9ba800002b899c59cb0 +d6b005b7ba96b6abaf800001c2a680b103a5bab0b1c6b080a505adab12a8b7b98eb00fafabb0aab0a5b2aab89ebabfaab7b8a686b007a8bab3bba6aba9bb86b007b9afa9ae0ab7a6b19cb0 +d6b00f9ab9c5adb70006b097b9b0a8b6acb8a8c6b007b2bca8b8b200abaa8eb000b980ab06a7b6abc6b1b2a780b403a5aaaea886b007b1acb2b7b203a2ae86b007a2b4b9b500abcaa79cb0 +d6b00fc2aba6afa204bea8d2a4abbba6baa7adc6b007b3a1b7b98c0900ac8eb00facaab6b2b7a5b3a3a9bba7a9b8afb2b986b007b1a1b8a4b5b206b586b003b1baabb180b601a0b89cb0 +d6b00eacb4abc500a8b8a993bea9b5acb1a7c7b007a9c5a7a0c9b007a98eb003afadb5a980ac09b6bfb4b5a4bdada0c39e86b005b6b9a6b6aca8800086b007bca3b7a3b6aab7ab9cb0 +d6b00fb3aaad0009aeaab4bba9b0b1adafacb5c6b007b1a7b2baaf9f0a008eb080ae0db7aeb2b3a3acaea6bbab0300b4b586b006afa9afb4adb6af87b007a4c2aab8b2acaeb29cb0 +b6b015b1a5b2b4b3afb3a9b3b0b1b5a4adafb1b3abb7aca3b580b309b2a5bbb0aeb8aab1adaf800008b1b4b6acb1be9d000b8000010104820003010300098300000187000005800080b512bba3afb2a8b5acadb3a6b2afa9c4aaa7b6baa88eb017b4adbfb1a7b4abaeb3b1b3a9aabd9f00b6a3bfaca6baa7b486b007adbdb3abb7a5b6aa8eb080b205b5b7b3acadb38eb005aca3b3b2aeb780ae94b0 +b6b013b9bcafaaa2b2c1a1af9fba9fc0c1acb8a9a70a0c82000005800009bb9ba9ba00040a000a1081000b0300040d94bcbab1a7b2bba980b0099fbca3b6c3b8acb1b2a486b102b8ac0b81001115b2b1a6b8acaec6adbcb2b793bfb3b0a4b68eb017af9fabaeb4baacb5aeb1a0bfc2a3bb02baaca7bfb2a6bcaa86b007aeb1a9b1b6a5b8b78eb207a6b4a3aca1c4b6ae8eb201bfb680ac03a9b5adaf94b0 +b6b00ba6a0b2b7c9a7a3b9a6c0000b82000f061000a7b7a3b9b1a6bc000a0004010780000d08a1a8aabeb4aba9beb1bca09cb180b40da5bfafaac7a8b4a5a0aab1b0b3b886b280ab14b8b59bbfaa000503a3b0aca0c398b3a3bdadb9a2b88fb00eb6b5b7abaaaba5b6b2abafaaa1a40b8100020a0006800000ac86af07b0afaab8b2aeb2a48eae07b5b2bcb7b3a0abb88eae07a3b3a5b7b2b6aaac94b0 +b6b031c0b4a7aea9b2af0006009fb79ec4b1b4b5a0aec8aeb5c2a6b7a6acb1a4b7aba8c20503b7b1a5c79cb9aba5a2aebfbdb0a4b280b008acb3a7bdaec0c1b2ac80ad00ac86ad0aafaaa7b8c2a4b2b5a7b20d800002b4abbd80ac80b203a8baa9af8eb000a380b711a6abb5b1b3a0bdbbb3000b00b0adc2aea9b880b500b886b307a7b6bab5a1aeb7ab8eb307a8b2abb1adc0b2a78eb304b1c6abb6a780ab00b994b0 +b6b003aea3c0b2810018b1b5a7bbabbaadb4a9acb1be99adb89aabb5b6b4abb8a6bdb580001dbd9ec7b49db8a7b6bab5a1aeb7abb3b6a0c0acafb99fb4aa9faabab1acbe86b30cb0b7acaba6b3b8a6b9b4aab8ac80000804adc79eb8b29eb1b78eb00da9b1adafb8b9b1a4b3ba950006aa80b107b6ada5b9b2a8b69e86b007b9aba5a2aebfbdb08ead07b8a4b5adc2a0afb28ead07aab2a5b0aab0abaf94b0 +b6b03fb6a5c20006b7b2afa9bba3c99ea5bdb0b1ada8bcc1a9a4cda0bcb2b8b2a1acb2b7bfac0a00b4b0b9b0afaab8b2aeb2a4afb6b1bca2b7aebea6b4b0b2bdb1a2ac86ae05adb2b0bea6b280b1069dabc1a2b1b4c4810005bfb59dc7b0ac8eb017bbb1adbaada2b7bcaf0007c09db5b7adb1a6b9afadb4a9c886af07aba9beb1bca09cb18eb205bcaea5a7b1b580b68eb207bda6b3b0b2baafa494b0 +b6b000b280003cc2a5a8b2a9aabaadacb6aeaab2b3b8b19fb0a8ba9db2b0a3a8b2c1a7b0b2b6a500b8a9b7a2aeb1a9b1b6a5b8b7b1a6c09db1b800071095cda49ebdbca986b210b7acaab6aeb6afb1b6b49ebeb1aba6b1cb800004a9abb1acad8eb016aba6aab7a5aac19d0500af99c3a6a9bcb5bba4b6a9b7ab8700060300040d94bcba8fb107a7aa0d0b00bdafa78eb105b58fc8ada5b080b594b0 +b6b00f0005b49abdb9a3b7afb2aeb2000e00068000030800b4af80b127afb1adb8aea3c0abaca9b001b0adafb6adbdb3abb7a5b6aab0b5a3bc0001b7a7aabaafaabab0a4b686b017a9b5b2a7bab1a1b6b2abb7b4aabaa5b99fafbb000cb6a3b78eb008b4b1afb5b1c1990a0080b405b1aabbadacaa80b004b4b2abb0b786af04b1be9d000b800000018e00010702830000018e00040109abb3b080af00ad94b0 +aeb01baabca1bab2a3b8000a99c1b1b5afb1b4adb90100b8b5a800b2abb604800005bfa3aeacbba480b131a6b7b4b2af00bab8a9b6afb5a5bab0a6baabb6a0bb08a8b3acb1b5a8adbbaaadb1afaaafb7afb4b1a2b5abb1adaeadb8adb780b10aa9b0acb9b1aaa6c2a8acb5800007b3a7b8b0b2abacb587b036b8b7abaeabb10300b0b1a7a8b4afa9b7b0abb000b4a6c1a6afbba5b1b9b2a0b7b8abaab2ac00b9adb1abadafaeb0b3b2b0a2b3acb0b3b4800006a4adc200b4b5ab80ac0fb7acadb9a8acb0b3adb0b1b9a3b6b0b5800013030b9bbdb3beabb1acb9a1b7b1acbfa9a7b3b5a584b0 +aeb041beabb9b2a5b501009dc1aaa5b7aaa6abb999a9c3a5afac0bb2b7a5a4c20400bbb1b3a9afbcb0ba00a4af00a7baa4aeb5afb7b4a3bcb2acaeb1ac04a7b0b999b7adc080ab2bb3baadabb8a7a6b9aab1cfaaafb0b3b1b2acaaa9aaadaeb9b3a7a8c2b0abadbe99b81400b5b3a8b4aeb8a1b186b0019faf80b600b5800004b0b4afb9ba80ac04b4adbda10880004102b2b3afaeb9b79abbb8b9afbdadb510a6b4b1a3beaeb5b4a9baa9bfaeb0b8aaa5a604afb5b39eadb79fbab9adb0b3b7a3bfb2b4a6b8b198a8c8aba8b6b1b7b1ad06810080a980b209bcacb1b29eabb8b4adb684b0 +aeb024a8a4a6b2bdb200b1bcb7a2adbaadb1bba2d6aea7a8b6b300a9bab1a8afa80bb1b5aba8b1ab80af2e00cb9e0ab7adb3b8a9b0b1aab0b4abb1afad08b1a5bfacc6b7b196c0a6aeafa3beb9a9afb5a8a9ae9db4aeadb5aea981b50db9aaada4c4b59caeb5a9b0c6a3ac800006b4b7a3bcb2b4a886b003b5bfb0af800001a2b880ad05b5abafcf90038100170fa3bc00bdb4b2a8c1b5a7be9ca7b2aca600a8b5b4b0b4ae80b404a5aab6a0b280af0cb4bd03afabb5b6baada5b7b6b480ab24b6a7abb8adb7aeb0c0afb99eb2bfafabb2a0b89ebcaa15030a02a4b2b0aac2abb6b9a699b584b0 +aeb01dbfafcca69e07b7b2a4b1b9b8afadb1a9ad9db2b1b2aaa803b5a3b4abb6ab800007b0b9bab1b5aea704800015020002a5beada5cab8acaebea3bbac05b0afada3b0a680b725a3bbb1a9b5b2adaeb5aeb5b7aabaacb1bfa2b0b5c9a3afabb2b6b4afb5bbbc98c6a8a5b5a4ba800005a4c3a1abacbc86b021aca4b0af00cca5b8aea8b7b59ca7bfbaadb701acb8a2b800aca8b9a9b0afacbcafc380002b0b00a4aeb7a3acb6aabac39db9c1b19eb300c2a7b9a2b1ae9dc1b69aa3bdb99cb9c99db8aab6aeafb1aeb7ba80a915a7b9b7a9bda2b2a8b992b60c0002b3a2b1a1b4c0b3b484b0 +aeb00c9db9a5a40caca8b1b3b1b5aba680b714a3b2b9a4b5b1b5b700afa2c8acaec1ab00a7b5a1ad800019c1abba16a9acabb4a3b9ae95beb2a8b2b5ae099fbeb6afb4a9ba80ad03abacbbb1800016aca9b8a7a3b7afacb5aaaebbb1b8a2a6adbdaab4a4bba880aa0cc19abda8b3aab9b40014aaadc680a986b033c69eae00b3adb2aab5aca7b1b9ada3a9b7a200b1a0cba800b7ba9ec1a8b9a9aaafa70ea301b1090108a6c1aab8a7a4bb9da6bdc1800010b00006000800c5a3000fb7000800adafb880000a12a8ad0800aa00aeb5b7b880a8110002b2b3adbeb0a9a8000700bdbbb2a9abb584b0 +aeb019a2c2bdae00afb3b2b6a5abaaabb7b5b6b5adb6b3a4a009a8abc280a21db5ab0009c1aabe099d07adb0a100aabcb8a4c6a4c506a1b0b4b1b5a100cc8100061200afa8c105a2800029b6bab2bf0004afb1abb9b3a1c8a3b9b2a8c7b0a6afbaab0005b6b3aab7adbaa8ba9eabb000b5a4a3aebb86b018a2bec300b8b2aab7a0c1b99fadc1bab0b3b100bcc3a6a105a580b200b180000b0eb4b7b3a215b0b4a4a69dbd81000f01bdafbdb4a0ac0bb90100a2bca10ba781000303b597b980001e0cb10200ae0500b703b4adac00a7bb04ae00afa5b5b3b1a2beafa900b1a8ac80ab00a784b0 +aeb01ec7a09e129dc4a8aeb5acbab4aeab9fafabb9a5b7aebf04a6b3aba5c1b3b20080a70c000db20da8b9acb109b4b19db88100199d1300c0a5aa09b8000eb3b1a700a7b3000200bda9a5ada807098000220b07a7b21400abb4a405a0b0b5b4a607aead00b6a6b9b6a7afb0c1c0a400c3acc6aea686b001adb9800019b4b3b6aab3a8abb7b3a7a8b0aeaa07a89cb0c200b1b8a90818a380000babacc100a7acbdb40010a6b8800010a8acb3a7b8ad00b400b4b1af02a4b20f0080ad09bfb609a80d000100bd0181001902b5b3b7020003af0004bda4bca0afb3aeacc200a7b1adacb9bd84b0 +aeb011a3b4b800b8a5b6a9aeabb4a7b1bfadb4aabb80aa0eb5ad00b3abb3bba7a90602b401c19c80000ba3afb407a5adafbb00a9b6b8800007b0adabbb00a6c0ab80b20fb300b80400b1b4b1aeb8a80b0001b2bc800000b3800006bab2b00900b8b780001404afadb300aabda6a7bbb5a6a9a7c3009db7a3b4b386b02ab6a807b4aeadabb4b8a6b5bca6afbea9acb302b0b4c10001b6a20300a5090da9b8b2a403baafac01079a01810019c2a8a6b7b2ae06a8b9ae0300b6b20400b3b2afb9a500bfab000780b004000a0006b580aa160003b8a1b100b1a4b8b2abb5b99fbaa60aa7beafadb2a984b0 +aeb007b6a2bd00b0bcb8a686b011b2b5aaaeb5ac00b7a9b1bea20002b000aabd810013abaeb500b8b3a60003a7b700b900a1b3c1a306b180af03b2ae00b2800005a0bfabb5bbb0800017b9aca5bf00abb401b2a3b20608b0afb40a00afaba31100b080ae0cbbaaaebaaeb2b300b0abb1bbab86b02cb5a900b9a7b4a8b1acb3b1a7b8a7b6b5bbb500b4afa215a0b4af00bb00a30ca1acb6a700aeb6a702b20200b60880ad08b0b8a1bcb4a511060086b012b4b2ac00080f9ebaaeaf000fae00b4ac08ab0780a8091300afb4adbfb1a7b4ab80ae060aa4a9baa1b7ac84b0 +aeb007b5b6970faa9eaeb286b029a5a4c5adaab704a4b904001001a006020900b105b3b6adb7c1a0aac303adbe001100acbfaea0b600b0b180ae1202b7b600b0c1a6adb4aba400b3a6b6b100bbb2800007b3bb08a400b5abae800014bab9ba00aabca2c1a8b1b49cb0ab00b7c5b5a6b6b486b018afc300abb9a2baafacabb2adb1b69da6a9a706b7b90aa8bdb680001c05a61500bdb0baad05a6b9ac0001abc3a400b2a9b1afb2b6b5ba99b0ad86b00fadb1baa8afaab5aeb6beb1a600c29dba8100140e0700c6b8af9fabaeb4baacb5b100b3bfafb3b0ad84b0 +aeb007b3a7c300bab9a0b686b001bfac8000000e820005b0aeb0adb01580000abcac00a0baa8ada7b5b3ad810080aa0500a9b3a5b4be800000c4800004b0a4afaead80a915b5aab2b90aa6c80008b3a7b501c1a000bf00b1c5a7af80020fa8a40300bfa9c6a2a9b8b3c0b7bf00b380a302acb9a886b011aa9d03bca3bab4acb7a3adb5b0a426000507820005aba8b2a4bbb880ae0d00a7b1b5acb1b5b1a9b6adb0b60c80a709caa8a6b6a3aba2b8bdb786b027afaba1bcb1b7a8b3a0a8b8b90ba1b30800adb3bba4a5bca2b6b5b7abaaaba5b6bd00b6b3a2b6b0b484b0 +aeb007bba6ab009bb2c0a786b018acb4c1ada6b0a1bfb99ec4aab2b6a3beb1b4a7c8acabbcacaf80ae0cbcaab6bab2b4c0a7b6b3baa4b180000e0db2a7c1abb0b7b3b4b0acbdab000c800024c1ada1bb03b100b8a81cae94c103b1a3110200bfa9b1a4b0c99ab0bfa300acb6a8bbc2a2b986b037b5c00700b3a6adb4b5aeb3aaa7b899ac9fb2bdbba6b6baada4c7b7a0aeabb3b6ada4b0b7b2a0acbcb3aaab96c5b49fb2b4b8aac4b3baa8ab86b00cb7bcbeaca8a7b5b8afb9b7a40080b409000ab2b1b2adbfa9b9a380b70ca6abb5b1b39a06a6a0b8b7b1ab84b0 +aeb007b3b0b20c07a4b5ae86b03eafb1a4b4bdaac1a3afb8b2adb3b8a4aead98c49daeabb0b9b0baada6c29fb6adb19eabb79fbbb0acc2a4b1baaea9abb0a3a9b9b5aaa2c3a200aabeb6afadae800005b2b5a8b6b7b4800015b8c19ab9a5aeadbaa9b4a5b4a9b500acb8a3bdb5a79f87b02cb4a6980eaac6a5b2a0b0bcb4bbabb4bcc1af9ea8c0a5aab3c099aeadb6b1b4a6b8b7b9a9aebec19fb2afb6b5a080b608b2afa4a3b3aeaca6b686b024a6aab8a0b4aeb59fb8b5a5b6abafb409a7a6b5bba6b0bca4a9b1adafb8b9b1a4be0ab6a0ba80b100b384b0 +aeb007afacb2a10002b2b186b022bfabb3adb1a7b2b0bc9ab0baa4bbb8b1adb7aebfbdb3a6b5a4a9b7afabbcbdaeb1b9c780b300ae80ac00a480b3129ba8babbb4c8aea5a4bcaeb3b5afc19fa0b6bc80b506b0b9afa8ada8b980001693b7b1abc1acb6b1b3aeb1aebd000babaec19fadc2b5b786b01fa7beb40c00a6c1abb7b3a69fbdacb7a8ad9ec3aaa5c0aeafa3c5b2b1a8a4bdb380a510a1bfa3afabbdafa9adbcb3b1abacbab4ba80ae02b3b1b786b027b6b2aeb1b4b7b6b7aab1a4b5b3a900acbac1a0b0acba99b7bbb1adbaada2b7bca500bfaeaaaeacb984b0 +aeb007aeb3b2b9ba0600b886b054ad9cbaa9b4b8a4b8b5bdb597b3aca9abc1a7a5a2a1b5a8b5bfb7b0b4a3b3a0b3b1aea0af9eaac2abb3b9b2b0cba5a8a2a4a7beaeb1a6a7aaafb1b7aaafa6a8ada4b6afb2bdb8ac00b6b5aebbb296b7aaa9a1c3b8b5800008acbaa6afbba1a7acab86b027b6a9afaa1500adb1a8b2bbafada8a9bbabb4adc6aba8afabaea7bca8bcbea2b3baafbba2bfadb9a780b10dba9bb7a5b9aca9a8b3aaa9baabad86b014a8acafbaaea9a4afa1c4b7a5b9af04b0a7adbaabbc80ac0bb5aba6aab7a5aac19d0d01ad80b502b4aca884b0 +aeb007b3b0b4a0b7a6090086b00dacb7b2abb8b0adb4ada6aec0aab280b50ea4bbafbab5adbda9a3bca2b0beb4ab80b11aadbcb1b3bba3b4aeadb2a3b4b5acb8bd9fb6afb2afb4b5b1a9b8b281b41aafbbabb8ada6ab00b3a9bab2a1b5b7b2b4b9afb2a60009a2baacaf80ae03b7b5a8bb86b014a7c1b3a1b4b50002b3abb5ada6c19cb6acb9af96bd80b307b1aeb7a4bba8a7b880ae16b3a5b9adb2a4b8b1acb3b2b1a6b9afb9acadb6acbfa5b486b027b3b1b6a7b4b0b8afb9adaeb5a707adafb9acb0acadb1b7a7b4b1afb5b1c1990a00a6bda5b2a5bcb384b0 +b6b0800008afb4adb1bdacadb7ae80b20aadb0b1b2abb6b0b3b1a9aa8eb000ac80b707aeacb1b5b4b3acb080ab11b0aeb1afb5b7aeafb1b0a8b7a5b4bba5aebd80a880af03bba9be0082b00caba9b6c2a7b3a3b20900b5a7ac96b082000bb9b5b0b4b6a2b2b3afb3c1a886b107b4a5acbca6b6bdae8eb080ae02b1b6b480ab00b686b00ab2b1aea20a03a4b4baa9ac80ae0ab3b6a4a8bfa2b4bea800038cb0 +b6b017b3b20204adb1a3b1b6a8b3afb5b9b7b0a4beafb4a8b6c0b88eb015abafa4a9bdb19facbaa9b6beb6bbb9a6b9a8aaa7baaf80b813b6aaaeb9b5a9aab3c1a9a2beab0009a4aab1b8ae80b0099bbcadbb0500a9c2acbe96b00fbbaeafc5000102000c000dbaa0b490c586ae06afb9bdb1aea1a68fb007aebba99cb0b5aaae86b217afbd9ecf00a3b1b5b4adb5b4b9a4afbfafa8c7afa10904ae8cb0 +b6b017aca9ae000806a2c4aca8b9adaf9db5acc0a49fb7b8a49db08eaf37b2aebdb399aec7b1aba3afb19ca3bab7a1bcb4bba1b9a8a49ec0b79dabbfb8aea2bfb79fb304bab3aab9a7b8acabc0aa0002a6c6b399bbac96b00fafa8acb1adb2b6af9fb6b09bd0b9a6b086b207abb0a1aeb2bfb0b58eaf07b49eb7ccb2a9b8b386ae089db8b1a700b9bba5a080bc0c9eacbab9a6bba0a40006a7b8af8cb0 +b6b006bab2aaa9aaac0680000305aebdb681b507b6a7c3a0b2beafac8eb330b5a9a8b8beaea4a8b2bbacb0c0b5a9a4bcacaeb1b6a8b4c4b6aea8b2baafa5aaafa7aebea20b98b3b6ba99bbbca30004b080b803aea2c3ae97b00faab6b9a4bba6aab5b3b0bfb0a1afc4ac86ae07b6b7b2afb2b0aaab8eb304b5baafa0a580b500a986b317b9a3bcc19faabfb1baafa9bda8adacb7af11000ab1a6abaf8cb0 +b6b001a7b080b504afc7aab40c82000a07aea8a6b0acbdb2b0abae8eb030b4abb5b4a2aabcb5a8b2a6adafa9b8b4afb1a5b5adbba7a0afaab9b69ea8c0bbadb9a5acaebac8a7a9c2b8000700b8a8ac800004b6a5baa1b996b00fb3afa8b0adb6aeabb2aaa3adb7afa7ad86b107afadb4aeb2adb4b28eb003ada5b7c080ad01b7ae86ad08b2afa2a7b0b99eb69f80b102a411038000070100bcb1afbcb6b58cb0 +b6b006baaaa3a2ba9cae800000c380b10bb7010009001500a7b5a9b1b98eaf23b5b8b0adb4b1aaaea7c5adb0b8a3abb1a9b1b9b6afaab2baacadb5abafce9003000b000881001003080005069eb7b1beb1b51400bba4b9ae96b00fa9bbbfa2c5a8abbdadc2b2b60005000886000701000700bfa7b3ad8eaf07b2b6b0acb3b0a9ac86b201afbb80b513b3b504000a100005009cc6a2b3b6acb39fb2a9ba8cb0 +b6b0169bbcbfc3a7bf00adb69ebda5adbea8b9b29b061900010c9000001580001719000cb4bc90c2b00005b5aabf92c8a0a7080400020006088000170200baaaa6aebfb1adb6b1a7afbabe9eb39aafbc9f00b1bb80af96b00fb7a8a6b8a3b5b3a4b0a4acb5c4aca8ac86b004b3aaa9c0008006900006a5c298beb99bcc86b18400110eaba9b0a8bba0b6b0b8b696c7abb6bfbaa18cb0 +b6b00ab2be9ab2aa00aeb2a6c4a180b70a9eb9a9b3adb6a6a8b5aeb18eaf06c49cb2b8a1c79f8000001080000205000580001d1700040da1afb1b0b1a7a8b4afaab8aea3c9a9a7b4adb5b0b1afaca6b7b280b406acb3b8b4b0a7bb96b00daeb2b4b5aeafb2b5b2b6aca7aeb680b286b107aab9b1a9b7b0a8b68faf020f000e80000013870004afb8a9b5b780af07aaacb8aaa9c1b29f80b206bca3b3afaca8b68cb0 +aeb001aeb580b00ab6adb1b6aea5b3b600b5aea7b00fa9b9afb20aa5b6b2aeabb4a7b1bfadb497b00eb4a4bfa8aab7a5b3b2afb6b0b7a5b7f4b0 +aeb00fb2aab4bb9eaeb4a6c2bcaa07a1afb2b3a6b00facbaaaa1b402b4a4b5acbab4aeab9faf96b000ad81b20bb5abb1bba0bfa5b6a2acc0a9f4b0 +aeb00eb3a9aac2aab9b7aa90c100a5b7c69fa7b002bbacaf80b70a00abbcb6a5abaaabb7b5b696b00fb2afb3a8adaa00abbca9c0b2aab9a8aaf4b0 +afb00ebda3b2b1a3b1b4b700beaeb0adaeb3a6b00cb1a2baa4acc100adb3b1b5aba680b700a396b00faea9b2afb4bc00b9a3b8acb0b9a3b8aff4b0 +aeb00fa5bdacaeb2a9caa000bb9fb0b69ebcada6b00f9ec1b0bba4a80aaea4b1b9b8afadb1a997b00eaeb7afb1aaafb1b0c79aafa8bba6b9f4b0 +aeb00db2abb0b4b2bc911a03abb7adb1b680a9a6b00fbaa6b5a3c0a70700bcb7a2adbaadb1bb96b00fb4b1b0b1a9a2cb9eb6a406bab8a5b7aaf4b0 +aeb00fc1acaeaba7ab0c00a6b7b0b8b0aa9dbea6b00fbe94b3c2a4b6c0009dc1aaa5b7aaa6ab96b00fabaca9b6b8bd9bbaa506059eb1bba1b9f4b0 +aeb000a680b20caab4b700b4b6acb0a7adb6b9a8a6b00faebaa8a3bcaaa8020a99c1b1b5afb1b497b00eb5b1a5b5a3bbafb500afb1acb9a7aff4b0 +8eb00fafb9aab5b8a8b1b0b7b2ab9fbda9b4ac87af07b1a4bbb2aaa6b8ae80b00ca9a218a9b7acb5b1a9a7b9bcb286af0fb3aab3be9bbdaca6b0b8a9b5b4b3acb186b017b4adbfb1a7b4abaea9b6aeacb6b5a6b100abb5acb2c4a3b288b005a7b0acaabbb28eb007a3b7b6abb0b7b1a8f4b0 +8eb00faeb4baa4abc0afae9bb5c4a4aeb0a7b786b103aab5adb780ad07c0b1b3baa8bf08a480ad07b1a9b1c2a9aba79f86b107a9b2b39fbca9bfaf80a905b8a4b2a4b3ad86b009af9fabaeb4baacb5b79e80b50bacb1a6bd00c1b0b4b894a8bf86b003b2b4acb880b501aba28eb007b9b6b5b1a8a6b0bdf4b0 +8eb00fb3a4b5c3a59fb7b1cf9e9bd1abb3b1ac86b00ab8ada3b6b1a9b19ea5acb380000ab3a1bfb1acb1b7a2b6c2b986b00fbba1a6cba6b3aab1bca8b3abb3afb5b286b017b6b5b7abaaaba5b6abbebf9dadabc49db300b0b2b3bdada786af07b2b4a8aca7b9abbb8eb004aaa2a9afad80b700a0f4b0 +8eb00fb6aeada6b0c0b3a2a0b7b0a7b49fc4aa86b017a0bcb9ada7c8afb9b5bbab00b3bbb3a1bba9adaebea0a5b386b009a6c2b6a1b1bba0b0a9b180b603a0b6afa486b000a380b714a6abb5b1b39fb39dcbb2b7a8b8ba00b5a7a4c49ec286b300aa80b704bbacb89db28eb007bda1b0c4afa4b2b5f4b0 +8eb00bb2b1b6a0c2be8ed1c0b3afae810000028600000d8000000a81000fb9b2a800c3afa5b3b5a4d2a30004000f88000e0200b6b2b6bfabb3abb6a0b69fc4b886b017a9b1adafb8b9b1a4c0b2b99daaafa7aeabb303b8bb9fc0a086b007adb0abb2abb6a9b28eb007abbdbea1a9d29203f4b0 +8eb00faeb9a6c2b299bc9eaf000d0aacbba8ae86b20ca5b9b3b0b9b500020003090010800001090180000208a8ac80b086b203b7a9ac078300050900adc3ba9787b00ebbb1adbaada2b7bcada5bab9b0a9c4820004b2a2c1a0bb86af07bbb0a5aeb0adb9a38fb006a3acb6acadb6b2f4b0 +8eb00faec59ea9a2b9bc000600b5a0b7a2b8b486af17abb7af9dadc29bb4bea40500a8b0b2b7aaafb7a6c5a3a7b686af089fbfa6b5baacc4000a80a804000200b8b486b009aba6aab7a5aac19dacb88100060500050017000280000003870007abaab0bab398d1aa8eb000b880b004b4aea8acb5f4b0 +8eb00faea1c2a9c3a30500abafaeb4b2afbda486b117b3acb1aeb8a2b9b2afb4a20c00abbba6b4adaeafa9b4b8a986b10fb5a9b8a4afbb9c09a7cba2b2b600020086b016b4b1afb5b1c1990a0b00aeb7a7beabafb9a4b0b8aeb0b487af000182000203a6ad8eb007a9b1aeaab3b7b1aef4b0 +8eb034b3ada5bbabb203aab1a8be9db4080007000c00050400b3afb4a8b1b0a6acb1b9adbdae00c5a7b3acb3aeb9aeafa2bbb0050003a9af80ab0cb8b1b7b1ada5b400b1aeb2b4b280b12fa10200bba8afb6aab0afb3adbcb0000100b0afa7afb9aabaafacb4adbfb1a7b4abaeb8a9b9baa5bcafaeb6a9b3aab0b282000d0ca2b2b5b2a7aeadacbaa9b9afb687b006b3a8afaeb8aab5ecb0 +8fb001a9be80ad020ba9ae80b024a7aec000bd00bbabb0b9ac0009b2b0a5a9bbadbbb3a1b6a901b19cb8afbab1a6b0aebcb2b380000fa300bcb2adbba1bea9a3bfb4b50aa4ba80ac0cadafb5c1a30f00b9a6b6b49cc480b028a00400b0abb1b4bcb1b8a2b6a9bdaf9fabaeb4baacb5a0c4a6b0b9a5b1b4a7aabbb2b7a9acb9b0b308810003a8c1aeaf80b003b9a2c09d86b003acae00c080ad01b4aaecb0 +8eb004a7c39cc20080a508bdacbdacb89da9b90080a961b7acb8c000a7acbabf97c2b1a2c1a3b905b1b6b0afabb3b6a9b2b1b4b203c3adb5a9aac998b998baafaeb000a8b6a7b2bab2a9b1a3b5a900b6c49dafca9bb20008b1aba8bda8bb95a7b1afadabacb6b5b7abaaaba5b6baaeadb100baaab2bdb4a4a280af0da8b7bba6a0bdb2000600afb9ba9f80b001acbf87b006a917aca9b2b5acecb0 +8eb017b5b49f000baec6a5b1b6b1aad39baf08c39fb1b89fa8ad0f80ad15a9afb0a6b9abc2b100b4b2afacb5acb2b0a8ae9abc0480a800b980ae049fc8acbbaa80010200aaba80ae05afa8bab3baab80b50603a9a6b4b1b3af80000cbbaab1b8afae00b6c4b2a4b8c780a380b724a6abb5b1b3ada9b0b201a3b8ada3afb6c1b1aaaca9b9a9c4a7bea3b30904a60006bcaca1a986b007b3afa9a4acb7acb5ecb0 +8eb003a6b4c00280ae17c4a2afb2a9abbbb900aaadbaabb7b0b7c500baa5c8b3abc3800014a800bca3aabdb7a5b39eb0afb1bc0f9bb5baa1c20380000404b3b7a1c38000000c81000c1897b2a9b3b0af00bf9cb8acb5800205b1aabb9db1bb82001c0400b1a4b7a9b1adafb8b9b1a4a2b7ba01afbebda1b5aeadb2a9a8cab380000db2aea6b9ada3a50a00b1a3afc1b186b007aeb7a7bdb5b0a7b4ecb0 +8eb032b89eb400a2ad9ec0baa4acc19ca700bea8b4ad9bbabb9d06b2a798b3b6aaa41213000205adb1991000c2b2beada2000aafaeb0800021b50700a5afa7b600b4aeb7c4ae96c8b8a1bfaab100aebda8c0b100adba9eb2cba7b7800018a9bba20c069ebdbbb1adbaada2b7bcb3b8aa02a3a8a9c4b4b980aa13b6ae0001b0b7abadb0a2bfbdbaae06aeb5b0a8b186b007aeb19fb2b3b1a9b1ecb0 +8eb010afb3ad07b7b2b5abaac6abaab8af0aa4b180b412bdabac00c0a7c3b8a1bfaabc00aa00b1a4c4af81000b03a9a6c0adba00b2a31602a7800050b2b7acc100b1b39abba3b7b0abb2afbca6b603b1bcb0a800b1b2b7b6a6a7a9aac302b6b5aea90400a6aba6aab7a5aac19db3a900b0b9aebb9da2bcb1a4c0a520a6aeb6b0b4bab3a3aa9a0aaa02a4bea3b986b007b2acc29eafb5aab3ecb0 +8fb008b1ae00b7b2a4b6b5ab80b00bb6b300b7b4b39ec0ac0601ab8100160200aeaf00aa07b3aeac0002b20d00b3b5a9ba9c0bb5b78000390503a7b5abb3af00a9b4bca9afb5b49dbfafa3b9a60ca5aab7a711a5aab1bba5bab3b500aeb79ebfb1ac05afb4b1afb5b1c1990a04a708b1a9af80b517aeacb0a7b700a2b8b3a7a8b6a6abbfab09b09fb405abbea587b001b3a780b202afa9b4ecb0 +8eb00ca8afb000b7afadb0aab7a9a8b580000ab6b7a9aeb39c0ab80008a5800046a3bdb5a100b3a3b8bc00ae000a8ebabfa9b4a806b400b6aabab1a4c3aea50ca2b2b6adb4b5b3acb0bca1b5b6ae00acc5b2a616a3b8a9b5ada8afae00aeafacb7afb100a9a5bda8810001b1ae80001105000400b7b1b3c09daeac02acbaaeafaa0d8300001280000309a9afb3fcb0 +8eb037c09fbe00aea5b6adacb3b5b9a404b0adb3aabb060ea20009a504a80baeb4a1c300b8b7ac001400bb00cc930100040600b400adacb1c1b19d80b31709b3b1adaeb8a6b2afaba7c6a29fbd06ab9aaeb100bea8a482b618b700adc0aba7b0000cb3afb806000304a1bb0500aeb5b0b805800009a1babea7b400a7b8b50380000a02c0a40aa3a8c0ab00c6a0fcb0 +8eb026a0c29800c9adafacbca395b7b400b5b70005009fb0b20aaa07000fa7bcafa7ac00a8b0ba09000b800037a7c59eb6baafbca502c2abb0a5b2b6b2a800aab2b3b2acafa4acc2ab9cccbb00acadb4bcaf0ba7b5ca97b1a8acaa00afb49baebb00a3b7b6800024bd00bbaab208afb5aeada2000d0bafb8b3a6b00bafb5a90002ba00af07b4b6b0a7b201a7b1fcb0 +8eb002b1bcbe800006a8b5adb3bda9078100060301b2b8bfaebd800015a4c200b1aab9baaaa7a6b9b200b8b600b5a9b7baaaa880ab03bc02a30080b11ea5b9b0a425a5b1b6b3a9aeb9aab9acae9eaa03b1bcada4a600baada3c2b7a880b61201aea2c4bb00aab5b0aa06000400aac2a3019b80b6019d11810006adacaba6c100b880000d13a4a90da7009fafb3bda60fa1b8fcb0 +8eb01db4a59dbc06a8b8a8a0c6acc1b8aac1a9afb59db9a3a4c2b1b2adb0b3a8a580b423bdb9a4b2bab29dc1aca8b2acb0bab0b5a40704b2bbadd3a3b1b693b5aeabafb8afb8afa880b000c0800024a7baa2bdbeb100c09bafb8aaa800b0c2ab9c02acb6b4ac120004a809aca8b400ccb2aa100380000bb5bda3bac29507a801b2adbe80a7091a06b2bcaba3b300c4a9fcb0 +8eb01ab2b7bab600b5b8bcba9cada5a6b0afb6adb8b6a1bdb79bb3b6a4b980b625b5b9a1a7a3bba9abaa9fb5abb7baadafb1a7afbaada7afa2b3a3aeafb1c1b1adaeb0b6b3a8b880af09bea500a6c3b2b0b69ab9800020c9a3acb9bd07aca5000db0adb9a1ae0008afab00acc6a6adaba39b1300aa0fb19e80b309aea60cb400b7b2a4c7b1800007b0a3c1acad00a7abfcb0 +8eb003aea6b1b9800001b1a380b232b8acbeb1a8b1b6a3bbb9b0b2a7b8b2b0b4a3afa6aac3bda2b0adb4bdc0a8b7a7a6b3afabb6b8a2b6b5bfafc2abb6afa6afa8ae80b40da9acb7b5ada7b700b3b7b19fbbb380ac00b5800004b6b3b49e0380002eb9adb4b1a5c7b4beaf9abc02b2b3a3bcadbeb6aeafb100adbcb600070cabae0100b0be9ab304cbbdb599b9a702bab8fcb0 +8eb009b2adb5a8b200b5b3a9af80b51da5b2b3b1b2afaea7aab2b7abacb1a2bdb3b2afaeabb2adbda8b1a7b3adbf80ac0bb5aaabaeb5aaaeadaea2b8ad80b40dacb9acabb5aeb7afa8b1be0007b380ae0bbaafb0b4aeafa51400aaaeb580b02eb1afaab3b4a6acafa9aeb6b0b2abaeb5a8b3aaafb9a7b2b1aabd9f04b4acb5afaab9afa4b9b1aaa4aea9babda700acfdb0 +8eb004a6c2a8acb5800010b3a5b8b9a0c2a6a8b3a6c1a8adbaaeb4ae96b017b49ebeb0a8bcb0abb9aaa9bda9aeb8acb1b2ac000aa6b4ab86b001b2af800013b3b4b6a8b2b9a2b8aeb1acb3b2afb1b0b9a4b5b286af86b10fb6b0a9aeb4a5abbfb6b8aba80500a5b7fcb0 +8fb016abadbe99b81400c2a9acbca6aecca3b8acb5bca6afadba96b213adb6abb3b6a5afb5a8b1c5a6b4a3afaba7b40d0080af01bbaf86b003b6adabc580001108b0b49bc2ad9dafb7abaf9ec5ae9dbcb5ac86b186ae0fa6a9c0afa4c1ac9d9abc00159ecaa9b2fcb0 +8eb006aeb5a9b0c6a3ac80000cabb3adabafa5b6b1aeb0baafb880a796ae16b2b9abb9a3b4a8b7a9b5aaa4bbc7a9b51300b5aaa8b4a187b017a4c7a1a2c2c300080200b5b9b0b3b9a5babca4a9bdaebfa286b086b20fadb6ada6c39db3ba0b08009bb6a6a1b1fcb0 +8eb008bc98c6a8a5b5a4ba0c80000cb4afb7b6a99ebfaca0b4afb9b596b30cae9ac59ababbb4a0bba5b3b5ad80000804a5b1bda1c0adb5ac86b080ad06c5aaa8afb2a3b98100000a8000050dada1c3a7ac80ae00bd86b086ae05b1adbcb5a605800007069db4c4acb4b5b8fcb0 +8eb009aac19abda8b3aab9abb881000aa5b6acbdaabfa3b6b1b8a996ad17aebfb2bca7abb6aeabac14010011bbacb5ada5acafacb2b686b00fbbad9fb8acabc1bbb9afc8a7adb9bca08100020d000c880086b103bcad0004800009aba5aabab0aea9a8b6a5fcb0 +8eb00eb3aab7adbaa8ba9eaaa3bdb2b50001810001a7bf80a701aeba96b215b4aca89ac1bd000c0100a7a0b9b1a6b5afaeb0c0aab380ac86b012aeb3b9b4a5b2a9a39eb1a9b1b6a3adb8c8a4b480b202ab0cae86b288000db8adbe0800bcaeb1afa1bbb5b6abfcb0 +8eb017b6a6b9b6a7afb0c1b8bb9eb89eaeb2b10b000b04000e040096b117030006000100c1a6adc1a5bbaea8bca5b3aab4aaa3beb5a886b009baa6b0abc2b0aebeb1c080ad08b7adb5aa9bc1a5acaf800000b286af87b00eb5afa8b1ae0002b5b4b9adb3b1abb2fcb0 +8eb017aabda6a7bbb5a6a9abb4adabbdb3abb000b79fb7b1a7b3b4970002acabb380af01a9b880ae0dadacbdab9fbdafbbacadc0a2afb386b017aab8a6b9a7aabba9b8a6aab2bba4b1afb1b6b1a8be00b5ae8eb10facb7a5bdb0a5bd00afaab0b7acb7a7b8fcb0 +96b001a9c580ab0bbbacb4000a99c1b1b5afb1b496b0070600b1afb59dbbaca6b007acabb7aeb400b1b58eb00fb4b1afb5b1c1990a00b4aab2adb6afaefcb0 +96b00fb5a5a1b2bbaa000a9dc1aaa5b7aaa6ab96b006a400bbb795c5aaa7b007bcb7b0a800baa6a98eb00faba6aab7a5aac19d00b4b6b4b8a1abb7fcb0 +96b001b9a880bd0ba1b00fa5bcb7a2adbaadb1bb96b004b701ae9cbd80af00aea6b007a6a8b1bd00b3afb28eb00fbbb1adbaada2b7bcb600a7b49fc4b6adfcb0 +96b00facb6a49cbc0200b3a4b1b9b8afadb1a996b007a600b2bcbab0bbaaa6b007b4bfab00abb1bda38eb00fa9b1adafb8b9b1a4ac00bfabb8aca8b3fcb0 +96b00cacc2b0c5ab04b5abb3b1b5aba680b700a396b003c3a5029d80ab01acada6b004a8a3c100bc80a700c18eb000a380b70ca6abb5b1b3afb500aab5afb6b5fcb0 +96b00fb5aca8aca002a9b4b6a5abaaabb7b5b696b007acae0fb3acbea2baa6b007bca40fa6afb6a9ac8eb00fb6b5b7abaaaba5b6a9c001b1b2aeabaafcb0 +96b00f9cc2abb913afaab3b5acbab4aeab9faf96b001b1a7800003b7acb2a6a6b005acb700b1b4b880b28eb00faf9fabaeb4baacb5b8a2b000b9afb4b5fcb0 +96b002bfa7b280000ab3aeb0aeabb4a7b1bfadb496b080b105b700b7aab5aea6b007b900b3acb1abb0af8eb00fb4adbfb1a7b4abaeb2adb107a7b1b3adfcb0 +86b080b716a4bfb8a0c1a2a8b1bdadabb9aab0aeb40600aeb7a8aeb481b103aca8aeb696b007b3bdaf00b3b5a3bc9eb00fb6acb5acb7a6b7acaa14b1aab1bba9b696b00fb4a9b5ad0dafa7afb4a2c0a8b3b9b1a7f4b0 +86b010a4a5bda1acb4b0c1b9b195b8c0a4bfb3ad80000cb6be9eb8b3aab8b1bbabc6b29f96b007a2acaabd00abb4ae9eb00e9db9b6b8a8b7b0b6009facadb3b0b497b008adb8abb1000bb3acb580a504baa2a5bcb7f4b0 +86b000c580ad00ae80b406b6a3a9beb1b8a080b410a70b00b4aca2b7b4a6b3adaab9a0a5a9b896b001c0b180ac0200b0b59fb00fb8bd9daeb1a7ac0015bdafbaa2b7aeb296b00ab3aab6a3bb00a9baa6bdb780b802b6aca4f4b0 +86b01f9abea6b9acabb5aeada204020900010500adc1b8a9baaba7afadb3aab3b9bca996b007a3a4cba7020da9a59eb00fa8b0b6b5b1bea40eab97b2bba5b6aab396b00fb2a5b0c0b8a800a8b2acb295aab7b1b5f4b0 +86b003baabb2b480ab0a00050300b7afa4b6a90207800002ada6ab80b807b4b0aab4b0a6a5bf96b000ba80af04c0a000bfb39eb00fbca5acabaeba00afb2b6adafbba5b5af96b00db6abbba89fb31400abb8b6c2aca880b1f4b0 +86b001aeac80b0080f0011abacc1a8a40a82000e08150018a1a5b7a4c0a3bab6bf96af96b007adbda49ec40003aa9eb00eb39ec2b7a2b10eb7a0c2adb2b1abb897b002afc1a280ba06ad9d0500b293b580b301a9b2f4b0 +86b002b4b7b0800005cab0a7af9ebe80b412b0b9b4b9a1a3b20403050002a0cf9ba4b8adb396b007b1aca6d1aaab00ae9eb00eacc3a4b8aa0200b0baa7b1b7a5b5b497b002aea5be80a880b508bb05b6c1a6b4b8a2b3f4b0 +86b018a6b60001b3b79eb4010b00b4aaba9eb6b1abc19eb2b4a1bb01810003b9b0b1af96b007b1b3aea8b3ad0a009eb008b7a6adb00102b0b1aa80b004acbaa6b9a996b007aebda2b8b2abb8a3800005b6afb0afb8b3f4b0 +80ac16b5adb49fbeabb10100b1b4a7070002ae00adb2000fa7b380ab07c79fb9b2aca6b6ae80003408acafb8acb1ada4b5b1adb0a9b6b2a6c0a7b6b3b0b5acb2a7beacb1a7b7a0beb5a200b2bba7b5a3b2b7abb6a5bcafa7b5b6a4a9bc80ac23c3acb6a6b5b3acb0bca1b5b6aabab69a0ca2b2b1b6a7b2b6abaeabb0aeb3b4a4b7afb6ac86b016a4c0b0aab4a2b4b3aea7c1a8aabbafb0b703b19fc3a3b481b10da8afbba5b7aaaeabb4a7b1bfadb4e4b0 +17aeabadb2babba0bc0100c0b3a7ad01b3a8b1adbfb80396bc80ae02c0a2b881af10bcb2acaebbaa000300b8a9b2c2abafb6ab80ae02acbd9e80b120a9b3afb2aab9a3b6b0aec0a5b70009030098c7b3acbdabb2acb4b0bbbca1b3b8ad80ab13be99b8aeb8a6b2afaba7c6a29fb0a9b3b8b0c0a280b405aeb899c6b3b980b306a8b2b0bf9eb7b686b00cc09eb4a8bebfa8b0b8aea0b5be80ad81001502c39ebfa7b9acb1b3b89ab6bda8b5acbab4aeab9fafe4b0 +35b1b5b3af9fa9b1aa00aaa3b8a8040dabb0bea49fa902b5bba7c09ea2acb3c6aaacadb6baa5acb8ad00070600a7b7b19ebab4abbaafab80b10bb5baa7c6b3acb0b1afa9a4038300010a028000000580002f03adbc94b2b1a9b7baacb19cc8aaa7b7afa4acc2ab9cccbbaeb205000500bba5a2c4a2b0afa2b0aab4b2a9afb2bdaaa586b00aa6b2b0baa1adb2b3acbeba8100030aacbeb5800013bfaabca0b5abb0b1c0b4abb3b6a5abaaabb7b5b6e4b0 +27b3a8a5b3bdb5b900b6b9c2a4b4a300b8a7afb1c60594baaeb4aaaed0aaa8aaa6b2b0a3b4b5aeb1ac80ad01ab1280003ab6c1a4a6b6a5b3aebbaba8b2aaacb3add594b0050f00abbba5aeb4a7b2b0a7b7b6baa909001400bab5a5a7b2abbca5afbca4aeb9aab9acae9eaa0a8200030800061180000603000803b3acbc80b103ada0c0ae86b007b6a6b4acbbacb5a880000704bca4bc00010018800010aeaab8a8a9c0af9daea9b1b5b3b1b5aba680b700a3e4b0 +0da8b3b6afaaafa10daaa4aeb2b0c7800000bb80ae16ab00ccacabc195c596a9c2afb9b0afc3a2bcb2a2b7c2ad800001b7b880000bc5b7a2b7aabd9fb7aeb7b0a580a811a31800a5b3a7b2c1acb0adb3aba7beb09db280b409afb0b2000900b9aba9b680ae05a2c2afb8afa880b000c0800011a7c6b2acbaa4b6b198bec7aea7ac000900be80b302b4abad86b000b280b324aba4bf00020bb8aeb2adaeafacc69bbdc203000100b5aba0d2b3a5bda5a4b1b9b8afadb1a9e4b0 +05b3b5aca9acb4800019b2c999b6afa7a90ea6b8a409acaeb7b0a5b7a3b9b7a3a2b807af800003bd9cb6af800008ae11a8aebbb600b6b980b214aab3acb1a3bdacc1bb0500b9c5a9a6bf97adc3b8b580ba12aea0bfb7a8b3aea0bcbd9dc4000eada8b3b7a680b301a8b880af14bea500afc9a0a2b7a5adb3b7bcb49ab7aab6acadc5800003a9b8a7bb86b004b3b6a4af05800020b4a9b5b0a4b6b79fc0a6b4ada2b4acafb7000e0001b19fb0b9bcb7a2adbaadb1bbe4b0 +1aa9b2b8b1acba00aca9a8b2bbc0a3b300b3aab20bb1a8acb3b6b503800001b6b8800005c1090500aeb88000120b0800b3b8a6b9d800adabadb4b9b2aeb6b2a9800041b7b4b09bb6c89dbfafa6a7a4acada8c4b900baa1b6bea9b8aea7b90009a7a8bbadabacb7b5ada7b700b3ada2b2b4b0bbc99daea6acb7b2a8bcafa1afa4c70c00a5b286b01aaca70900b0b5c6a1b49fc5adb8a9bca0b4acb9aeb8b7af00b1a8bd80000a16a9b19dc1aaa5b7aaa6abe4b0 +02b3a8b380b421a205afb2b7b1a2b3adba00afb200a5030400aea807000a00b5a703b700a4b600a80980000706a8adb6adb8a89f800823b3abb9a5b5b6aaac0010aab3b1b2b3afaeb6a5beaab1bdacb1b5aaa809acbaabb0acadb680b31ba6000caca7b2b3b7afa8b1be0007b3b6b3abb8abaea5b7ae06b4acae80b208a9b5bdad9eb70004b286b009b80200c0a9a6b102010b81001ab2aeb3b0aab7a7abb2ac00b3a9b4a8baa902000a99c1b1b5afb1b4e4b0 +42a2b8afacb1b000b5aaafb8a2bab59f08b8a0090300ac00b4080003019fb7b80001afae0406a900b3b8a6b2a8b7aaabb3b2b40aa3adb7acb1b3b7a105bda1baaab30005810024afb3aeabaac3aaa61500bba0b4c0a4b4b0a8a4bab200b0b2afb0b9b5ada8b301aeb3b5aec080000206000880000ba6baaab2a5b4a8aebeaab1b2800023b0baabb6aaa3c1a80100afb3aeb7a403b302b6b2000ca3b1b9a9aeb2a5b801b2b5b4aea480b309b6b3001000a5beb4a6afe4b0 +0ab9b4a5a3baa70500b5b8a981001819a0aec10100ad0da8b400140009b8ab000500adb300a6bf0080a816aab5b8a8accba4aea700b5c3a9bdaf9db300bb9db5b2af80b20300b7a9b8800021b9c5b000060900bbacb7bb92b0b6b0b9b8b0a706b69eb8ae9cafb4b00b00ada8b1a8800013c2b0a7acaa01b7a7b5bbb8b3b8b3abb7a7b6aa0280aa08b8a4b3c4a6b109a5b380b022b5b9b3a70196b6c000bdb1a3aca8b7c1a700aeafa0bcc59fadaab1b2970a0faba3babde4b0 +10a8b2bca9b3b29e16a7acaaa4ccaba5baaf80000babb400aab00c0f01a2b9a30480000e010006c09c04b8acca96a9c0aeb0a980b31c10bca89db2adc800c8aeabb3a8b5b400a9b3adb3aa0e9fb0afa802a10981000ba9c3afb69dacb9a6b4099cc180ac4fc0b1b7ad009fbeb3b1ae0fafb5a6c5b0ba00b3aeaba0aea3b6a6a3b5aab8aab308a4c3afaba9c1b100b9acb5aab69cb20d00c4bc9907bba5b7bca11100ae03b0b2adbd9cc4b2adacb8aeb79900afb7a2e4b0 +1dafabb8aab3b1bf00b5b3b9b0a0b3afadaa09ba9cc900b5b6ab9c0a07b4b1800006acbbadb5a5ac09800028acc0aaa6adabbbb700b0b2a7beb6a3ad0097b4b6a4c0b0aa129fc7a4a50600b9000601b80300b7afbe80aa26a2b4b8b7b1a0c500b6b3b5aaa3a0b5a900b8acb1a7bd0005aeb2afa300b4b3b2b7ae0abf9faccc800009afb3ac00b79dadc5aea0800009c1afa9b8a3bfb000b3a880b21a00b1b8000c08000f00abb6b5a9a7acad0900b7aca6adbc0017a5b9e4b0 +14baabafaeb2aba60300aeb1b6adb3b1bcb8baa2b0a380af32adb2c69bafa6b100adb0afadb6afb5a3bcb6b0a6b9b2b6a4acab16b4b0adb7a0c200b3b9b3aabbb4a0a706b69db9be00b70003800007a20804b1b9aa000b80001ea9a6acbca500bca1b1b6bfb2a8ba00a6c69ec29fbb0200b6a4b9000ca3b6ad800001a31681000001800012ba03a9b4b1a9aeb20fcea4acb7a8a5c8a800c680a7040512a70005800003b105000380000113b98100090da2b5b7acafb200a8b4e4b0 +2fa9b0b6b7abafc5a600bc9fb1b6a4bb9ba998c1bcb7acbab2ba95c1b8af0007b7aeb6b2aaa7aeb9b6a9adb8b0a8baaeaf800012b9a2b6abb5a200b3abaaafaea5c3a505bdb0aa80004101050700a5c700b1adb600110008aeadb8b1b8b300a3bea7b6a9aec0af00aca4c0ab9fbba800b5c0000409ac99090010b50003000a140014a600b6b9b1a3b2be009780b205b1b4b1a6b70080a9110a03a800060004c2b80004c29fb4a60300af800008aeacb1b6a1b10ab2abe4b0 +07aab3abb3b1aaacaa80000fb7bca2b5b1c0b1caa1a9b3a9b8a1a7b180b32aad05a9a8b4aea8bba7bab998b1b4b3b0b1a2adb108b1a7b5b3acbdb30006b5aebea8b1a80d00a014000eb4800006b208bca500aab480000001800006bbb7aab89ba11380b43cb9aabba7af9a18b09bbeab13000a089fa10abb00b90b000aa0060cacb003a1bba20100a8abb7bbafa90013aaacb7b2b9a800b7000d00c0ac070004000b800006aba9c00400b9bc810008b9aebd9cb6ae00b9b3e4b0 +14aabaacb1b3a6b4b7b300adb2afacb1a8b6a2b8b0b180b012b3b8ada9b8ab00bbadacb0b6abb7a1b3b4afa980b10cacbdb200a4bbafacb3b0aab2b080003badabaeb6b400030200b5a3be0102b2a5b6b009a3b7000400a70fa8b1afacbd00b3aaa5b4b1abb4abbf0003b4a9be98bdacaeb709aaacb3ad0002a6b68000150c00a1bab5a80cadb8b29db2b8a0bb0002b1a5b3a60d80000304aeb0ac810009b503b0ac06b4aeb100c0800007b500acb4b6a0b8b6800001a4b2e4b0 +86b017b7a3000aaeb0b9a8b9afacb0b3a6bcadaca4b9a90100b2b380ae0dacb0abb9a5b3a8bfa2b4bea8000386b015a5b70205afb89eb6a8b3b2b0aca7b1b4b3a5b9abb0ac80ae08b9a8afb202b1b5acb3800024b5aca8c2a6aca9b8aea70f00b5b0a7bda5bbafa4b6a8b69ec1a8a6af05adac000406a503af86b027ac0d00b7a9b20100b3abadb8ae05a7aea5bdb4b000b3a905b40800c3a400b6afabb0bba003b1a4b4e4b0 +86b027a7beb8000c9ebcb3a5a8babca2b7a9b3b5b6a5beafa2c5a0b0b3b1ada8b9bba6afa8c7afa10904ae86b003beada904800007caaab7adb59cc0c180ac1ea6bbb9a8adb1b3b0a6c0a7a8b599adaf0014b899beadabb0bab4a2afc69909800016bba7aeb5b6b1b0b7adafb7b1b40bacbcb5bcb9a703b2a887b00dae0d00b9afb9a1a7baaead9eb3a780c2119bbab0a0bfa50400a7beb0b7c2a9b2bea8b5800002aec4a1e4b0 +86b003acaf9fae81000fb8bbaac09ebdb7b1b0a7b9a5a7b6adb080b70ea0a5c0b29eadc1bba0a40006a7b8af86b005b496baaeb50e810026b5bda3b9ac9ab3c1ad9eb2c0a5a0b7a5bcafb7beb9aa0700aca3c6b0a9b5aea5afb9b1a2bfabbe800080b401ada680b001afb980a80bb0b900ae9cb5a0b700acafb686b027b3a9b0020700b0b8bbb4acbcb8b3aaabb0a5b9b7bab2baa5b1b0aca4b4a7bfaca3b8000dc29dadb6e4b0 +86b006b7aebfa3bcb7be800004bf9dafabb080ae01b8ad80ba13abb0b4aeacbdbbb3acc49facaf11000ab1a6abaf86b007acc4b7aaa9ac9eb8830020b5beafac9fc4acb3bbbdacb0adb7a8a60001aebaa4b5a5a8c698bcbfa3b9aeb7aa80a501afc7810012b5baa9b1a8b1bda31400b3b6b10c03a5b3c2a086b005b4b3a3b3aeb282001db0a6a8b1b7a8a7bea9b6a0b7a8bebdaab3baa8b7aba8b60200aaa3b0bfb4e4b0 +86b01ea8b4ada5b4a3adbcaa0d000311a3b1abb399b5bba6b3b4a1a5ac9fadb7af0480010600bcb1afbcb6b586b019b6a2aaacb7bfb3afa6b9a7c0020008000104afb7ad9faca500088000190bb7a8bab9aab3a8bd9ac1aab1b4bfa2b3b0b7bda6aeb8a31004820006c6a9b49bb30005800000ac80b201a1c786b008afb1b9b3b9a4b6b9b2800500088100180ab2bab5a9aeb5afa0a7aba2c1b4000c0400aec0afb8a7b7a0e4b0 +86b012b3adb5b2a9b6b5a6be90b2a9a4000b040004078200800f0e0b0002000300b6b3b6acb39fb2a9ba86b003a5c1b9a480b0029fb6bf80b02ea7a9b59bc4b600030002000b0fb5acbaaca2abbaa49ebaa8baadb7aab3a7b4a2aeb3bea2a6c0a8aeb09aafb9b4bca681000a1701b3b0a9afbeaeb4acad86b00fb3b7a5c5a1a7c2a2aeb99eb3baaabba1800000038100800b0201130580000aa7b2a6aeb1abaebab0b8b2e4b0 +86b00ea6c5adafbeaaa9b8a5c4b3b5aeadb180ab16b5a3a5bfb7a2a199b7b4b1b5b49cbdb696c7abb6bfbaa186b047aeaa9ec6abbbaeb0a9a8b3b2b4adca9dbd9cb4b5b1b4b7999fbbaab8b1b5b7aec1b0afa7b6b9a6b6bab8aabda8a9aabea0b9b1b0b9adb7adb6acb4c3ab8fb9adb09fc5afa2b6bead86b001ba9a80b223abaeb7afb7a3baa8bcb29dbbb2b0a5c0b6bea7a6b9ae96b4c3baa0bbb4afb6b39bb9a2b2e4b0 +86b027b7a7afadacbeadb0b1afa7b6b0bda0b7b0b7adb1aea9b8b5b3bbada9b6a1c4a7b2bca3b3afaca8b686b019acbda9b1b6aeafb3b1b2b1abb4b0a7b4a7c4a1b6a9adbbb3bea880ad1ab0aab1aea9a6b5bba7a6bdaab0a5b5afb0adc3a2b7a9b5adaeb1b280ab0eaeb2aeb1c2a0b7b4bda1a9c4a5afb286b021adbeb0acb5b7a3b3afb3a8bc9eb2bfa5acb6b0a8b2adacbcadb7b6b2a5b0b4acaeb980aa03bbb1aeb8e4b0 +feb0feb094b0 +feb0feb094b0 +feb0feb094b0 +feb0feb094b0 +feb0feb094b0 +feb0feb094b0 +feb0feb094b0 +gr +gr +%%PageTrailer +rs +%%BoundingBox: 18 75 521 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 8 8 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Italic fcd /Times-Italic-ISO8859-1 fdf}if +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<736368656d613d737472696e67287b2273747275637475726564222c22756e73747275637475726564222c22616d72227d29> 109.20 64.80 C +<20> 364.32 64.80 C +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a205468697320696e6469636174657320746865206461746120736574> 367.44 64.80 C +<736368656d61206265696e672075736564206f7574206f6620746865203320646566696e65642061626f76652e2020546869732073686f756c642062652061626c6520746f20657870616e6420746f20636f766572> 72.24 78.24 C +<4749532c204368656d69737472792c20616e6420706572686170732072656d6f74652d73656e736f7220646174612063617465676f726965732e> 72.24 91.68 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<536368656d612074797065203d20737472696e67287b22756e69666f726d222c2272656374696c696e656172222c226972726567756c6172227d29> 109.20 105.12 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a2020546865736520617265207375627479706573> 397.92 105.12 C +<6f6620227374727563747572656422206772696420736368656d61732e2020546865726520617265206e6f20737562747970657320666f722074686520756e737472756374757265642067726964732e202054686973206973> 72.24 118.56 C +<6a7573742061207072656c696d696e617279206c697374206f662073756274797065732074686f756768206265636175736520696e207468652066757475726520796f752077696c6c206e65656420746f20737570706f7274> 72.24 132.00 C +<756e69666f726d20736368656d6173207768657265207468652066756e64616d656e74616c20756e6974206973206120747269616e676c6520726174686572207468616e2061207371756172652028726567756c6172> 72.24 145.44 C +<617272617973206f662074657472616865647261292e20204c696b65776973652c2074686572652077696c6c20626520646966666572656e7420736368656d612d747970657320666f722047495320646174612e2054686973> 72.24 158.88 C +<69736e27742064697363757373656420696e207468697320646f63756d656e742074686f7567682e20> 72.24 172.32 C +<20> 268.32 172.32 C +<5468652022> 72.24 199.44 C +ski{/Times-BoldItalic fcd /Times-BoldItalic-ISO8859-1 fdf}if +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5368617065> 98.88 199.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222067726f75702077696c6c20636f6e7461696e20646966666572656e74206f626a6563747320646570656e64696e67206f6e20776861742022736368656d612220616e64> 129.60 199.44 C +<22736368656d6120747970652220697320757365642e20205468697320776f756c642062653b> 72.24 213.12 C +ski{/Times-Bold fcd /Times-Bold-ISO8859-1 fdf}if +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<536368656d613d22> 72.24 240.48 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<73747275637475726564> 126.00 240.48 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222c20736368656d61747970653d22> 176.40 240.48 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<756e69666f726d> 263.04 240.48 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<22> 303.84 240.48 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<5468652067726f75702077696c6c20636f6e7461696e20612073696e676c65206172726179206f66203c> 109.20 253.92 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6e7370616365> 310.32 253.92 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2a323e206c656e67746820776869636820636f6e7461696e7320746865> 343.44 253.92 C +<626f756e64696e6720626f7820636f6f7264696e6174657320696e20746865206f72646572> 72.24 267.36 C +<20> 255.84 267.36 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<786d696e2c786d61782c796d696e2c796d61782c7a6d696e2c7a6d6178> 258.96 267.36 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<2e2e2e206574632028746f20757365> 418.56 267.36 C +<63617274657369616e20636f6f7264696e6174657320666f722074686973206578616d706c65292e2020546869732077696c6c20776f726b206964656e746963616c6c7920666f7220646966666572656e74> 72.24 280.80 C +<636f6f7264696e617465732073797374656d73206c696b652073706865726963616c206f722063796c696e64726963616c20636f6f7264696e617465732e202049276d206e6f742073757265207768617420746865> 72.24 294.24 C +<72616d696669636174696f6e7320776f756c6420626520666f72204749532070726f6a656374696f6e732c20627574207468657920776f756c64206c696b656c7920626520756e646572206120646966666572656e74> 72.24 307.68 C +<736368656d612e20> 72.24 321.12 C +<20> 114.24 321.12 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<536368656d613d22> 72.24 348.48 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<73747275637475726564> 126.00 348.48 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222c20736368656d61747970653d22> 176.40 348.48 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<72656374696c696e656172> 263.04 348.48 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<22> 314.16 348.48 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54686520225368617065222067726f75702077696c6c20636f6e7461696e203c> 109.20 361.92 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6e7370616365> 271.20 361.92 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3e20617272617973206f6620636f6f7264696e617465732c2065616368206f66207768696368> 304.32 361.92 C +<617265206f66206c656e67746820657175616c20746f207468652072657370656374697665206c6f676963616c20646174612064696d656e73696f6e206974206973206173736f636961746564207769746820286f722031> 72.24 375.36 C +<6d6f7265207468616e20746861742069662063656c6c2d63656e746572656420646174612069732075736564292e20205468657920776f756c6420636f6e7461696e2074686520656467652d636f6f7264696e61746573> 72.24 388.80 C +<666f72206461746120616c6f6e67207468617420617869732e2020546865206172726179732061726520616c6c206e616d6564> 72.24 402.24 C +<20> 311.04 402.24 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<65646765636f6f7264> 314.16 402.24 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3c6e3e207768657265206e206973207468652064617461> 364.56 402.24 C +<64696d656e73696f6e206e756d6265722028313a4e64696d73292e20205468657920616c736f2068617665207468652061747472696275746573> 72.24 415.68 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<747970653d226564676520636f6f726422> 109.20 429.12 C +<617869733d227822206f7220227922206f7220227a22> 109.20 442.56 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3a20205468697320636f756c64207065726861707320626520616e20696e74656765722c2062757420746865206f72646572206f66207468652061786573> 215.52 442.56 C +<636f756c6420626520696d706c69656420627920746865206f7264657220696e20776869636820746865792061707065617220696e207468652067726f75702e> 72.24 456.00 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<536368656d613d22> 72.24 483.60 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<73747275637475726564> 126.00 483.60 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222c20736368656d61747970653d22> 176.40 483.60 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6972726567756c6172> 263.04 483.60 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<22> 307.44 483.60 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54686520225368617065222067726f75702077696c6c20636f6e7461696e203c> 109.20 497.04 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<6e7370616365> 271.20 497.04 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<3e206172726179732077686572652065616368206172726179206861732061206c656e677468> 304.32 497.04 C +<657175616c20746f20746865206e756d626572206f6620656c656d656e747320696e20746865207363616c6172206461746173657420287468652070726f64756374206f6620616c6c206f6620746865206c6f676963616c> 72.24 510.48 C +<64696d656e73696f6e73206f66207468652064617461736574292e20205468697320636f6e7461696e7320746865202278222c2022792220616e6420227a2220636f6f7264696e6174657320666f72206561636820766572746578> 72.24 523.92 C +<6f6620746865206772696420287573696e6720612063617274657369616e206772696420617320616e206578616d706c653b20746865206772696420636f756c6420626520616e7920636f6f7264696e617465> 72.24 537.36 C +<73797374656d292e20205468652064617461206d61792062652063656c6c2d63656e7465726564206f72207665727465782063656e7465726564206f6e20746869732067726964206f6620636f757273652e2020546865> 72.24 550.80 C +<6e616d65206f662065616368206f662074686573652061727261797320776f756c64206265> 72.24 564.24 C +<20> 257.04 564.24 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<636f6f7264733c6e3e> 109.20 577.68 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<7768657265203c6e3e206973207468652074686520706879736963616c2064696d656e73696f6e206e756d6265722028313a6e7370616365292e> 72.24 591.12 C +<54686572652061726520616c736f206174747269627574657320666f722065616368206f66207468657365206172726179733b> 72.24 604.56 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<747970653d22636f6f72647322> 109.20 618.00 C +<617869733d227822206f7220227922206f7220227a22> 109.20 631.44 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20666f72207468652063617274657369616e2063617365> 215.52 631.44 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<736368656d613d22> 72.24 658.80 C +/Times-BoldItalic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<46454d> 123.84 658.80 C +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<22> 150.24 658.80 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54686520636f6e74656e7473206f662074686520225368617065222067726f757020617265206e737061636520617272617973206f6620636f6f7264696e6174657320776869636820617265> 109.20 672.24 C +<6e616d6564> 72.24 685.68 C +<20> 104.16 685.68 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<636f6f7264733c6e3e> 109.20 698.88 C +gr +%%PageTrailer +rs +%%BoundingBox: 18 73 521 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 9 9 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<7768657265203c6e3e2069732074686520706879736963616c20636f6f7264696e617465206e756d6265722028313a6e7370616365292e20205468652022> 72.24 64.80 C +ski{/Times-Italic fcd /Times-Italic-ISO8859-1 fdf}if +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<74797065> 378.48 64.80 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222061747472696275746520666f722065616368206f66> 398.40 64.80 C +<74686573652061727261797320776f756c642062652022> 72.24 78.24 C +/Times-Italic-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<766572746578> 184.56 78.24 C +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<222e> 213.60 78.24 C +<546865726520697320616c736f20616e20617272617920776869636820636f6e7461696e73207468652063656c6c2074797065732e20205468697320636f756c6420626520616e206172726179206f66> 109.20 91.68 C +<756e7369676e6564206368617261637465727320286c656176696e67203235362064697363726574652063656c6c207479706573292c2062757420636f756c6420616c736f20626520696e74656765722028616c74686f756768> 72.24 105.12 C +<7468617420776f756c642074616b65206d6f7265207370616365292e202054686520636f6e74656e7473206f662074686520617272617920776f756c6420626520696e7465676572206964656e7469666965727320666f72> 72.24 118.56 C +<656163682063656c6c207573656420696e207468652063656c6c20636f6e6e6563746976697479206c6973742e202054686973206c697374206973206e616d6564202263656c6c207479706573222e20205468657265206172652038> 72.24 132.00 C +<66756e64616d656e74616c2063656c6c2074797065732c20627574206964656e74696669657273207468617420617265206265796f6e6420746865736520382074797065732061726520636f6e7369646572656420746f206265> 72.24 145.44 C +<22757365722220646174612e202049276c6c206e6f74206578706c61696e20686f7720757365722d646566696e65642063656c6c732061726520726570726573656e74656420726967687420686572652c20627574> 72.24 158.88 C +<617373756d6520666f72206e6f772074686174207468657920776f756c6420626520616e6f74686572206f626a65637420696e73696465206f662074686520225368617065222067726f7570207768696368> 72.24 172.32 C +<646566696e6573207468652063656c6c277320636f6e6e65637469766974792e20> 72.24 185.76 C +<20> 222.24 185.76 C +<28696d61676573206f662074686520382066756e64616d656e74616c2063656c6c20747970657329> 109.20 199.20 C +<546865206e65787420617272617920696e2074686520225368617065222067726f75702069732074686520636f6e6e6563746976697479206c69737420666f72207468652063656c6c732e2020546869732069732061> 109.20 239.76 C +<6c697374206f6620696e74656765727320776869636820636f72726573706f6e6420746f20746865206c697374206f662063656c6c2d74797065732e202053696e636520656163682063656c6c2063616e20686176652061> 72.24 253.20 C +<646966666572656e74206e756d626572206f662076657274696365732c20796f75206d75737420737465702073657175656e7469616c6c79207468726f75676820746865202263656c6c2074797065732220617272617920696e> 72.24 266.64 C +<6f7264657220746f2064657465726d696e65207468652070726f706572206f666673657420746f206120706172746963756c61722063656c6c2e202054686973206c6973742069732063616c6c6564202263656c6c732220616e6420686173> 72.24 280.08 C +<612022747970652220617474726962757465206f66202263656c6c73222e> 72.24 293.52 C +<416e206164646974696f6e616c20286f7074696f6e616c2920617272617920666f722066696e69746520656c656d656e7420646174617365747320697320746865202263656c6c206f66667365747322> 109.20 306.96 C +<77686963682069732061206c697374206f6620696e7465676572206f66667365747320696e746f207468652063656c6c20617272617920776869636820686173206120312d746f2d3120636f72726573706f6e64656e6365> 72.24 320.40 C +<7769746820746865202263656c6c207479706573222061727261792e202054686973207065726d6974732072616e646f6d2061636365737320696e746f207468652063656c6c20636f6e6e6563746976697479206c6973742e> 72.24 333.84 C +<546869732063616e2062652067656e657261746564206175746f6d61746963616c6c792c2062757420736f6d65207573657273206d61792077616e7420746f207472616465206f66662073746f72616765207370616365> 72.24 347.28 C +<666f722073706565642062792073746f72696e67207468697320737570706c656d656e7461727920696e666f726d6174696f6e2e> 72.24 360.72 C +gr +%%PageTrailer +rs +%%BoundingBox: 18 411 519 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 10 10 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Helvetica-Bold fcd /Helvetica-Bold-ISO8859-1 fdf}if +/Helvetica-Bold-ISO8859-1 ff [13.92 0 0 -13.92 0 0] mf sf +<414d52204461746120536368656d61> 72.24 80.88 C +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 72.24 82.08 t 72.24 83.04 lo 194.88 83.04 lo 194.88 82.08 lo cp f st gr +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np +0.000 0.000 0.000 RGB +ski{/Helvetica fcd /Helvetica-ISO8859-1 fdf}if +/Helvetica-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20> 194.88 80.88 C +<20> 198.24 80.88 C +ski{/Times-Roman fcd /Times-Roman-ISO8859-1 fdf}if +/Times-Roman-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<54686520414d52206461746120736368656d6120697320676f696e6720746f20626520612062697420646966666572656e74207468616e2074686520726567756c617220736368656d612064756520746f20697473> 72.24 94.80 C +<636f6d706c6963617465642074696d652d7374657070696e6720616e64207370617469616c207374727563747572652e2020486f77657665722c20697420646570656e647320656e746972656c79206f6e20746865> 72.24 108.24 C +<61626f76652d7370656369666965642067726f7570696e67207374727563747572657320666f722046454d20616e642073747275637475726564206772696473206265636175736520656163682073756267726964> 72.24 121.68 C +<6f6620616e20414d522068696572617263687920636f756c6420626520616e79206f662074686f7365206461746120736368656d61732e20205468652070726f706f7365642067726f7570696e67> 72.24 135.12 C +<7374727563747572652068657265206d757374206265206e657374656420696e746f206c6576656c73206a75737420617320746865206e657374696e67206f66207468652061637475616c2064617461207374727563747572652e> 72.24 148.56 C +<416c736f2c2065616368206e6573746564206c6576656c206d75737420636f6e7461696e2061202254696d6547726f7570222064617461737472756374757265206265636175736520646565706572206c6576656c73> 72.24 162.00 C +<696e20746865206869657261726368792073746570206174206120677265617465722072617465207468616e2074686520726f6f74206c6576656c2028666f7220696e7374616e63652c2065616368206c6576656c206d69676874> 72.24 175.44 C +<7374657020747769636520617320666173742061732069747320706172656e74206c6576656c292e202045616368206c656166206f662074686973207472656520776f756c64206265206120224461746147726f75702220736f> 72.24 188.88 C +<7468617420616e792074797065206f662064617461202846454d2c206972726567756c61722d7374727563747572656420677269642c2072656374696c696e656172202e2e2e20657463292063616e206265206e657374656420696e> 72.24 202.32 C +<746865206869657261726368792e20205468652074696d652d7374657070696e67206f7264657220666f7220746869732067726f7570696e6720737472756374757265206973207468652073616d6520617320746865> 72.24 215.76 C +<6f72646572207468617420796f75207669736974206e6f64657320696e20612064657074682d66697273742d736561726368206f66207468652074726565206f662067726f7570696e6720737472756374757265732e> 72.24 229.20 C +<20> 72.24 256.80 C +ski{/Times-Bold fcd /Times-Bold-ISO8859-1 fdf}if +/Times-Bold-ISO8859-1 ff [12.00 0 0 -12.00 0 0] mf sf +<20202020202020202020202020202020202020> 75.36 256.80 C +<20> 134.64 256.80 C +<414d522047726f7570696e67204469616772616d> 137.76 256.80 C +0.240 sw +[] 0 setdash +0 sc +0 sj +gs np 137.76 258.00 t 137.76 258.72 lo 268.08 258.72 lo 268.08 258.00 lo cp f st gr +gr gs +0 0 t 0 755.04 lo 574.80 755.04 lo 574.80 0 lo cp clip np + 87.60 262.08 t 87.60 474.00 lo 341.76 474.00 lo 341.76 262.08 lo +cp clip np +gs +0.6348 0.5298 sl +137.9962 494.6772 tl +400 400 8 [1 0 0 1 0 1] +/datastr 400 string def +/pp 1 string def +/s 1 string def +/rn{currentfile s readhexstring{0 get}{pop exit}ifelse}def +/unpack{ + /DC 0 def + /BC 0 def{ + DC datastr length ge{exit}if + rn + /BC exch def + BC 127 le{ + /BC BC 1 add def + DC 1 DC BC add 1 sub{ + datastr exch rn put + }for + }{ + /BC BC 126 sub def + rn + /pp exch def + DC 1 DC BC add 1 sub{ + datastr exch pp put + }for + } ifelse + /DC DC BC add def + }loop + datastr +}bdf +{unpack} bind +image +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +8eb007b2b6a3b8aca6c2a886b107abaac1ada2b6b0b386b107b3b1a5b9b4a5b7ab86b102b3a2b280b502b3a4b586b107abafb1b9a0b8b2ae86b128aaaeb8a7b8abb1abb4a5b0b5a4aebba9abb5b6bba7a4bdabaeacc2b1a8b5abb3b5acb0b4aba7adafb180b003afa2bca687b107b5a8bbb9a1a7c1a486b107abaac1ada2b6b0b386b107b3b1a5b9b4a5b7ab86b102b3a2b280b502b3a4b586b107abafb1b9a0b8b2ae86b128aaaeb8a7b8abb1abb4a5b0b5a4aebba9abb5b6bba7a4bdabaeacc2b1a8b5abb3b5acb0b4aba7adafb180b003afa2bca687b107b5a8bbb9a1a7c1a486b107abaac1ada2b6b0b386b107b3b1a5b9b4a5b7ab86b102b3a2b280b502b3a4b586b107b2acadb4adbe9fb7a6b0 +8eb005a6b4b8b2030488000009800001b8ba8a0006010006aaad000987008008030001a3c78800000b8000030a00b4ae87000b030007000b00b1a11c000d128000000882000a05080002b7a60400160002800080010300030905800005acb0000600098700050100b1a2000f88000009800001b8ba8a0006010006aaad000987008008030001a3c78800000b8000030a00b4ae87000b030007000b00b1a11c000d128000000882000a05080002b7a60400160002800080010300030905800005acb0000600098700050100b1a2000f88000009800001b8ba8a0006010006aaad000987008008030001a3c787000302000b08800001bbaea6b0 +8eb002b6a1ae8100011208880005bc9d000d0c028700040211adaf0a8800000c8000040eacb800068600060710000d00b0ab87000101078000041100b4b0068300130b0006000b00010004b0ba0004090009000c0009840003afae0a0e81000001870002afb903800201000b880005bc9d000d0c028700040211adaf0a8800000c8000040eacb800068600060710000d00b0ab87000101078000041100b4b0068300130b0006000b00010004b0ba0004090009000c0009840003afae0a0e81000001870002afb903800201000b880005bc9d000d0c028700040211adaf0a8800000c8000040eacb8000686000009820002c1aeb7a6b0 +8eb002b5bba78000000b890002a9ac1a8c0001aba08000010d088700030600aab28b00040600bcaa018700060500130e00bba58000020510058000000382000612000ea7b2001280000011810000058000050f07001eadb98100010702880001bba78200000a880002a9ac1a8c0001aba08000010d088700030600aab28b00040600bcaa018700060500130e00bba58000020510058000000382000612000ea7b2001280000011810000058000050f07001eadb98100010702880001bba78200000a880002a9ac1a8c0001aba08000010d088700030600aab28a0006170011ab99b6a4a6b0 +8eb007a9b0b8c5a0bea8bd86b103a7c3b39e80bc01a2bc86b107bbaea1bdc3b2b39f86b107beb49cb2b5abc1af86b180bd05b5a89abdabb586b10db69babaaada5c3b5b1a09fadb3b280b316b5b7b3a0a6b8b3b5b6a5c5baa0b6b9a6a5c0b19db3beaf80ac04b5b0c8afb180af86b107a1b5bba8caadbda186b103a7c3b39e80bc01a2bc86b107bbaea1bdc3b2b39f86b107beb49cb2b5abc1af86b180bd05b5a89abdabb586b10db69babaaada5c3b5b1a09fadb3b280b316b5b7b3a0a6b8b3b5b6a5c5baa0b6b9a6a5c0b19db3beaf80ac04b5b0c8afb180af86b107a1b5bba8caadbda186b103a7c3b39e80bc01a2bc86b107bbaea1bdc3b2b39f86b107beb49cb2b5abc1af86b107abaeadb8b5bd9fc4a6b0 +8eb004b6aaa0a3bd80ac00ae86b007b7afaca9afaba3b986b007aabbb0aaaca5abb486b007a9a5c7b8a4b3a9a586b007a4a3adc1adaabaaa86b006a9b8baa7c0ba9880ae02bcc1b880b106afa9aea4adcac280a10db4c89da4bab2a8aabab0b8b1abad80a308baa6b0aaa9b0a9a0c086b007b8b2a6b19eb8a4b686b007b7afaca9afaba3b986b007aabbb0aaaca5abb486b007a9a5c7b8a4b3a9a586b007a4a3adc1adaabaaa86b006a9b8baa7c0ba9880ae02bcc1b880b106afa9aea4adcac280a10db4c89da4bab2a8aabab0b8b1abad80a308baa6b0aaa9b0a9a0c086b007b8b2a6b19eb8a4b686b007b7afaca9afaba3b986b007aabbb0aaaca5abb486b007a9a5c7b8a4b3a9a586b007b6babca399bbb99ca6b0 +8eb007a2cdb6a8b2b6a3bb86b007aaabb4b2b8b7a8af86b001b99a80b903a0b7bda786b000bb80ab04a3aebdafb286b080b305b49cbdb59dbb86b02fb2acb1a99fb8aac4bba89ba5b2acabb9b0b7ba8fb2cd9bbc9fc4afa8b8b1aea7aaadaeb1babdb2a6b4c3abb2b7a0c8a686b007a7b7b5b1bd9cb2b186b007aaabb4b2b8b7a8af86b001b99a80b903a0b7bda786b000bb80ab04a3aebdafb286b080b305b49cbdb59dbb86b02fb2acb1a99fb8aac4bba89ba5b2acabb9b0b7ba8fb2cd9bbc9fc4afa8b8b1aea7aaadaeb1babdb2a6b4c3abb2b7a0c8a686b007a7b7b5b1bd9cb2b186b007aaabb4b2b8b7a8af86b001b99a80b903a0b7bda786b000bb80ab04a3aebdafb286b007a8b0a8b3c9a8b3baa6b0 +8eb007b4a2b1b4a6b2afb086b107adbda8b6b1a6c2ab86b107adc0acaabcaea8b786b107b0adb7b8b1aeadb486b107afb3b2b4adb4b1b286b10aaeb7a5b1b9abbea0a6b7b980b313b1aeb2b0aea9c1aaa0c4a4b4b0aea8b1b5abb4bc80a90cb4afa8afb7b2a4b5adacbfa2b086b107b3b2abb1afb8b4ae86b107adbda8b6b1a6c2ab86b107adc0acaabcaea8b786b107b0adb7b8b1aeadb486b107afb3b2b4adb4b1b286b10aaeb7a5b1b9abbea0a6b7b980b313b1aeb2b0aea9c1aaa0c4a4b4b0aea8b1b5abb4bc80a90cb4afa8afb7b2a4b5adacbfa2b086b107b3b2abb1afb8b4ae86b107adbda8b6b1a6c2ab86b107adc0acaabcaea8b786b107b0adb7b8b1aeadb486b180b605b2adacb4a8b2a6b0 +96b007afa5b8a8b1b69fb286b00fb7a8afb6aaafb4aba3c4a1b9aaafbaa9a6b00aafaab8bb9aaec5acb0b7a480b308a9b7afadb3a7b8020780000004800000108000080600b5aeb2aea6b5af800001060780000bb0bdaab0baaca3b8b2bba8b480b104b2aca8b7b2feb0eeb0 +96b007acb9b2b5a5b5bbb886b00facc0a4baaaa9aab6b7a9b2acbaa6b7a9a6b003acb4a2ad80bc2695b0baa8bcaec4a9000b0400040097b1ccadabbca2b6a7aeb5b4b0aaaeb4b7b0b7a4baaaadafb381000f04a5b7c1aea89eb99fb4b6a9b5b0b1aafeb0eeb0 +96b007b8b0a3b1b897b99886b008aea3b8bab9b5bca9a180b404b3a4c0a8b3a7b009a8c69cb5b1b6bda1b7b08000320e0900afb1bbabc8a3a6b2a5bfae95c29cb9aba2b1baada7b3a8bab5aab6baabb7b1afa8000200b4acbdacc4a3a6beb7b5b7b5feb0eeb0 +96b0079fbbb9a9adc700c986b00fbb9ac4a4a0bcb2a7c3ada2b2b3aaa2b4a6b00eafb7a7b4bba5aaa5bf070005b2aea380ad0cb4a4b59cbfb1a9ba9dbbc0aac080ab1fb8b2a4b1adc2b2aaacbd9bb6b2a3afb6b5b9aa09000ba2b0ada4baa4a6a8b6acfeb0eeb0 +96b007b6adb2adbaac00a786b00fb8b79daac0bd99c0a7b5b1a7b8accda8a6b03fb69bbaacb0b9ba0600afaca7b4a8c7b7b4aaadb5c2adaab4b700b3aaa7a6a8bdb1a99ac5a6a1b9afb7a7bca7a9adc7a2aaa9b3b1aaa60f06b6b7b4adaab9a3b4feb0eeb0 +96b007b4baa1ad9eab16af86b006a1b4cab4aaa0b88100050e070001a7a6a6b002aabdab80b20ea7b400a8afbbabb7c29baca5bdafaa81000e16000a010013030b000bb3bca8b1ac80b306a9000209b6b39d80b80ebba4b3b5a8b0ae00029fb8b6a8c9a7feb0eeb0 +96b007a3afbcc19e09a3af86b00fb4b5aca5b1110002b4bd00b1b4a702bda6b034bcadacb5aea317b4b9a2c2b0aa9eccb1a1ce9bb508bac0a5c200b0b2aea1afb9a69eaeb3a9bc9e0306b7b100bfa1ca9ca89cb8cca080b508aaab0a05b29eb890c0feb0eeb0 +96b007bfa8aaa9c900bbac86b003b9a1b6b980000906b0b2a5aeb7a90a01aca6b03fafa7b3b5b201abadb1b0abb1b4b2aeabb3afadbaa5afaeb0ad00acbaaeacb3a9b3bdb4afaa0d00b5abb6acaeb4aaabb6afc0a7a4b5a9bda9b5a6a909b6a9bbaafeb0eeb0 +96b007b6a2b7afb401b2ab86b00faabaac06ac00c0a4afb1bcad00bf00b9a6b007acb4b7aaae02a5b78eb017b400b9a9b3baa2b2bca6b2b3b200bdb3aab7b6adb6a3beaf86b007c2a2bd0103a9adb3feb0eeb0 +96b007b2aebe9fb700a1c786b00fb3aa00ad00c4a3bab0b4a800bda40ba9a6b007afbb9cbf0002bea28eb017b800b8a1b0b3baaaa4babd000bb1ac9db2b3a8b1b2a1b0ae86b0079eadb2a800b4acb1feb0eeb0 +96b007b8a8b0b203c2ab9e86b001abbc80060bb993b2a7b1a501b6b0aa00c1a6b007aeb2acb000aca5b88eb012a400b7c0a6abb7b3b5a70008bcacbbbaabb2ac80b802b2b5ae86b006bcafb3b704afadfeb0efb0 +96b007a3b4b9ac00b0b8b386b004b8009ab7ab80b408bcb30ba6b4acab00aba6b007b2acb3af00b3b7a88eb0170bb4a3a9b5a9c2a5b5b208a8acba98b6abb6b8a7acaeb4a486b007b7a5bba5b400bbb1feb0eeb0 +96b007c2a8a3b908a4adb186b00fa509c2a7acb4b1a500afbbadb304bdb3a6b007b2acb3af00b3b7a88eb01700acb2beb2aca5b8b000aab1adaaafbab1acbba0b2abbdba86b005a4b9acafb20380affeb0eeb0 +96b007aca7bdab00bfabb686b003b100adc680a709b800b99eb3a4ba00a2b1a6b007aeb2acb000aca5b88eb01700cdb795bdb0b6adb302b9b2b8aabba5baa9bdb5bea8a3a986b007aac6a2a907b2a9b1feb0eeb0 +96b007afb8a20bb99bbfa986b00fad0ca89fbab400bbb3b0b5b900bbc0afa6b007afbb9cbf0002bea28eb00a168fb7b0b2b0aab8ab0f9980b609aaabbeaeaba7a8a3c4ad87b000a280af04be009abbb4feb0eeb0 +96b007a9b8b900b2bc9fb586b00fb700aebd9e0daaafacb8aca902ba96b2a6b007acb4b7aaae02a5b78eb00e00c6a0b4b3aeb0b2ab00c1a7b3b4ab800000108000030ca0abb786b007bcaab2ac00c3a9abfeb0eeb0 +96b01fabb2b304b0b7a8b3aeb1aeafb0b1aeb1b500a90009b3acb0b7a40c00a8baa8b1a6b016aca9b8aea70f00b5b3aab5afaeb1c1a5aab5b4acafadba800019b3aabda2b1b8aaac10b1a4000500b0afbaacaa07b4a3b9adbbae80a80ab0b3adafb1acbb00b4b3affeb0eeb0 +96b011b1c89c0001a5cba3a8b7b4a1c2aeacbaa00e800002a7aea980b402ad00c380ac01afada6b02abab4a2afc6990900acb7b9b19aba9fbdb89da7c4afb2a900acb3b49cb7c19bafa0ac00c0bba3a9bcbaa9b8800012b9bba7abba9abfc2a4afb7aba9bd0008acb5aafeb0eeb0 +96b004a5a8b9bd078000010e088000140a9fb7ada1beab00adb3c5ab000500bfafadb8abb5a6b015a5afb9b1a2bfabbe000300b8c6b99bb4a4c2adb0aeb180b027abbdaeb0b6a1b8c0bab00d00b4adc1a8a4be0002bfaf9fb4b5afbaae9dadbaa1b2b8a300b3bab0b4feb0eeb0 +96b01fb7b29fbd9ec2b8a7a8b7bca1c1a6abbaaaacbf00020005b0aba9b5a5aab6bfa7a6b005bfa3b9aeb7aa80a502b5a40780001107bab3b6b3a59fb7b5a5b0b9a2abaeabbfa080a81eb9a0000e000409000805aeb7a0c0b4a6b2a1b8b6b5acc0b80003c39eacb9a4feb0eeb0 +96b01fb1afa8b8bda8afb2b5aaadb0b1b3b7acc1acaab0b1a6abb6b0b5bdacc192aeb6a6b00db1b4bfa2b3b0b7bdb6acc20b00af8200030706b1b780b017aea8caaabaaac0acb7acbeb4afb4b2a7bea9b9aba4b7b6a080b104acb6acb5af800006039eabb3adb3bafeb0eeb0 +96b01fabb1b4b1a1b4c2a4b6a8b3bda3acb7a99db2afbeacb1caa5a9b1a9b1aab0c0a8a6b033a7b4a2aeb3bea2a6a5b0a400b6c5a0b9b4b8adb200050004000500aeb3b1a9bcb29fbcaeb0b2aebaaaa8a5b6ba9ac3b0b6a3c4ad8000090b06aec3beabb7b39caffeb0eeb0 +96b013b9b2b5b69eb4b9b1b5abb6b2b1adb8aebdaab9aa80ae049fb6b89eb180bb02b0acafa6b01bbab8aabda8a9aabeb2bc0002b0a5b8a8b6a3b4b3b2b1c4a1bfa7b5098000000280000014810006050300090004078200000381000bb5baa9a8a5b5a0a8b7a4d1a4feb0eeb0 +96b01fabadafa7b6b8a2b0b4afb59dc2abb1acafaab5abadb3b9aba8bdb2a1b6aaa8b2a7b023a5b5afb0adc3a2abb900aeb1b7a6b8abbca5b7adb0acb0a9a7c2a3b1b6aab4b8a1bcb0b580aa05bdacb0bba2b980b010b4acbc00c3a8a9b5b4b2b0b5bcafaca8bcfeb0eeb0 +dfb005baa7acb0a9b580b30e0e9fafb9b5afa8acaeb6adbab4a2b896b001b2ae800006b0bc9cb9aab7ad80ae0cc2a1aea5cdae9fbdacb2adb7ae80ac03afb0adb2feb0deb0 +deb017a2b2b1b7bdb1bea5009dc5bb90b6afb3afb8abb3a4acb7a997b01eadb80500b3aea8afb5a6b6b496c8aab59cb6b4aeb2adb2aa9fc5c3a9b1b3b4feb0deb0 +deb017c4aea7b2a9a7abb400ca97a6bcb5a6b2adb6a5b2a9b5b1b496b007acc1aca000bcabb680b715acadaeb0b6a6bc9eb6b9aaafaeb3b1bc9fa5a7a9c2a2feb0deb0 +dfb00eaeb5acb5bbb30005a7bfb0aba9b6ba80ae05aca8bfbb92bf96b01fb6a0b1c5ba00b9a5b893bfb0aebbb4abafc0aba8b0a3b2aeacb9b3afc4b69fbdfeb0deb0 +deb017a8aabbb1bba4ae0eb1a6a1c5b1b3a7a6b2b0b1a9baaca7b196b01fa8c4b0a3ae9613abb5b4bdb1bc95b108030002060c000e069ec2a8a4b3b2bba8feb0deb0 +deb001b8b080ac0fb1b21395b1c0baa8a6aac7b1aeb6acb980a601d4ab96b01fb5a6b99ab9cea000a6a9aaa7b6c3a6b2a916a8b8a4a7a9a7bea6b3bcacabb0aefeb0deb0 +deb017a3b5b6a7bbac0011a6abb1b0b8a8aab2abb6a9bda3b095b196b01fa8acbbbcadacb80006b7bbb99ba4c4a4b900b7c2b2b4b9b4adb0af0008b3a1c3feb0deb0 +deb006bda0bdb2a800c38000001081000ac0a4b2afb2adafacb50faf96b019b9b1aab0aea5b1b2b300b0a8c0adb2b5b001aca7b7a7bbadabc2800000a880b300a5feb0deb0 +deb017afb0b3ad9f11a7ad00b700b2b3b2adb2ab030b00030003ad9eb006b600b4abb1b8a980b40e00a5b6b0acaeb30a00ad0fa9acb5b6feb0deb0 +deb001baa580b41300aeaab4b5b9019cb3b5bd000d00a5ac000b98bc9eb017acbe00bc9faebca8b308b4b2b0b5b6a1a2c0009cc2b4aaa8feb0deb0 +deb016b3b79bc300b1caaca905b0c9b5a2000800caaabb0400b59fb003b1a8ad0680b204b3ae00b0b980af0ab4bdacb0b106acadb2b3b7feb0deb0 +deb011a1a6bd00b6a6a1b7b200aea8a3190003b79f800003b300bda79eb017afbaa610a5aaa5bc00c3a4bda4b1a6b8b50700a7bba4b1adfeb0deb0 +deb011b7baac00bcb9acb00e00c3a8b2b001adb30080b6000080bb00a99eb017afb2a8a30badc2a900bdad9bbeb3b9a7a008aabbbab1bdacfeb0deb0 +deb010abb700a0ada7abbb00aea8b8a105ac070080b30400c4a4adb69eb0179dc6aeaac300a6b60bb2abc9ad97bab70e00ada6b6ad9eb7feb0deb0 +deb000b9800014c0bdaac0a700c4a9b2bb0100baa9b000ada1aabfac9eb017aeb0afc19bb800b500a8bba1a7d3000100acb1bbaab2bfb3feb0deb0 +deb00faa03b6b0a1bba4b60a9db8b900050ca7800005b3b2b7afabb19eb017b6afa8aeb9ac00b2b0b8acb2b1ac000a0f000400bcaeaaaefeb0deb0 +c6b080ae23b7aeb2b3a3acaeafb5a0c1adbcacb1ada7c3a4b29cb00002a9b4abb0bbafb1abb000b0b88000070a99c1b1b5afb1b49eb017b6b3a9b2a6b9af00b99abaabc0aab4acb0b6afb0a9adb8a786b005aca3b3b2aeb780aefeb0ceb0 +c6b003afadb5a980ac29b6bfa9bda4b5aeb097bba9b9aaafb7a7d2ae00b6bab5b0a1b9a8b1adb8afa1aeb2be9dc1aaa5b7aaa6ab9eb017abafbeadbfa3bcab00b8adae9cb7a8bfb3a4b6a8bdb5a4b586b001bfb680ac03a9b5adaffeb0ceb0 +c6b02facaab6b2b7a5b3a3b5aebc9fb8acb5b2b8ada8a3b8bc9200bda69ab9b0c1acbcb7a6b6b7b4b0ada1bcb7a2adbaadb1bb9eb080b20ab5a1a6b2a9b0ac0ea6afc180ac08a7aba6bfad99b4b3aa86af07a3b3a5b7b2b6aaacfeb0ceb0 +c6b000b980ab2ca7b6abc6b1a99cb5c1a7afbdb5a7aac3b4a2b00d08a8c1b3acada9b3a7a6b5b38fc4bda7baa4b1b9b8afadb1a99eb017b4a6acb6bcc1b1b2b00700b8b5b7adb0bfb3a3caadb5aaae86b304b1c6abb6a780ab00b9feb0ceb0 +c6b02cafabb0aab0a5b2aabfbeb2a5afaab8a9b4aeaab0c2b400a6a7abb8abb2bdadb3afc49dbcaba1b0b7b3b1b5aba680b700a39eb004a9c1b2a5ba80a310adb7a304b6a3a5b9abb2abafa4aabea6b886b007aab2a5b0aab0abaffeb0ceb0 +c6b00ca4afbab2b0b3a6bd9aaeadb5c28000031205000280001a0406b1b0bdacbfa7b4ada9b1abadb5abb6b5a8b6a5abaaabb7b5b69eb003c0a2a1c78000090d050008030003180008800005b5baacb2afab86af07bda6b3b0b2baafa4feb0ceb0 +c6b080b507b0a5adc88fb5bdbb8100010b0881000107098000040a0005000581001101bcaca5bdabaeb7a5beb5acbab4aeab9faf9eb002a8b01480000cc2aea9b1b0abb600a0b8acb7088200010c01860005b58fc8ada5b080b5feb0ceb0 +c6b000ad80af04b0b3ab090181000cbab992c1b1b2b7afa9b4a9a2bc80ae15b1b0bcaab001000700b3acb1a7afaeabb4a7b1bfadb49eb008ab0f00060804000c0380000c040005000200b6a6b9b5aca6b286af040109abb3b080af00adfeb0ceb0 +beb015b6aea7c6a8a5c0a9aaaebaa8000e00a8acb4b5a1c4a580b707aab6acb4b1b0abb286b007b8ac0002b2afb7ab9eb005b9a7bca3bba880b10a0300aab9afb6b1a8b6aeb480ab0ab8a2b2b0b5aab5b2aeaab986b001b9aa80000abca7baa8a4bbbab1a9b4a687b005aca3b3b2aeb780aefeb0b6b0 +beb0029bc19f80b11ab5a3b8bc000700b6a3afc9b7afb5bca0c1a4a7b7a8b5a1a3c1b7a286b007a7afbcb5000fa4b39eb01f9fb0a8b1aeb2af00aaa8baaea3b4afc0a3b4b1a5beb8b4b3bda5b2a3a5beb3a886b003a2b7b4a8800009adacc893b4b2b0aab8b386b201bfb680ac03a9b5adaffeb0b6b0 +beb01fb2b0c4abadafb4ac0008a3b2aeb6a6a1b49db79ab7b9b8abacb1adb8bba7a6ba86b007bea4b2a0c0b800b59eb01fc6aeb3b6a1b503b1b3c1a9bbbea7aaa9bb9fb4bab6a5a4b1a8b3acbec1a6a9b686b00fa9b4b1a4cfab00bbb2b5afa8adc2a5a886ae07a3b3a5b7b2b6aaacfeb0b6b0 +bfb005a4aebca6bbb5800016b3b7b2a6b9c2aca6c0b6b2b6aba6b8afb4b1a4bcaec2a486b007a9a5b7c99bb1bc039eb00fa99ec09fbf08ada7a0aca8afa912000280000006800003adc4abb480b20497afaec0a886b003b7b1a4bb80a908ab00a3b9bcb7b6a8bb87b304b1c6abb6a780ab00b9feb0b6b0 +beb006b7bb99baaf940e80b716b5a8a5bdaaa4b6b79fb8a7abb1adb6bba6a7c09ca1b5b386b007bbb0a8a1b8aea7009eb00cbbaebbb700b9aeb1bebdabadb180000aba05b5adb10db9a3b1bb9c80c0039cbaabb286b00fa8aabba5b8aac2aa01bc9caca4b7a8aa86ad07aab2a5b0aab0abaffeb0b6b0 +beb00fada6c3a2b509b1b0a7acb9b0a31100b3800004bcb2afb6b480a406b0c10017bfa7ad86b007a4b8b2b3b2bbb1029eb01fafb7a203c49fb4b0b59cb5c1a5b3bba100b1b6a6ae8fb7bca2bca79fcda5b2ab86b00fb4aeb2a6b0bcacaa00beacb9aab9bbb986b207bda6b3b0b2baafa4feb0b6b0 +beb010b3abacb30200a6afaab3a4bab3000f000881000502a1b3c0acbe810002a9abac87b006baaab597a5ad029eb001baae80001bb2c39ab3adbaa9adbcaa9fc200b4a2c7abc5a7acb6bd000301a6aab686b00faeb8b2b8a2aaaeb70600090004079ab886b105b58fc8ada5b080b5feb0b6b0 +beb01faab4abb200b8abb3b5a4c1a4b3b9a8ae00bba9b5adb8b0a6b800b4aeb3b1a8b986b003b8a6a8b580b801aa009eb01fa7b400c1a9a3c3a9b4a4bca4aabeb200b4a7bda6a8baaeb4ad00b9a9afb7b1ae86b00fb2afa2adbbb4b1ad00bdacb4acb100038600040109abb3b080af00adfeb0b6b0 +beb00ca6c1ac0006a9afbcabb8aeabaf80aa10bc00b6a7b0a6adbcab05a9abb1b5a2adbe86b007bb9ebfa2b8b1b5009eb006b500baa4b9baa380b20fb3aab4a5b7a800b3a8aeb8abb1b9ab0080b204aeb4b2afae86b00fa7bdacadaeb3b0ae00a5afbfa7afb3ae86b001a7bd800080050c00a9b5a5bdb1b2adbab1afabae80b702b2b0ae80000c029f02b9adb1abafbaafac1200feb097b0 +beb019b1acaf04bbb4b697a8afadb3bab1b79a00aab3b2cc9eafa700af80ba00b280b5009e86b007a2c9a8b3afa4a6049eb0129f17a7a1a7a8b6b0ada9b9b5b8aab907afbabb80a80abe990901b7afb4aca4b8a886b00fbba1afc1afa5bdad0bb5acadafbbb2b186b012aea8abb9a2b6a60b0005aca0bcbd9db2afbbb280a807a0beafa8c700160781000209afab81000107abfeb096b0 +beb01facb1bf00b0aeb7bab8bdb7a9b2b0a410adacc294b4c9a80db5b0a79cb1b3c0b387b006a5b8b2b6c1b6009eb00fb100a5d6b3aab9a9b2b6adaba7aaae0080a609b1b0b4bbac00b7aa9c0b800000b287b00fb3aebeada2bca5b100adb2adb1b3a7b486b006b8b7b3a4c2a0c180ab1db20107b1a8beb6b7abb0aac6bcacb3adafae00aeadc5b8aca9aac2af000dfeb097b0 +beb080ab02a50cb280af18a4a8a4a8a4b0b3b600aeacabb2a2adae00a9b00009be99b7a786b007b1b4b593b3b400049eb01fb201be90aeada8b6a9a8bfb0bab500b4c5aeb5bcb39cab07abbe00aeb205a8b486b00fa8ada4a2c0aab1031ca8b3b4afaca8b286b01da0b4aaacb9a4abaec2aba6ac0006a9a2b1afaebea1a5bfa7b3a605a5bcaf80a407b7afb7acab00a8b7feb096b0 +beb013bcc7a600c49dcea5c5aeb5bcb39cab07b2adccb580a70119a6810004b400bda5bd86b007b8a3abcdaf00b5b29eb01fadae00bebda9b5b1b4b6a2ada6ba02a4a8a4a8a4b0b3b6009db4ad000700c0a786b002b6bbb380ac0ab60b0096b7a9b3adb2baac86b006b7baafb0a3b7bc80a31eb8b1bbbaa80a0300b7a0bab6a3b1abaec000a8b5bbb7b4b7a4afb49e00a2bafeb096b0 +beb003ad9eb00880ab019ac280a605b1b0b4bbac0080b204a0a3c0b40080b206aeb09b12a7b99e86b007b3a7b8ac00c6b2a79fb01eaebd00a5a9bca9b3a5b4b0b89802beb8bdb7a9b2b0a41015000300a6aeacb886b00bafa1bcb1000200a8c1b3aaba80ab01bbaa86b027a3aaaea9c0a2a8c5afbcaba8aea5adb4a4040ba2b8bfa7b9b79c0abca89ea6b9a2c5adb113aebfa8feb096b0 +beb002a6bfbe800005babda6afbabb80a812be9909b3a3c8b2a5b5000aa5caa50207a7a1c186b001a7bc800003b9b0aab69eb00bb4a8b89f0700bfaba9aca8b380ba11b4a2a8afadb3bab1b79a97b9afbcadb1bbaa86b00fc198b7000caeb2aca7aab1baaea3afae86b003bba4b8a980b30cbd9bb1a3b8b1b5b7b3aec2afa9800012afb5a4a60f00b2aec3b7a6b9b0a5b600c29db5feb096b0 +beb01fbcaaacb90006a9b4b3a8aeb8abb1b9abafb8a3b3aeb7a501030003be9abcb3a986b080000505abb5b0afad9eb004b6aab4b5b080000db5abb6b9aaabaea9b6abb8aeabaf80aa80bc06a6c2a0b9a7b1b286b000ae80000cb4abb3a4b5b2baaea8b5b0aeb186b014b3acaeb0b5b1aab7b0b2adb8a5b5aab0a8b4b0b1b8800010bdb40003b4a9b0afacaeb3aa020a9fc1affeb096b0 +beb026b8acbda9aa0f0004b5bd9fb4b9aab5abacbcabafb6adaeb2a9b8b4a9afaeadb4b3bba5b0b1b80180001601b5a8b6b5a7b1b2b7a5bfa5adb5acbca0afb3b5b2abb48eb006b8aaadb5b0a3c2810005baa9adafaeb48eb106a8c1aab3b1b20580001ebba3bbb5b0abb6b4b1a5b7aeb6a8acb9abb4aeb0b3a8bbacbcacbca4b1b3af86b017b4b1afb5b1c1990a00adaeb1abb4a2b7aaaeac07a7b1b6a4feb096b0 +beb0069bbda2c0b89db381001ac4a7b1abb1b2b4acabb9a6b1a9b2b6a7a3c5a6b7afaa9eb2000209800018bec90009b7a5abb4baa2a8c0a3b5b7b4a7b4beb1b99da3c1ae8eb009b3a8bda7b3b49fa6b60c8000031c0002a38eb002c1900c810021aeacbda9b3b2a0aac5a5a9b2afada9b8b9b8a8b0a8bb9eb7b8a8b0a6b0abbec79bb586b017aba6aab7a5aac19db80001b1aeadc0a9b9ae0500b7afa9c4feb096b0 +beb008bcbab394b9a70c00bb80000c0500bbb6a7b697b5b0b7b5bea580b002aca808800014010f00b9b09fbdb4ba9cb500a9c5b5bc00140d0001810008b6afa6ab000dbea0ba8eb000a980b20cb1aeb8afc1b100a6be9ab3b7068f002615b4b3ac1500bca8abadb5b8a7a9b2acb5bdb0aeaab2b1bbb0acbab4aeb8b2bfacbbb3a1a4bab786b008bbb1adbaada2b7bcaa80ae050201b5b1a8b4800004aeb30c98b5feb096b0 +beb00ca1a9b2beb2b11000aba8acbeb580000404000b00178300250f000400a3d2a49dc5acb0b1a6b19abfb1c300a7a3b3b19ea900aabdb39eb8aa120001acabaf8fb00faab6a6b6afb0b59bba00b4b79fb5b9a38eb11aba9ba3b2b0b598090ba3b7a3b3bcb1b0c291a4c19f1c000200100380000ab8a5aba1b4aca3b3b9b1a686b012a9b1adafb8b9b1a4aac8aab7a60001b5abb608800002adbca8feb096b0 +beb004bbb8a2b1b8800021b9bbb0c0a39ec6adaaaeb7bfa1ac1ca7b5b3a5a0beaeada9bbaea8a7acb1c3a0c7ab80a1130a00adb8aebfa809baacabc2a5b400020aa9bfb38fb00fb3aeb5a4b8b1a2c600bdabbabdaaadb68eae27a9bbafb6acbabba8ab040aafaab393b9afbcc6a9b2b4beabbf00a1b1b8b6aab6b2acc0bba4b6b3b286b000a380b714a6abb5b1b3acaaacbbb1afb800a5b5b1a9b7bfa7b3feb096b0 +beb03cb2a4b9b0ae00b5b1a4b5a3a6bda3b3baadaaa5bab8009caeb9c2b6a2b7b1acb1b0b9bfa3b4b0a9acb9b3bda10c03b6adb1ab00afb1b6a4b5b1b600a5b480aa00ba8eb00fb1b2b5acb0b5bd9907aab9a99ebca2a88eb227b6b1b6aea6a5b4b7b4b10007c1a2bdafaba6acafb5aaa9a8b100c0c1acaaaca8b0b49bb3bb9bbcad86b017b6b5b7abaaaba5b6b9b2be90b5c4a8b409b1b3b29bbb94bffeb096b0 +beb03fafb9adba00adacb3c1a3c0b7b5abc597bda6b9bda301c3b09fa7aba9c2b1a9b1b2b190c9a7b3b4b7a9afb5b49b0d9ab8a2ca00aeb2afbfaea4b600bbb0b3b0ab8eb00facb8adbaa6b5941bb2b0a7b3c3a7b1c18eae1ab696b7bab0b4b2acb1aabea300aeb9a8b7b8aeaba7b4b5b7b900a180ac04a9bf040006800201aaba80b386b00daf9fabaeb4baacb5b0a5a9c0b89a80b200a2800004b3b0babeb2feb096b0 +beb000ae80b00600aabda7b5b3a780a933b5a7a9bdaab8a9b00800afb3b2bcb9a7a9b1b5acb4aabaadafabbaa9b7aaadb6bf9d0ba7b5000eafb1b49db6bd00bcaea8b7afb18eb002b1aeb580ad0ab50b00aabea1baa8aeb6a88eb127adbca4b4aeb6b0afabb2b7acb90400b1afaca8c1b2b0a5b500b0b6bbac0700b4b200b40206a3b6ac86b007b4adbfb1a7b4abae80b104b7abb2b7aa80b404b2ad02b6a0feb098b0 +a6b034a6b2a7bfb79eadb5a9bab7a2b0be9db6a8bfa6b1b4a2bca6b6a3030abc9cb5adafb9aca8bdada8bbb0b5a8b1079fbfafae08a7b3aa80b50bb0b1b4a3b9b7a9c1a6b4b2a780ac42b8bb00b300bcb7c0a1b1b6ad00b9aaa7b4b7aeb3aba9b1b8a9b8acabb1b2c1a1bbb7abb7b1a6adb2aa02adb6afaca7c2a7b1aebaa3b4b9a6b0abafb0b1a8b8b5aab9af86b000ad80af13b0b3ab0901b3b4abafa5bda8b206aab1baa102b380000612a1bb00b3b6a896b00faeb1aeb300aeacb1acb2b9a3acb3b6aefeb08eb0 +a6b00cb3bea7aca2bcb6b7b3a99ebfaa800003040700038000030c0003b68000059caeb9b4b2af80b20ac3aea5acb4ada1c2b6000a8100180308000fb19eb5b79fb8a79db5a0bea8aab4c0b5a89f0c010a80a63b9ec9b0a70006a6bab8b9a8aab6a5b8aeadb1acb9b5b7a49daebda5c1ad98c9baa500b6a9b0abbbbc9cb8b2b1a4b3c092b4afc6a5aeafc0aba4bab4ae86b080b505b0a5adc88fb5800015c0b1b2aeb7ad00bea2afbcb200b7ada4b30007adafbc96b00fabb3b0afa10400b3afb7a3a8c0a1afabfeb08eb0 +a6b009b3a7b2adbba4bb9d000780000208b70780000506a4baafb5018000020a0210810018b0b1b6a59faec6acaebabbaba100b9b4b3af0399c2a5ba0013800027b5b1b8adabb6b9aaadb0acb0c79a0001abc1ada2ad090500169fafa4a5c0ada4bcafaeafbe9fb6a780b609b7b3a0a7b7adaa9dba04810000158000130daac6a3b7aaa2c9b0b5a2b7b1b79fa5c3b5a4b386b01fa4afbab2b0b3a6bdb0050008afacb400aabbb3a0b600a3b4b5b40cb5a1c1a9a796b080aa0dbfb3bab5ae00abbab3b6abbe9cbcfeb08eb0 +a6b005a9bcb1b2ad0080080fb9aab2c7a1ada6aeb5aaadb5a6a8acb0800046a4b2b5ad000304aeb3bcb59bc2a4a3afa7b800bf9bb300b5c29db5b90099bbaa00b4a8b0b89ab4a9b2b0acaeb5b9ab08bb93c2be000508aca8bcb1bfabaca8bda8a9b5b1b0b500800381000e050c05000b060002b5afada6bdb7aa820001080080ad0aa5b5b9a2b3c0b0a6adaeb686b00aafabb0aab0a5b2aaa9c0ab80000bbbac05a7b1adafbb12acb5b8800004afb6a6b7b596b00fb2bc9bbd9fa5c4b400b2abb1a9aeb2a2feb08eb0 +a6b00eb5abb9a310b798bc99bfa2000c010e8000000b80a61fc8b0b9aeb2b8bda2b0afa9b1a90700a6bcafa9b4c1b3c0a705a4a7b707a4bbb980002815b99b0ca8b1aabfadbbabadb6b2b1b39fa7ad0001b7afa9beacb0b9a2bc97a9baa4bea3b7aaa8b4a580000fb5b0a4b9bfa9a4a6b1a9a50100afb6c680a814a5a9b5bcb0bc9db702001f9eadd18ebec2a0b6b1b286b000b980ab13a7b6abc6b1aab0b5a7c400b000b3c8a8b59e001a800006bbafaec6b5aead96b00fb2a4a8c5b3adb0a900b5aeb2b8b3b0bbfeb08eb0 +a7b025afb10c99b4bd9e130104009f10a7ada60001b696a9abb1b9a1a4baa7b9a1b1aaa9b600aab1be80ad52a6aca200b6beaa079ea8ac0007b0a6be07a1bfb3aaa6abb2b6aba5a9bfb4bdc3ad09aca9abb3aca8b7b1b4bab6b1bfaaafbea8b3b60806bf9b000b0002000d08a3c3aa01b6a0b5a713000f06b0a3b0a8b4bca680af0900069ebc99b2c2a6b9ae86b01facaab6b2b7a5b3a3c299b6bb9db40db1b5a1a7b3c5b1a6bea4c4a3a2aba2acbd96b00fb5bcb1a8b1c1a0b2b903acaaa8afa8aafeb08eb0 +a6b005b4ac00bab3ad80b603a2a6b1c4800001b4b680ad34b002c5bda7b2001700a3c2abb3bcc99eadc10002afa8bcb0acc900a4b4a400cfac000da9acb300b0afb1abaec0abaab7aab2aab2a680a418b0a500c8a8b7afb2a4b8bdaaa8b3a8acb0aab7ba0592b9a0c380aa0408abc7a0b280000cc0aea1b3ba0002aaa9b4afb0bb80ad04b1c0a49dbe800006bcb9a2a99ec5ae86b003afadb5a980ac03b6bfa9c180ac13baa4bb00acaec9acb0a1b7aab7a9afbca9c2b59e96b00fa4b2abb0a1b4a1caa5ad09baa7b5b8b4feb08eb0 +a6b04aae09adb3afb0aeb0b8a9b5a507aea9afacb8ae00aaaeb10001aea7b9adaeb3a8a4c3aaa6c1a609b2abafbc9b0bb3ad07099ab603a7b0b505b0b5adb8aaaeafb1a9b8a7baabafb1b3b7b3b7800007acafb1b3baaba9b280b00fb8b5acb5ad00afc0aaafb5b0bb00afae80b210b30100baaeb8a607a0bfacaeb4a9b4abbb80ac0bb3c09dbc0005a3c3a9c2a1ae86b080ae11b7aeb2b3a3acb1afabb0acbca4af03afa3b980af00b681b004aeb4b699be97b00fb6adb7abb9b0b8a7baada80200b6a5b1feb08eb0 +a6b0800080b300a180b50eabb1afb1a912a5baaea6bbac00b5af800008b8aaafb5baaba9b5ab80b500a180b3800001abb780ad000080b2000381b20400b2b003a98eb01dadafb2b305aa9dbbaeabb4a7b1bfadb4b3aca909b1aabaaeabbfabb400b980b005acb4b000b7bc80000ba5b9a9bca4b1b9aeb6acaead80b106a9bab100c3a3aa80b200af96b007b70004b1a4b6b3aea6b00fb3a8c1a707b3a6b5b6b5a1bcb0acb3b5feb086b0 +a6b00600b0a0b8c0a2ae80b22eb0c3af00bbb1abbe9bbb00adba03b5a4bba9bea7a1c0adb2aea2c0b8a0b000bc9ab0bd08acab00a3b9b204a90ea2b78eb015b2b7a6a1b213b5aeb5acbab4aeab9fafaac10100afba81a926b4b700aba5aeb1c2a10515a0a300b5c0a9b4a9babd9db4b1a6b0acb6aabf91b40400c4bbafaeaf96b004b8a50700bc80b700aca6b00faec29fa5b6089eb79fa2c6a7abafb2a6feb086b0 +a6b00c00bfa1b7b2b1adaeb3aca9b30380ae80b103a3c40ca180001bacc3b3a4b4b1b5afa6aeadb1b2b7a1bf00a7bba8bc00b5b2b1b6b0a7800002aaabb28eb018a5b8b0bbb500bda4b6a5abaaabb7b5b6b9a600c2a59dccb8c080a32417b4b0bcb29bb100a8b90004b295b9bd99aab3a9bdafa7b9a6bcada5d1a90408aba0aeb3b996b002b3a6c3800002a5b0b1a6b00fb5a6abbab49e11a7bbcc9cabc2aca4affeb086b0 +a6b008139dbdb6a8bbb1a79f80b90eac00b8a7b9a7b6a400bc0db4b0000f81000a02bdb7a7b1bba8b6bd9d1380b80daa00b4b7a3bab3a8b4aab8b7a8b38eb00cb9aeb4a2b50400beb3b1b5aba680b70da3a7bf01acb1c1a3a7aab3ba01a080b60999ba09a3baab00ba9dcd8000141700b0afa0aab8aab5a9b2b996b100adb2bdb4a4a996b007a9bea5a912ada7bca6b00fb1acaea7a5c000b1aa9eaeacb9aab9aefeb086b0 +a6b03700b2a4a1b3a8bbb6ca98bcaa05bca5b9b7ba00b3b000adb30800b9aeba0190b9b6bba8b3a1a4b200b498bd0ea3adb1a3a1bcb2b39eb9a6b68eb03faba5bdafabac00a3a4b1b9b8afadb1a9ab050aa5b4beabb9b2aea700b3b6adc100bab7afa90fa3bca3b8a9a600acc8a8b2b0b8a4b1b3a6c1000da3aaafb0beab96b007abadb3a50001aeaba6b006b5b3c7b8b1a9af800000c080b003a8afb8affeb086b0 +a6b03703abbfc1b2b0aca7a8baa4bf029fb9a4a20509aaa7bd00abb3aab8ae0100bcaba7acb0b2c1bfab03b3b6a600a8c3b0c2b4aca2bbb6aac5a18eb024bcb896baadbe000cbcb7a2adbaadb1bbae01adb3aba7abb4afac07b3b99aaf000fab9fafb1800018b1acb3b2c200b4a8b2b6a7bca0beaab2a908b4bab1b0a8bea996b007bcaaa5c5b60015b5a6b00a9fb29faab0a9b2b700a5be80af02b8a8b3feb086b0 +a6b01908009dad97bfafb3adc0aa009db0c0000600acb9abb3be000205800000a980af18b1b3afbf97ad9d0008adb5aa00acb2a4a5ada6b3bfa8a7b7ae8eb03fb69fc4aba1b5a9009dc1aaa5b7aaa6abb700b0aabfa5baacb1a5119eaf1800bbaaabb9c1a5b60500b6b1001400a2b5b1aab6a0bfa9aab407a0bca0a1cdaba7b896b080a805b6bca9b500aba6b00fb8c9aca8b4baaaadb300b7a7adb5b7acfeb086b0 +a6b00da802b7b4b8abacb3a7b9b200c8b780000cbba4b4a5baa6b1b4b0b2abbbb980b211b0b3acabb8b4b702a8a9b5b100c0a5b0b9b680b304a3b2bca6b48eb003afb0a6ba80b50ba5b40a99c1b1b5afb1b4ab0a80af02b2adae80000209000c800011b5acafb5a7aeb5b6a5b5000900a8aeb6abb180af0db6a4aec300b0b9a5c1b0aaa9b6af97b003b2b3a1ae80b50002a6b00faea4acb8b0a2b5afb30700beb1a8afb7feb086b0 +a6b003ad0100c080aa29abb7b6a7ba000400a9b8afacb2bea8a7c2aeb4a7b6b5a8c698bbb0b6adafa90da1c2b19fc400bbb2adb49eb01701a1b0b1afb4adb0b300b4acbaadb8a6b4a2b5aab2b3b4af86b00fb3afabb2aaa5c1afaab3acafab0badaf9eb00bb4b1afb5b1c1990ab597b6b280ba01a9aea6b007bfa700b5aca9b5a9feb086b0 +a6b007bca90300b0b5c89f81000ebbabb0b99dbaacbca2adc5a1a7adb680a913b69ebbaabaa9aec100a2b796bbaba60ba3baa8b49eb003b301c2b480ad02b1aab580000cb3b2a8a9b6b0bbb9bba9c194b686b00fabadb8b3b1b9b3a3b7b0adbe00abacb39eb00faba6aab7a5aac19d0db8aeafa7a4a0baa6b0079ac00800a4c09fc5feb086b0 +a6b003a7a6b509800029a7abbeb5a7b5a4b9b2b19db69fb6ba9eb7b6adb0b3a4bab4b8aea1beb80003b0b4bfba99af04b5b0c4a19eb003b10400bb81b206baa6b603b5a6b280b007a8a1aba4b9a1c3ab86af0fbabca2aeb7a6b3b0ada70013a2abc4a39eb007bbb1adbaada2b7bc800000c280b102b2c9aca6b007baa4a30fbfa7c298feb086b0 +a6b004c4a4b7a7ba800003b9a8b0b580ae0fa9adb0bcb7b9aaadb6a9b2aaabc0bea080b310a7bd0008b597b9b0abadc100aeb29fb1b59eb00aa3b216a9b3a2bba9bb94b780000abca9b5b6c5a8c1a59ec3b186b30facb4b0abb1bea5b5ad11ab99beb2a6ae9eb00fa9b1adafb8b9b1a4b600a9abaaabb1a2a6b007b5b9a80e00b3aebafeb086b0 +a6b02fa1acb1b89fb4af020d00a1b5b7b9afb6afa1acaeb3b9a9adbdb0a4a6bbacb50800a2beb3b7b2b5b0a4af07b1adb9b2ad9eb00cb9b400aba3b9b2a9adc0a8a515800008b5a1b4afa5bdc691b886b008b3a3bdc39aa801090080b604b7aaabb7b39eb000a380b70ca6abb5b1b3b200bdb4afaaafbda6b007a9a4bda400b6a8b1feb086b0 +a6b00aaebdabafbbb0a5aba0bf038000000881000ab0bea5bbadb1b9acb3010b810010b6adc49fada9b5afaab7ab00c2b9a3acb89eb013b1a8b408b3c0a2b5a6b9b5aaadb9aa0308030004800001b8ae87af02b6ab00801009a0a9bda69dbbafb2a4ab9eb00fb6b5b7abaaaba5b6b0b700b1b4b8a6aba6b007acbab6afb905a6b5feb086b0 +a6b010aeaac0a6a9c3a2bebaa0a6c2ada4d1acba800000128000000680000611aca4bab6b8b080ab0dacbabeab9dbdb1ad13a2a0c5abae9eb008a9b5af00b1a3adb6b480ae0aabb5bcb0a8aeafb4abb8af89000e0600a4bf98b7baaab9adb0abb6baac9eb00faf9fabaeb4baacb5a7b410a4b5a3b6b7a6b007a5bda1a7a504a8affeb086b0 +a6b02fb3b0a5c3a4acb4aba5c7aca8b6afa8ada8bfaaacb9acaeb5bea4acbaa9adb5a7b4b8afaca8b7b6acadb600b0bca3b9ad9eb080b105a9b600c4a5ba80b303abb6a9a880b407b7a7b7b3aeaabaaa86af0fb7a4b4b8a3bfabaeb9a7b4abb3a8aeaf9eb00fb4adbfb1a7b4abaeb3ac000aacbba9b3a6b007aeacb0b7b6a702b4feb086b0 +ceb007baa305b4ada6bca59eb007abb3acb400b2b5aeceb007acb9af00bbb49ab9a6b00fb6b5a0c2a4a60ba8a0bda9a5b6a6adbafeb0 +ceb007ae00b0aab3afc0b19eb007b6a9c4aba10a9abdceb007b1abb602acbbb7a9a6b00fafa6c2a8c1b200bcc5a5bac4adbcb09ffeb0 +ceb007a019b1a6b1b7abaf9eb006bba99db5b909afcfb005b7b3b800b1aa80b1a7b00ebaa8afa9b3ae009fbb96bf9eb0b1bafeb0 +ceb001b50080c003b0a7b2b59eb007a8beb4b2a5aa00acceb007b5a4a8c300acb6b7a6b001adb380b20ab1a9b909b7b0b6b2c2a9affeb000b0 +ceb007bb0b9fb3a3b7b9aa9eb007b2bca3bba8b500c7ceb007a3bbb6b014a4a7b3a6b00fb2a4b9abb9b29eac00c2a79baebab8aafeb0 +ceb007ae00b6afb9a1a3b99eb005a2aabba4bbad8000ceb007b5b69da200b6c1a1a6b00fb6b19fb9a3b1d4ac00a7c1bba2b8a7b1feb0 +ceb00703aabfb4a8c1b7af9eb007bbafabbda6bcba00ceb080ad05aec405a5c5b4a6b00facb4aebbaba89cb3b700b9aeb7acb0b9feb0 +ceb007acb9a6a7b4acaeb39fb006a5b4b0b3a5b4b3ceb007abb9b3a9aabf9eaca6b00facb8acadaabeb4afb1b0abb3ada9c2a9feb0 +8eb000b180b002b8a9b288000601000a000dabbd88000616000c0008a6b48800070300020005aeb407800004010003010481000b10000400b7ab0d0007000f02800001040380000002800006b0b8000206000887000408b4a20308810003040003068000000880000401bbaa000a880006070010b1a7000586000601000a000dabbd88000616000c0008a6b48800060300020005aeb98000810282000102078000090700b7ab0d0007000f02800001040380000002800006b0b800020600088600030100bea78000000d810000048100000381000401bbaa000a880006070010b1a7000586000601000a000dabbd88000616000c0008a6b48800070300020005aea6178100000282000102078000010700a6b0 +8eb007b7a5b2a8b50b00048600000d81000397ba00088600060d00010005aeb987000105048000030203a5b98100021900178100050a090100070080b08000020c05108100000580008008080007bc9a0016000103880003afa4070580000102078200011408810005bb9c0104000a8700040700a4ae028800000d81000397ba00088600060d00010005aeb987000105048000030203a5b980000a1500030004080301030015800001bcb08000020c05108100000580008008080007bc9a0016000103880003c99d080e8000010308870005bb9c0104000a8700040700a4ae028800000d81000397ba00088600060d00010005aeb987000105048000040203a5b90c8000000480000603000301030015800000bca6b0 +8eb006abb4b0b2a8000f8a0004c4b90005038600000280000417acad00018700000f80000807a9aa0012000600078000020600038000061600bfae1200178000020a00028400041aa8b5030c800002060001860003c6a102078000030900070580000009820004bdb50600128800800105bba001040602890004c4b90005038600000280000417acad00018700000f80000207a9aa8000000d80000205000c80000209001a800004bfae1200178000020a00028400041aa8b5030c800002060001860003b0a4000c810000028000000f80038000060c00bdb50600128800800105bba001040602890004c4b90005038600000280000417acad00018700000f80000207a9aa810004110700060280000209001a800001bfaea6b0 +8eb007abb0acb5b2aeb5aa86b007a9caa798b3bbb59f86b007a8bcb296adbfabb286b00ec291c1a2a4bfacbfa4b9b1a5aeb7bc80001eb39dbea49facbd8fd2a19ec0aaafaeb5baabadc6bca3a8a3b9a8b8b597c5a186b003a6b4b6a880b111bd9d0006a7b5c0a8c9a8b3a79fb4bfa9a5ba86b007b6aba2bebca4aca886b007a9caa798b3bbb59f86b007a8bcb296adbfabb286b02fc291c1a2a4bfacbfaeacbdaec3ba00b8a8a5bfa5a9c4a8a98fd2a19ec0aaafaeb5baabadc6bca3a8a3b9a8b8b597c5a186b017afc1b4a4a0cb000811000ca300b7bda0b3a79fb4bfa9a5ba86b007b6aba2bebca4aca886b007a9caa798b3bbb59f86b007a8bcb296adbfabb286b009c291c1a2a4bfacbfb9ad80a50bafb1acb4a8a5bfa5a9c4a8a9a6b0 +8eb007c2a0bba5b0a5b4bb86b207b5a8b5baafaeb2b886b207abb9adbabda7afb686b22fa0b7bbacb8a6a8a5a8b4b6b4a5a8b202b3a5caabb4bfb4a4c0afa2b3bcb5b4ada7afb5aba3aeb8b2a7b7adb9a4c7a0b786b206baafb6a5bcb2a580bd0cbb00a5acb3a7b4b6aac2b1adc080aa86b207acb3b1b2a7aec5b786b207b5a8b5baafaeb2b886b207abb9adbabda7afb686b22fa0b7bbacb8a6a8a5c4a9b0a5a3a90aabc0b1abb4b1acb5b9c0afa2b3bcb5b4ada7afb5aba3aeb8b2a7b7adb9a4c7a0b787b214afa8b3b6a7b5b3b5aea9c508a6b1adb6aac2b1adc080aa86b207acb3b1b2a7aec5b786b207b5a8b5baafaeb2b886b207abb9adbabda7afb686b20ca0b7bbacb8a6a8a5adafabb4b980a808bdc0b1abb4b1acb5b9a6b0 +8eb007ada2b4b5c3a5b4a586ae07b4a2acaeb1b0a1b089ae04a1a7b8b1a787ae2ec2a0c1a1b2c4b6bcb1a0c3b2b1bb00aeb0a3b0ada4c0b0aca6bfb89aa9baabc3a2aac5b7a3a9b4c1a5b7a5b2a8b5ac86ae17a3b0acc194b3b5a5a3ab00bcb9a1b4aea9b9aba99fa0bdaf87ae05b7a9aabea99487ae07b4a2acaeb1b0a1b089ae04a1a7b8b1a787ae2ec2a0c1a1b2c4b6a8af9acdbaa6b300a5a7c2b5a8b4aba8aca6bfb89aa9baabc3a2aac5b7a3a9b4c1a5b7a5b2a8b5ac86ae06b1a3c6aeadc4ab80a50eb7b1970ea2aeb8a9b9aba99fa0bdaf87ae05b7a9aabea99487ae07b4a2acaeb1b0a1b089ae04a1a7b8b1a787ae16c2a0c1a1b2c4b6aabcb5b6b5a9acaba5a7c2b5a8b4aba8a6b0 +8eb007b4baa6a8a9b5b8ac86b200ad80b800b580af01b5ae86b207b3b6b9aeb0b1a9b986b22fbc9ab6a0b4b1b99ca2b3bda4a5b700b8a4bcb6b2abb6a9b0b4b3a2b7bfa8afb4a9b5b2a6aab6b5ada2b2b4bbada9bcac86b200b480b614a4c8a9b3a9b7a6bc00bab6afb1b0afb0b3c4bda2ac86b204b697b3b7a980c087b200ad80b800b580af01b5ae86b207b3b6b9aeb0b1a9b986b211bc9ab6a0b4b1b99ca4c6ba9cb0b2b100c3a180ae1badb4aec5b4b3a2b7bfa8afb4a9b5b2a6aab6b5ada2b2b4bbada9bcac86b217abb2adbb97b4a8beb3b7aa10a9bbada6b0afb0b3c4bda2ac86b204b697b3b7a980c087b200ad80b800b580af01b5ae86b207b3b6b9aeb0b1a9b986b211bc9ab6a0b4b1b99ca8b1a3a9afb2beaec3a180ae03adb4aec5a6b0 +8fb006a7c2b0b8aea3b986b107b3a7b2afabb4afad86b107a8b1a4b8b9a9b6a886b12fa9b2afb8afb0a4b7aeba9eb0baadb2adb9a9acb3aea9baacb0afb9a9abb6a7b1a9bbaca5bbb2a3b8b4b8a8a2b6b8a1b386b10bb7a4b3b49db4aabaabbeaf0080af09a9afa8bba8acb3a6b1b686b101acb980b203aca5b0ab86b107b3a7b2afabb4afad86b107a8b1a4b8b9a9b6a886b12fa9b2afb8afb0a4b7b3aeabb1b5b6a605a2c4a2aabfacb1a9b0afb9a9abb6a7b1a9bbaca5bbb2a3b8b4b8a8a2b6b8a1b386b117b4b0acaeb9b3acadb2aab200b6a5b2b4a8bba8acb3a6b1b686b101acb980b203aca5b0ab86b107b3a7b2afabb4afad86b107a8b1a4b8b9a9b6a886b117a9b2afb8afb0a4b7b3b6adbab0a2b5ada2c4a2aabfacb1a9a6b0 +8eb007b1b2a7b8b0b5afbb86b00fa3b8b4a5b0b5a8b5aeb1b7b3aaaeb1a986b020b4adbfb1a7b4abaebea0afb1b5a5bfaaadb3afb7afa9b9b0bb98bab4a5bcafaaaf81b20bafa8c1a5b7b4b8acaaa1bfad8eb017b1a7b8b5a4adc1b0acb7aba900c29ebaaeabb4a7b1bfadb4beb017afb1aab8b1acab0100b9afabafb8a9b5a7b8b0b9abb7adb697b01dada7b9a6bcaeb2a8bf9e0cb4b1a4b8b5adaea8bca7bea6a2c3adb0afb5a5efb0 +8eb007b6a4bbafb4b6a6a286b00cbeb59ac3bfa0b9b1b5aca8aeb480b000b886b012af9fabaeb4baacb59eb9afb7a7aaacb3be000480000005810016229abea9ada6b2b9a2aebeacb3a9b7a3a7b0bcb4bc9ab18eb00bb3b9abafc0b49fabb19dbebf800009b5a2b5acbab4aeab9fafbeb017b2b3b0ada7b7b4b008a9b2aeb6a4b6b2caa1b4a1b0abb2a496b01fafb9bba8c0a6adb0b9b1c300a5b2c1aaa3bdacbaa2b89ebfbeaaa9a8bdaab8baeeb0 +8eb00798d1a5bb9d001db486b000a980af0bb49faab7afb2b6adacb6aca387b01ab6b5b7abaaaba5b6b5a8bfa7bd16000700bba9b6bbadb8b60500038000000781000ec4ac9abdbaa4b5babeb1a4bab1aebc8eb017aba6b2b7aaafbebfbdb79daaac0fbab8b6a5abaaabb7b5b6bfb016aeb6b4b5ad9fbb00b1a4b3b0b8b3a5b2a0c1b1a8b1bcb596b01fb293b8b2a8c3a3b9afa3ab00a9bcadabb998c1b2a9b9b2afa6a2beb3aea2b4a7eeb0 +8eb007b8a8a4bd03b7b2a686b004b4aabbb1c28100070392d2a9a1bebdab86b000a380b708a6abb5b1b3bab0a405800004aeb5c4a90c800004010007b8a480b207b1beb2aba204000a800001c5a580aa05b2a5b1aabf9a8eb00cb6a3bab0a6aebf91b7a5a8c6ab8000059db3b1b5aba680b700a3beb017aba8afadb7a8c8a502b7b8a9b49eb0b1a9b0adb3c5a8a4b296b000b280b901b3a08200160f0a0011adaeabb0c3a4a9b7b9a6b8bdb7b0b3a2bfb4b1eeb0 +8eb002afadbb800002aeb1aa86b001a2c081000aaf0103b5b2a4afc4b0a1bd86b009a9b1adafb8b9b1a4a3bc800002051305810013a8b0b8bcaea6b5b0b7aea4aaaeb6bbb9a0bab4af800000a980b804b0a99fbfb88eb017adb7ba9cb7abb9c29dc3bca9acad12b0a4b1b9b8afadb1a9beb017b6b8ac9bacb7bcab00b5b2b4aabeb0bab4c4a59fbd9bbcb296b011ada7b8af01000c00b4a8b7a3ae0d000c00058000010a0080a880a505aab7aeb9a3bfeeb0 +8eb007a3bdad06bcb59dbe86b008b2aea5c8a41500aea080b704adafa9a2aa86b02fbbb1adbaada2b7bcaa04aab8a2b2aca9b1aeb7a7bb9fb2bbaeacaeb2b9b8afa9b59cbf99b2b4a2c60900afadbfb0a8ac8eb017b4a9aab6b5aba8acb7b5a1b0bea800a9bcb7a2adbaadb1bbbeb008a7b9bdabc5a700010980000011830004aeb5bab3bf80aa96b001b7ae80001bb7ae9eb2adb5b0c4ad9dc4a2baa1bbb5a5bd0508beabbfa2b1b9afa5eeb0 +8eb007b1bba700a6b4afb486b080b203b4acb70080ad07bdb0a6a8b1b5b6b986b029aba6aab7a5aac19d00b3b1b0acb8acb0b5b3acb99fbeafa2aeb8b2aca8a3adb9adb2b8bbb9a6b8a8a9b8800003b0a3c1a88eb017acc0b6a50704000507000501000d000d9dc1aaa5b7aaa6abbeb003aeb69e0a80001103b4a1c9a500b7b3bdb8b30004a1afb0b3ab96b01faf000fa3adafa7c3b2b9999cbdb1c0b1b2b5a5b6a99ebda4000999c6afa2b4baeeb0 +8eb007b2a406b1afb5abb286b00fb3aeb1b700b4b5b4a8b1b7b0abb6b7a386b02fb4b1afb5b1c1990aaeb89eb6b3a0bcada9b7adb3b2aab6b2aeb4aaaeb9b3afabb3adb5aea4baabb1acbaa9ad0ab0a0b98eb017b4a0010500b3a9b3aac19f10020002000a99c1b1b5afb1b4beb0170b001100acb4b8adbd9cb9afb1b49db4b1acae00b3aeb1ae96b01f01029ec4b0afb9a4b1afb2bcb1a9adabacb0b4aebaaeb2b1b5000fa7aeb8a9aceeb0 +8eb017b2ac02adacb6a9b8abafb3b9aeaab4aeb5a5afb100afacb28eb007a5bfa5bba7a9030086b00fb1a8baa1bab5b0b6afb9a1b9a9b3aeaf86b007aeadbcb200b0a1b786b014a8acb0a5b4a5c0acb70500b5adb3a8b7acbba4a9ba8200160701040006abafb1b4acb8a8b2a9b3aaa6c3a5b3b7b0b4a6b006b6a9acb6b1af0580030200a1bc80ac11b4a9b0acafb4b2b5abb1b9a8b608a1c0a4ac8eb006a9bab0adafa6c3800000c380aa16b7a3b8b3afbca1aab6b2acb4afacb4a5b8bc98bab2a7bf80001abdc1a7aeb2b1a9acbab0acba9fb3baa2b2b6a7baa9a7adacafb2aed6b0 +8eb017a7ad00baafb0baa1b9ada3a8acb2b8aeb2b8b700b6b2c0a48eb007c59db5b6acb300ab86b003aec1000f82000707a6b8a7bdba98b886b007b6a9ada8a00fc3ab86b019b8a8bbbca8c1b5a5ac00bbb2ac00bdadb7aab3bdadabc20004a680aa03abb2000482000bbfb79ebec6aca1aba7aeabada6b01fa6bab8adac0800b9adaab7aab6b1a4c2b1b6b59faab8afaaada8b2af00aeabc28eb005afa8aababbae800005b5a8b4bb000982002d0906b5a9b2afb2b0acbba9b3c4a4b4b59cb0099ca1b6a8b4afaab7b3a6b6abbeafacb2bca8b3a2b4c1b7abb0b1a3d6b0 +8eb00fbb08b1a0abb6aab2a9afb8b9b2aeacae80b005a308a4a1b0c28eb007a4acb2a3b706b6b586b0030400b99b800009acbb9bb6ba95a8b0b9b386b007a9bba3b9bc00a5b286b00dabb3a5adb4a199bd07a6c4aa011881000d0900060002acb4aabcb9baa8030280000117c2810009b5aa95b9c2afb2c0aeb4a6b009b5aca5bf0002bcacb0cc80a813a9b0bba6a3b2a7cab7aea0bdb7acb5b702aab1a38eb03bb9a6b9a5b0a919b3b4aba8b9a1b5aa07b8bab9a7afb99cb8a7b4b8a2b19db5b2b4a6bcb7a317a6b7bca0afb8a5a7bfb5a0b9a2bca1a6d49db8a9a4ae80b501b7bcd6b0 +8eb0179b05b1afc5abadb0b6aeaaa4aeb7b0b5a30a0cb7afb3ba9d8eb007bab6baacb500a0ba86b000ac80c10ab40004abacc2b5afbab90e800086b007aab0c09fb30ba2b786b015b3b0b1b0acb1c602b9bca1aca7bba9b0aca40ea1b6b3800017bc8bb7a50010afb1bb9ea4bcb0be06b6cc93adb6a8a7b7a6a6b007a7b7b200aeadaab281000210050880000f0700baa3afadb4a9b3ba97b4ac05b8af8eb03dadafb6a2b6ac00a9abc1aaafc2b00100a8a9b1a8acadc8abb8070009b8b6a2bdacbb9cb9b600a4b7b2b8aea6bab0b2a9b7b0b5b6bb9eb1b7a8b9baaca6a780a6d6b0 +8eb00bc900b8b3a9a3c5a4abb2beb180b209a4b8bc00adacb2b1c0a88eb007a9b38cbea904b6ac86b000ba80a208ac05b2abb8aaa3b8b1800001cdaa86b007b5adaea6c100beb286b000b381b480b1209a00a69fb7bca8a4b8b2b6a903b2a6a3c0bab9beab03b5aca8b1aabea8afb4b69f800006bac0a6b5b3b9b7a6b01fb5be0007b0a2b7aeb1afb300a9a2b5b6c1a7a8b50006afada4afc6a8b600b2ad8eb021b3a3bcb8b200b0b7a8adaeb6afad00b7b9bca2bab1aa9eb9000aadaab3bfb9a1b8a680ae0baf00c9a7aea9bfb0abc3ad0380000daea1b4b9a7acb8aea3aebeb5b0c2d6b0 +8eb001aa0380af02aab0058100000780000a03000500c0b7b0b7af97c78eb007b2a9c7b7ad00bdad86b00fae9ecabe00adaeabc0aab300aebca9af86b007b3b6a0c0a900b8aa86b01fa6b6a3aeba9b18b0b5c89faabebc94b8bb009fb2c5a1b49fa3ac04b1b4a7b5b680b40dbd9ab9abb7bc00cd96b9af9fb0aaa6b003a1b400ba80b400b080b309a707afa8beb0ada4aebf80000ac099c0bab295bbc000a5b58eb02ab3b4a8a9af0ab5a6b4b7b09fb1bc05b1a5a7b3b6a6b3bc00bda9b2bd9aacaeb4abafb3b5af00adafbaa7ae80b91291b8a800020009b4a6a7bfa5b2afb0bcafa0abd6b0 +8eb00e050009010f00b3b6b2a6ada9be9a228200040b030013008eb004a9c3a2a4b1800000a986b00fb3bca500c0b4b2afa8af00b2c6b59fb286b007b1aac3a5ac09aeab86b016b1abb4b6adb900a0a6b3b2b0aab3b0aea800d0ac9ebdb380b40700a0b5a8c696b3ab80af07b8acb5afaa0b98b881b901abb5a6b01fb500bdada5b4a2c0a6bb00acb6b595c2b20e00b7b4a8b8a8a7b6c79fa312a1b88eb03fa3b4bdb0af00adb8b6a3bac4ab9c05aac39dbca6b4b018aca9b1b7b6b0c1a6b1a3b7b6a3c00097bab4aab8a1a5c0bf000ab2b49cb6b1bf001196cea59fbebdaad6b0 +8eb006afbbaaafaeb2b680aa0eafbca5b4ba98bbb5a6b7b29dcaa1ba8eb007adb8a9abbdad00b887b00aacb009b0a8b3acb0b600ae800001060486b007afb2afacb400a4bf86b015adbaafa4c2a800bcb5a7aabab0adafb3b007abafb3b180ae0e0100b2a8b8a2c7abb5b4a7b6b0a9bd80ad0607afada9b7abafa6b00f00afadaab5adc0a1b300b0aeb6aabea680000db4afa9b6b3aab8aca7bbb000c4a28eb00ab5aba7b1b20700a9b5a4ae80ad0712acb1aabba8a9c7800010010600a7b6b1aea6b8b9aab2a7ad04b5b380ad15beafb4b0aa02a8aeb6c0a4baa705a9b9ada9b9afa3b5d6b0 +aeb003b6acaead80b10ba9babcada8b6aab1ac00adb180b62faab0a3bdb5b1bb00b7a8afb7a8b200050aa8b900b1adaeb0b6b5b3b1b3b1afb8ac02abb1b4a5aab9a7c0adaab0b3afad80ae0300acaead80b303b0a5bfa780030eaab1bca9b6ab04a1b7bda3b5b9acb880ac0cafacb0adb3ae0cada2b4b7b3aaa6b00604acb0abb5b3af80b02700a9baad9fbcb300aeb0b2bbb7b0afb3aaaeb1af03b0b4a7b3bba7b7abb6b5a9c19bacb5a0bbafa680b210aab4b700b4acb9a7aeb7b2aeafabb9a4b7800019bdadb9ad00b6aea5b6b1adb1abb505aeb1b0aeb9aeaab3af02b280b405a9b5b3ae0004deb0 +aeb02ab1a6b0acb6aabf91a5acbeaeacbaaa0c06a7abb2bcbaaca2aaaca712a4bcbb9aba0a00b0a0b7000bb5b7b080ba009380ae03b7a8acaf800000b580b224b7b9a7acaeb2b7b4aaacbab7b400b5aab8a4baadc1a6af00a3b99eb6b5ac0f00c49802000980000fa8b5b0a9afaba7b6b000b2c3a1adb2b4a6b0000080ba11bcaaa9beaba803acaab0beac00b2c7a1a6af800001a9b680ae22aabe00b2afc8a0b0b2a7b6b99fb6a7bbc3aabfb3a0c1acaeaba7ab0c00bbaeb6b1b29b80b427b2b0b8af0400b2aca5bf00bba5acb1b6a9bdae000409ada6b1a8aabf9db4adb3a5b0ada6a10a00b1deb0 +aeb020afa7b9a6bcada5d1afb4afadc2a900a40004aea3adafb9b7bbaf12a4b1a3b2b9ae80000fc4b1a50eaca6babca4a7bbbfbca3b5af80000dc8aaaba0c6b2aca8b8afb1a7beb680a92aa400aebca7b2a9b596bcb903cfa4b1acb1b700b1b3ab05c7ada30ba0bab4b8bbadb8ac020ab0bab5b4a4b4a6b01400a7b69cb0b79bbe0100c9afadacae04b2a100010c800016bdaec7a4aa05199ebca4c1a5b3c7a4b8b5a8b99ca3a4af80b615b2abb0b4b2bc911aa6a8b6baa6c0b1b2b8b1a7bcaa1180001f090005b9a4c3bd9cb3b4b80500a40b0709a8aac0a1b9b0b1b8aebcc5ada4b4b1deb0 +aeb00eaab8aab5a9b2b996b3bbafa70016a780b706ab0800b1a7baa380a808aaadbbbaadacaeb50a80001711a3a9b696b901afb1a4a2bb000304ad9cbbb4b1afa1b9bc80af01b2b580ae1aa9afb11500a3bbaebfb4b7b8a600aaa6b8b4a3aebd00b9acb2a6b180000fb0c2a493b5aeb2ad069db1a0b9a8aeb7a6b00eb405aab5beadb5ab060099bbaeafb1800001b3c280003113aba2a79bc20096aabeaaaeb9bc9aa4b3acaeb0bbbfb7b5a7aaada5bdacaeb2a9caa00bc0a4b0afa8b4aeb0a6ada3b9a2bc80b10babc5a0b9a3a7bfb49b02aca380b602a3981580000bbfa0c0b3a7b5a2aaa3c2aab9deb0 +aeb02eb2b0b8a4b1b3a6c1a89cb2109daeafb0a8afb8b2001000bbafbd00bda2a8b7afb4abb4a3c3aab3b7aec6a005b6a712800018b4aabbafb5a9b6b5a4bba5b4a4c4a6c294b5c0a8b89200baa980b10eacb193c4b2a2b7bfa3b5b3a6bf00078000120cb0a7b3a1aac9b0abbf00a2cca4bbae9fc2a5a6b010b6a100a9bd97bdb3b4bbbaafaea9b5b604800054a7c7acb5b3bcba00c0c1a5b1afb300010500bfa9b30900a7b2a3c3b1adb0bda3b2b1a3b1b49d0100a6beadaeadb7b9c6b1a2a9b6b0a3c797b5baa5b6a6001aa8c0b2afaeb7afc7a0ac0c0700a5b1bca1b2c6aca6a9deb0 +aeb016b6a7bca0beaab2a9b50c00b8b3b5a5b7c0acaba9c2a0b08000060d02a8b9b0aead80b20cb0a2b2adaaa5b0b3ab070002ad80b416af000507acb2b4b6a4bbc7b3aea7b3acadb8b0aaa9d2ab80000ab3b8a0bcbfafb3b2b6b2b480af18bfa1b8b1afbca8a4c3bbb2b1bc9f050003bb9ca5c7a9b3b79fa6b002a6beac80000db5a8aeb5b1a2b8a4b1ada8b4a3ad80b1019faf81002fbca0acb2b0b7b5b801b8a20b0002000eafb6afb5b0acb3a9aac2aab9b7aab99f111000b2afb3b0a494b2c6b898babba581b20205000e80b015b4a4b6b5b1a8b492b7acb0b4a30e00b5b1b9acabb6b5deb0 +aeb016aab6a0bfa9aab40700b6b1a1b89bbdb2a89cc3af9dc3b180b481000c0501000e050006090305001302800028acc70005ac9fc7b1000f00bba5a4d0990005a4bfaba8b9a7a1bdb299b4bb0900abadb2b89ebea5a2bd80ae0bbba1b3b5a8b5ada9bba89cb780000b0e00c4acb1b5b8aba6b8a8b7a6b000b780ad00ba8000120b00a0c4abadb5bea1b9b2b9bda4bc0001b1b7800005bdc0b4aea1a9800006acc2a1c0a90ea780ad1ab89eb0b3b2aab4bb9eaeb4a6b5b000a30500030006000a0c00010f80008001130700b5b89ab8abb3a4b8b3a3c1b0cfafada7aeaa80b0061000a3b0bba6bbdeb0 +aeb080af25b6a4aec300b0b99cbdb3a3beb2aab0c1a7a9beaaa4b3b5000bacb3baaab0b3b1b0b1b0a4b4a780b203b4aca702800005c19bb400a9b381b210a2bc09a9adb6aab7a2b9c199bba3b6a5b68000231400aabda1c0b4b2a6b6adb4acb4afacb0b7a40a0700b1bda8adafb2a8bda4abbab1adb1a6b00ab9a3b9af00b6aab00002038000000683001e0c00b3b5aeb5a8c500aeb7a6bfaf04bab0abb1ae0300b3b2b5a8b7b3acaeb580b026b6adb1b6b00100b7b4b3acb3a5bcaaa8beb3a9bab2b6b2b0af0200b9acbba5bdada9bba8afa1b080b405b5a8b6b09fbe800002a8b1aadeb0 +9eb01fb3a6adbca8b7aabab1b3b9adb0a5b7a8b8acb0b4ad00c0a6a7b8b0b9abb7adb686b000af800080b310b0aeb3b7acb49eacbaacb5b3b8afb0afb681000eb6b400aebfa2b3abbeb000b9afb3ad86b000ad80af04b0b3ab090180000db7b6b2a6b4aab1afa10d04001700a6b037b4adbfb1a7b4abaeb2b1a7b8abb1afaab3a1b10500bbacb0aeafb3b0ba9db3b0b4aca6b3b8aaadb4b69bbab101aab1ae0100b8aeb5c6ac0186b080b10db5aeb1b5adafb000b2acb8b3a7b586b00eaea1c2a9c3a30500b1b2b4b3b5990b800016b9a4bfa7b3c0abaca9b8aea70f00b5aaacb1acb3b2bda6d6b0 +9eb01faac6aba4b6a8b6a8b2ba9eaeb6b2b1c0aabfa60009aaa2b8caa1b4a1b0abb2a486b003b3000aa980aa17b3a9a5b6b9bdb9b39eb2b3a2b8b4a6c1b60508a2a60bb3b180ae07bea004aaabb7acb386b080b507b0a5adc88fb5c2058000000d8000080b000408a7a0c892bfa6b006af9fabaeb4baac80b509a7bcb3afacc2aebbb50080b3209bb7b2bcb2a5b2a2c110a7a6c1b5b0a9adb2b4b5bbb0a8a70eafb4b1bbafb3b493800086b00fb5ada4b3bea3b5b10cb3baa9abaab2ad86b023aec59ea9a2b9bc00aca9afb5a8c6ae05b000b4aea3aea0b4bab4a2afc6990900b8bda7bc81ad00b7d6b0 +9eb01fadb9abb0b7a9bebdae9eb7bfaba8b2a9ad000aa9b1afbaaab2a0c1b1a8b1bcb586b000b580000ebe0b000f03049fa7a4abbfaeafb2a980b302b593b281000dbb02a2a8bba8a6b800b3b9aba4b986b017a4afbab2b0b3a6bdac9dc2b3aeadb4a7bab2aaafb6b9b1a9a6b015b6b5b7abaaaba5b6b4a4b1a4b2acb4b2990400aac8b980ac00b080ab02c3abae80000caab2aeadbcb6b5b1a2bbaabbb2800008afb3b09dbbacb804bd86b002afc2ad80a70ac19c0900aba9b3b7acbca586b027aeb9a6c2b299bc9e0faeb4a8b6b49603afb5adb3c80e00b5a5afb9b1a2bfabbe00109eafb19dc0a3d6b0 +9eb00ab2aaa9c2a7acb298aeb2c6800012110004070018a7a4b6b1a5a9b0adb3c5a8a4b286b00baf001496a60e00a6b5b10113800001b9ae80b115a8acc2b6b8ab05000700b7a8bfa9a81600a3aebbb0b286b00aafabb0aab0a5b2aaadb6b280a80ab4bba9a0a7bbadb5a5b1afa6b000a380b72ca6abb5b1b3afb4b2b3b7afa1b0c900b3c092b5abb7afaeaabab2a7a50b04a6b0b8b1b2a6afbda4b09ababb000880b005b8a1bdb7a4a186b00fa0bab2aab1ad11a902afc3a9b8b29fb986b013b2b1b6a0c2be8ed10008a8b9c2ad00bbb5a300028000070f00bfa3b9aeb7aa80a502aba91180b402b0a1b9d6b0 +9eb008b9abaeadb7b3bcb9078100081900aeb4bcaea0001780000815b4c4a59fbd9bbcb286b027ae0008b6b900afb39d0b0800b900b7a6b5b1b7aa95b2acb20a0406a1b1c7a6b0a907acb4adb1b2ab86b000b980ab14a7b6abc6b1acb2a8b9b1a5aeb8c4b4a8b6b1aeacbca6b033a9b1adafb8b9b1a4aec0ad9badb4bbae00b2b8a4bab1baa3acbaa9b1acb7c4a700c0acba9daec3a5acaeb4b9a9b1b700aeb1b8b580000110b386b00fc3a7abbdb80004a500b69bbda0aab2b486b01eb6aeada6b0c0b3a2b700c6a7990209a6b0beb900b0bc00aab1b4bfa2b3b0b780bd03a6b2a5a980b600a5d6b0 +9eb004a3c4aab3b2810015a9c2b5a6b4acaab7aab9b1b3a6b3b29400aeb5bab3bf80aa86b000be80000ab29f00c7a6bc9d0ca8b50180b302a4acb680b802b7bda681000c02a2a7b1b0be00a6b9b6a3c5ac86b009acaab6b2b7a5b3a3b7b980aa0bafb8b5a2a4a8b9a1bbb4bca1a6b011bbb1adbaada2b7bcb399b0c8aea7a800a7b380b01fa1b4a1bba8bcafaeb1aca0b2b1009fb8b5b0aab6a8c79ab1adafb300b6a7bbaa800001b4a386b003aab6b2b0800009c1af09aba6c1a7acca9e86b014b3a4b5c3a59fb7b1b2b900b3caa7abb4acb300b3b7800010bca7b4a2aeb3bea2a6a7bea8b7a2bd9cbcd6b0 +9eb01fbfa0bc0002aaa4beb2a2b0bfafbbada9aaa2c0aab4b3afc9b30004a1afb0b3ab86b00bb2010caebf00b0b2a81500ae800406a0aeb7bca5a2ba80a510b5ab10b700b9aeb5a6a0b8b6b39abaa4b986b003afadb5a980ac09b6bfb5a3b1b9b4a8b0bb80b805afbaa7aaa8b9a6b00aaba6aab7a5aac19db5b4018100180500bdafa3b8bea9b9b3b5b4afa3b0adc4acb80013bea8001180000e9fccb1aaaeadb3a9bbb3acb8afa0bf86b00fadb8a2ba0cc2a4b502aabb9fb9b7a6ac86b027aeb4baa4abc0afaea5b800bba0abb3aba903b7b10304b0a8bab8aabda8a9aabeb0aeadaf0ca4adb7d6b0 +9eb01fa60300b6a5bab0a9acb4be9facb0b4b0bdacabb7a8b5b2a3b1acae00b3aeb1ae86b0800008aeaa0012a1b6b3001280000ba3b5b4a7b1b9b3a8c0a2b4b280000c02b0a9aeb7b4aea7b3c0a4bba986b080ae08b7aeb2b3a3acb6a4bb80ad0ab3b5a7a8b0b1afaeb7b5afa6b00eb4b1afb5b1c1990a001000b403000d8000800581002103abb0a6bbb5a9bb9eb9b5b200a5bbb2000bb7af00acb3b4aab2baa3afb1b2b1bba986b00209000f8100020b0004800004b5adb2a8b986b009afb9aab5b8a8b1b0b6b7800005c2abb3b6ae0b800000b680af10b3b0a5b5afb0adc3a2adb6a7b80009aaabd6b0 +96b00db1b3a3c49fc1ad0200b5a8c4aeaa80000207000c800012b1a9b9aeb6b0adaaafaab09fb9b500bab19eb486b001000180af01b2af81b106a712b4abafbbab86b002acae0480000ab8b0afaeabb4a7b1bfadb4c6b009acb0b1b9a8ad0b00a710800008aeb6aab4b8a7b6acaa80b62600afb3b2aa9fb4b6abbaa600baacb500040700b500b2bda3b2abbeaaafb8afabadb5b0a7c0a70580000a0104000100a7b7aeaf08af800002b2b0b18eb007aca7ae01afa8c1a98eb007b5b1a7c19e0c02aad6b0 +97b011b4b0abb49c00b5b4adbba19b1805b000b29e80bd1200b2a1aa03000eacbcb3a8c49fb2ad00abd0a086b001000180af01b2af81b106ae9db2abaeabaf86b006b2bda30b16a4ab80b506acbab4aeab9fafc6b006beaea3a906149e80001db3b4afbeaeadabadb0b6b4ada1b3a304a2b9beb4c0aab59dc8a300b0000f80001204b00aa3aac8a5b500b4b88ec2aebab7a3abae800008a4b200b0c0aea9aeb080b10600b1afb303afa78eb007b8bbba00c3ab97b98eb007a9b3adb1baa49ec2d6b0 +96b027adbca1b2b50bb7adafaab5bcc597a90200adbcad9009c9b00f00b4aba9afaab9adb1a9c000b8b4ad86b001000180af01b2af80b107b2a8d0a7b2baabae86b002a7abc0810009b1b4b6a5abaaabb7b5b6c6b03aa8a2bcb903ab00bdc59ba5be9fabbca7abacb99cc2bcb5b4ab00a8bea7b0a0b3b5b4a800ac04aeb40bb2ad02a1abb6b7a719a7adc7a7b3aba9beb2800012c4b9a9bea4a9a6c0c199b8b900aeb9adb100b68eb0079dc2aaaca9afbfb78eb007b3acb0afabb9bca7d6b0 +96b027b1a1b7b500acb8abaeadb1abafbab408b4aeb8b9b5018bc200b6abb8a9b1b3a8b5a0aaa703a7abb486b001000180af01b2af80b107b2aba0b0b3b7b2b186b00cbba99dbe0b0102a5b3b1b5aba680b700a3c6b03fa9bfaf00b3a6bea8a3c4b4a6b3a1b5b3afbaaeafb09da9afb30baba8ba9cbbb3afb69fbeb0abaf00a2ab01a6c4b9ada3a700b3abb4aebca5a9b50fa3bda300028000000480000aaab1b30016a3b5aca310a18eb007b6b1bd9fb6aaacae8eb007b4a4afb9a7a3aeadd6b0 +96b00aacb7a1b60ab0afacb2bbad80ab06aaa800b0bba1a9800711acba11b8adb7b4b79ebdb3bab0c400c1a0b486b001000180af01b2af80b107b0b99bc1ada5aeb786b00fb6b2baa700bc04aca4b1b9b8afadb1a9c6b006b6acb204a6afb580048000010409800005b0bca4a2c0b180b621acaa00a0b6bccaa2b4acabbeb6a7a9bd070c08bcbfa2afb1b3b700b2ba9fb2b1b8b6800014b6adb7b6b10db2b1bda106aeb900acb1aab50004bd8eb000b380aa00bf80ad01bfa98eb007acb3b0acb2b9b6b2d6b0 +96b002b3aeb680000db8b9acb2aebaa4bcb100bab6a0c1800012a8af00a2aa0200c3afa3b8a9b89d01aeadb3ae86b001000180af01b2af80b103aeb0b8b280af01abad86b00faba8c5a3b50500b8bcb7a2adbaadb1bbc6b011a9a500a3c2aab5a2b100b8aba2b70400a2cb810080b038aeb012b9ae99aeabb8b1bfada5b9b09cb6a5b3aa9ab7c3a5b5b2a7a8b5c1a1acb1ab05b8abb7a2b300a8a6aeb30900bd00a5b4b5b4a9169ca58eb007b2adb70003b4b8a18eb007adbab0a8b2aea4acd6b0 +96b01eb1b5a404c2a4b0bab1aaa1b9a9b400a8afbf0008b0b7b0000d001001a0bab280b503ac0900ad80b500b486b001000180af01b2af80b107afa7b4a6b2bbb0a887b00eaab1acbc04a8089dc1aaa5b7aaa6abc6b01eb40b08a3b2c096bfa801b8a3c0a20800b200b7aab4b19cbfc100b2c8aebbb080ac219aaf10aebbb6abb0b1b9b2bda3a5b4abbeb5ada8b5b6a400c5a1a7b7a0c100b5b4bd800007c400b8bba4aea70980ab00c08eb080b205bcab000697ca8eb080ac05b0b7b5a8abc0d6b0 +96b00fb1a7b703a8b5abaab1abc6a0b6af0005800015b6b4a6b3acb2a7b3b2b7afb0b1a8aeb100b8adb0abb186b001000180af01b2af81b106b9a5b9acabb2b686b00fb3aeb9a6b70007000a99c1b1b5afb1b4c6b022b100b4b1afb1b3acba00b0afacb700ae00acadaeb1b4b8a900beb6a2baa3afb3b7b0b1800003a9afadb680ac1cb2acb4b7a9b0b3a8b2b4b1acb000abb9b5b1b90004a7b8000eb300a901800005bbb300afb5a88eb007abb1aab3b900b7a98eb007b2abb0afa8b3b8a6d6b0 +96b00db2abadb300aeb0aeafb1b2a7ad0c800086af0cb0b7b09ec1aea8af0109abb3b080af00ad86b0800005b8a9bdb1ada98eb00fafb2adafacb50faf00c0aba6b6a8b4b6c6b017b400adb1baa9b3b807a4b4a3b700af0700aeb2a9afadb50386b007b2acb6bf00b7b3a78eb01700a8bbaeb20006030a0500acaf0500080100ac00b9afb8a8feb086b0 +96b00fb2a8beb20304c2a5b2adbeb6c1abaeab86b10dadabb8c3a0ab0300b58fc8ada5b080b586b0070d0300baa6a2c1b48eb007abb6a9bda3b095b1800005b4c1abb5b3a8c6b001aa0480b013abaeb1b400b6c3ad03afad00af000e00b1bbb60086b007bcafa39a1aa6adba8eb00d0fabb2a5b20300a9a0b0a7b7ac11800007ad0006a6a9b0aeaffeb086b0 +96b004adc699acaa800001bbac80ad04a993b3b5be86b00fb9b3aaa60400baafbda6b3b0b2baafa486b005971400bcb4a980b18eb003aeb6acb980a609d4abb500c0b5a6b4aabbc6b00ec000b4ad9fc8000200010006aeb2af800806a600089bb1001086b007abb3b6b79cbcaab18eb080000ca5caafa4beb8bdaeb4bfa0a1bc800006afc1a8b8adb1b3feb086b0 +96b000ae80b20cb3b9b1010007b5a2c1c6aeb2a686b080000d0f06abb5a7adaab2a5b0aab0abaf86b007c6001aa2b4b9a5b18eb00fb2b0b1a9baaca7b1be0003afb8a7b6aac6b0179a0f05b2c8a20001b7abc1a3b8a6acad000e00acba0eabad86b006acb3acaec0b2ad8fb000b6810013a7b9a6a5b0aa9cb0090704adaca3aeb5a3adb4b1feb086b0 +96b008b2b3aeafb6a8b0b8ad800004080009000c86000caac59fa4bda1bcb7b1c6abb6a780ab00b986b000a0800002afa0b790b080ae0daca8bfbb92bf9fc4009fafb7bbabc6b004b5b000a5aa80c210b2b3a8b7b0acb2c0abb7a8beb900a5b5b686b007b3b2a5a6aca8b7af8eb003afb2b50580000310040014800001aeac80ad07c6a8adbea9be9dadfeb086b0 +96b00fb8ada4b2b8a0c6a6afb8abaab7b2b3ab86b20fb1b7a3b9abb1b4aaa3b3a5b7b2b6aaac86b007b10900bcabb3aeb18eb00fadb6a5b2a9b5b1b4adb300bbb7a7adb4c6b011c09ebb1198b5ada7c29db5baa9b2a9afa7b7800003b7b1b0af86b007abaeb6c0afb4bba38eb017a7bbb599adb9b2a7ae93d2afa4bab0afa7abb7a2b6a5beb9feb086b0 +96b00fb1afb7b6b0b4a8b9adb5b3b1aab0b4b786af09b3a5bcaeb1b9a5adbfb680ac03a9b5adaf86b007b50001a8b8b3a8b98eb00fafb8abb3a4acb7a9bfa20407a7bca4b3c6b003a7b6a5b4800011b7b3a9afacb5b39eb8010701a4b2a6c7a7b487b006a8b1ada0acb3ac8eb017b8aca4c6bca7a1b7baa4aab5b7a8b9b1abbda8b9b6ada4a9feb086b0 +96b005adb3bba2b7ab80ae07be99b4bfa1c0a8ab86b10db2adb2b8a8bbafb6aca3b3b2aeb780ae86b002a90d0080b302acaaaf8eb00facaeb6adbab4a2b8a9bcad00c0a9a7b7c6b006aabcaeb7adb1048000000881000a0708a3b1a5b8bda7aeb7ad86b007b2a8b8acb0b1aeb48eb017a9b6b7a4b1aab2b5afb3adb7a7bca6b9b5a9b1ada4bab3b6feb086b0 +c6b000b9800003bcb0adb897b007a8b2b000aeb2bea7e6b007a5b5b3a7a9bfacb186b002aeb4aa80af02a1b3aec8b005b1ae00b3aeb1ceb0 +c6b007000c00a0acb0baa896b007b8b7b606aab7a1b3e6b007b6adb4b8ab9eb2b186b006acb0b2b5aec5b4c9b005b1ae00b3aeb1ceb0 +c6b00705ad0cbdaab4a2b896b006a9aca19c12a8b3e7b007b599a6b9b6abc2aa86b000aa80ae04b3b091b4acc8b005b1ae00b3aeb1ceb0 +c6b00700b500aeb2baa6bb96b006bca5bcb900b1a5e7b007b4b3c0b4a1b1a2b386b007aeb5a7aeb61ab6acc8b005b1ae00b3aeb1ceb0 +c6b0070ab10ea4b9b1b3a496b006aabda6ad0200cae7b007b5aba9b2bbbd000786b002b2b9ac80b00200b5b1c8b005b1ae00b3aeb1ceb0 +c6b007009b0ab5a8b1a9c196b007adb4b0b6aa00b1a6e6b000a780ab04aca8b100a986b080ae05b3b1a00fadafc8b005b1ae00b3aeb1ceb0 +c6b00700ad09a1bbbc96b696b007c59bb6a7ad05aabae6b007bdb9acadb1a700c286b007afa7afb4a312aeacc8b005b1ae00b3aeb1ceb0 +c6b00100b2800003aea8bda796b007a6b3acbda4b603abe6b007a9b2adafbea70aa686b007baaeabb9ba00bcafc8b005b1ae00b3aeb1ceb0 +c6b00700b9a100c699aeb596b00fb6b5a0c2a4a60ba8abbbaca6abafb0b4deb007abb4aeb1b3bb00bd86b007bbacb6b800bcb1abaeb007b2b7b2aab6aaafae90b005b1ae00b3aeb1ceb0 +c6b0070c9ec900a7b3bdb496b00bafa6c2a8c1b200bcb3abbcb480b001b8a4deb007b2b9afada79f229f86b007a8b0a6b504a1bcb3aeb007a7aeaca9b59eb2b490b005b1ae00b3aeb1ceb0 +c6b0070006aa00bbc2a8a797b008baa8afa9b3ae00b7a080b203b3abbda7deb002a8b2ae80b602aea2ba86b007abb6aca319b0aca5aeb007bdb2abadbfacb5ab90b005b1ae00b3aeb1ceb0 +c6b007b50fac00a9a7a4bf96b001adb380b20bb1a9b909a7c5ada8b6a3b2b8deb007adb4abb4b1a7c4ae86b007adb3b6b49900b9b7aeb007abaabbb4a5a8a7b290b005b1ae00b3aeb1ceb0 +c6b007ae00ab00aeb4baa896b00eb2a4b9abb9b29eac06a8a9aac5b1a2dfb007b3b5abb0aca7aea686b080ae80b302c700b7afb001b3a080b101aac680b290b005b1ae00b3aeb1ceb0 +c6b007b300ba06acabbeaa96b00fb6b19fb9a3b1d4ac00a4c9a0a9afaac0dfb080ad04b2b6baaabb86b007b3b2aea59cbdad9eaeb002c1a6b080b102a4b6ab90b005b1ae00b3aeb1ceb0 +c6b007aa00af06b3a6acb696b00facb4aebbaba89cb3000cabacb9beaba9deb007b4a8b4acafaca2aa86b007b2adafb6bca8bdb5aeb007a0abc3b69a18a3b490b005b1ae00b3aeb1ceb0 +c6b007b402b300b2b9a9b696b00aacb8acadaabeb4afb700ae81af00acdfb007b3a2bbadb2abbaad86b007b89fbaabafada6aeaeb007b7afabaeba00b9ad90b005b1ae00b3aeb1ceb0 +c6b007aa03ae00b2abb1b29eb007a901b0aeafb4a9b2e6b007a3cbac9dbbaab1ab86b007b8a2b4baadb6aeaca6b000af80b104aeb300b0b18eb007afc29eaf0facaeb7ceb0 +c6b003b200b30c81b100b39eb007b8000bb5a0bc9cbde6b007b79eb8b6b0b4afb486b007a9b7aca4b3abb8afa6b000af80b104aeb300b0b18eb007b1a2b9af99aeb3abceb0 +c6b007bb00ab009eadabb89eb007b1bf00adb3b0bea3e6b007bc9eb6b9aaafaeb486b007b4b1b5a9b2a5b6ada6b000af80b104aeb300b0b18eb007b2a9aeb1c5bba6b5ceb0 +c6b007af00b701b8bea8b19eb007a3b10004c3ab9ec8e6b006b2c2adaab3a5b487b005bf92bbbfa8ac80aea6b000af80b104aeb300b0b18eb007acc3a5af9fbca3bbceb0 +c6b007ae04ad00b0b6a6b89eb007b8c3a6048dc0a7a4e6b006ae96adb0b6a8b887b007b1a7acbaa9b1b0b2a6b000af80b104aeb300b0b18eb007aab6baaca9adb6a8ceb0 +c6b007ad07a311a6ada6b99eb007a7a4b8ae19b3b6b1e7b0061db0bfabaeb1ae86b001abd480a603b9acb6aea6b000af80b104aeb300b0b18eb007b3a5b0b4b8aabda3ceb0 +c6b007a404b993c4c0aaa89eb007bda6b0ad00a3afaae6b007b200afbaaaadb2ad86b007b195b0a3bda9b6aba6b000af80b104aeb300b0b18eb007b4b0a0b4b0abb5afceb0 +c6b004b700a8c39f80ad00b29eb007acb4b2b0b301a6b8e6b007b304afaabaaabfb186b007af0fb5acafadb2afa6b000af80b104aeb300b0b18eb007a7bdb7a8baa1b6b1ceb0 +c6b007af01aeb2aeb3adb29fb00eacb0bca300b8a7b3b1afabbaa7b8a9d6b00fa3b7b6abb0b7b1a8b500b5adb3a9bcaa86b007ad1102adb0aeb0b3a6b007b7afabaeba00b9ade6b0 +c6b007af01aeb2aeb3adb29eb002c4a5a780b90a0008b2a4a6b2aab2aab7aad6b00eb9b6b5b1a8a6b0bdaf18a9b4a5b7b687b007ae9700a5bdaab3aea6b007a0abc3b69a18a3b4e6b0 +c6b007af01aeb2aeb3adb29eb00fa7b1b2a6b7c600b0bdb4bfa9a5abb6b2d6b004aaa2a9afad80b708a000aea4adb8a8b9a686b007a8d700a7baacb4b2a6b002c1a6b080b102a4b6abe6b0 +c6b007af01aeb2aeb3adb29eb00fa6c7aeb9a4aa00b6a79fb3b1b2b6adabd6b00fbda1b0c4afa4b2b505bcacbbacb2b1a986b007afa900bbaab2aeb5a6b001b3a080b101aac680b2e6b0 +c6b007af01aeb2aeb3adb29eb00fbda4a5b6a5b4cd00b9b5aeacb0b2a9b4d6b00eabbdbea1a9d2920300a6acb6a8b1b287b007bc9408c0a8adacb1a6b007abaabbb4a5a8a7b2e6b0 +c6b007af01aeb2aeb3adb29eb00fabb2b3a7c5a39c029ac7b0acb0adaab9d7b00ea3acb6acadb6b200b7b0adb4a7b4ad86b006b1b302abb2a6b4a7b007bdb2abadbfacb5abe6b0 +c6b007af01aeb2aeb3adb29eb00fb3adb4b2abcbabbc0c9fa8b5c0b4aaa8d6b000b880b00cb4aea8acb5bb97b5bca4bca5b286b007a6ba00a5b4abb6b2a6b007a7aeaca9b59eb2b4e6b0 +c6b007af01aeb2aeb3adb29eb00aaeb9a1bcaca9afac00bbb880ac02a7b2b4d6b00fa9b1aeaab3b7b1aea5c4a6adaeb6a9b286b006b5a402bbadb7aca7b007b2b7b2aab6aaafaee6b0 +8eb007a6baa5bbb3b2a3bf86b002acb5ab80b202b0adaf86b013abb4adabb7a9acb3b0aea8acb5b1aeb6b7a3b1ac80b81998b7bc00aeacb3a5b4b1aabcada6bbb3a4b8afbaa5bfb5a1b5ae87b002aab7af80ab01b2b486b00700baa5b3a6afb4ac86b005b5a5b8b3a5b080b186b007b7abb2a9adb9abad86b002acb5ab80b202b0adaf86b013abb4adabb7a9acb3b0aea8acb5b1aeb6b7a3b1ac80b81998b7bfa6adb5ada9aab3aabcada6bbb3a4b8afbaa5bfb5a1b5ae86b007aebc00a9adb5a5b886b000a880b104adbab4a3b286b005b5a5b8b3a5b080b186b007b7abb2a9adb9abad86b002acb5ab80b202b0adaf86b013b7a6b1b3b2a7b5b7b0aea8acb5b1aeb6b7a3b1ac80b81998b7bfa6adb5ada9aab3aabcada6bbb3a4b8aeb1b7b3aaaeb1a99eb0 +8eb007b9a6bb9aa7baaea686b207b3b2a5b2bd9cc0ac86b22fb7baa6b5a2b2b8aeabb4b8b1acb0afa8b0afabc6a09bd7a7aa00b6c5b1c1aca8a7b3b0a4a8b4b3aaa5a9c08ab0c0a1c086b207baa4b5b9a6bc9db686b202ab04b280b702ba9db786b207adbbafb3b2aeb7a287b202a5adba80ac01bdaf86b207b3b2a5b2bd9cc0ac86b22fb7baa6b5a2b2b8aeabb4b8b1acb0afa8b0afabc6a09bd7a7aba4b5b3b1bdb1a8a7b3b0a4a8b4b3aaa5a9c08ab0c0a1c086b207aab404b8b7aabca586b207baa8b5aca0b2b8b586b207adbbafb3b2aeb7a287b202a5adba80ac01bdaf86b207b3b2a5b2bd9cc0ac87b22baab8b9a5bea2a4abb4b8b1acb0afa8b0afabc6a09bd7a7aba4b5b3b1bdb1a8a7b3b0a4a8b4b3aab5aca8aeb480b000b89eb0 +8eb007a5bfa8bfbaabb9ae86b007a8b0b9b392c0abb186b02fad9abcafb3a8bba2ada9b2b3a9b3bcafb6b0abaab1aea6b1aabeaba4b1a2b5bac4a2aac5b7a3a9b4b2b5aac9b1b8a39f86b080ae05afa4b6accc9786b007b4b0a8b1a3acb3ab86b007afb297acbfa7aebb86b007a8bea6b4b69fb2ab86b007a8b0b9b392c0abb186b02fad9abcafb3a8bba2ada9b2b3a9b3bcafb6b0abaab1aea6b1afb6b2b3b1a6acbac4a2aac5b7a3a9b4b2b5aac9b1b8a39f86b007bf9eaeafb0b2bca986b0079bbcb2adc0b09fad86b007afb297acbfa7aebb86b007a8bea6b4b69fb2ab86b007a8b0b9b392c0abb186b02eadb4aea9b7a3caacada9b2b3a9b3bcafb6b0abaab1aea6b1afb6b2b3b1a6acbac4a2aac5b7a3a9b4b2b6adacb6aca39fb0 +8eb006b7afb1ae9fb0b18b00030515b1aa8600020500078000070d00beab1c00060e8000010400800a060002070a00a9c280000210020580000101068100040a0401acb080000202060c8700021bafaa8100000b8700061400aebf010002870004020310afb288000602000d0003b4c68b00030515b1aa8600020500078000070d00beab1c00060e8000010400800a0b0002070a00abbf060017000b80000101068100040a0401acb080000202060c87000603b9a00008000f86000007800001b0af80000013870004020310afb288000602000d0003b4c68b00030515b1aa87000311000205800005b6ab1c00060e8000010400800a0b0002070a00abbf060017000b80000101068100090a040392d2a9a1bebdab9eb0 +8eb007a8a7adbdb1ad0003860107000900010499a60c86010100148000030206afb28000010d028000060f00100002000e800001b3b8800006180013001300048000011006800002ada8068200870105059aae03000180008601800001c7b1810000038601050300079f9d088000860105000107089fb08000860107000900010499a60c86010100148000030206afb28000010d028000060f00100002000e800001b3bb8000060c000e001200048000011006800002ada806820087010700b3a803110302038601050d00b1a4090180008601050300079f9d088000860105000107089fb08000860107000900010499a60c860102001002800002139fb18000010d028000060f00100002000e800001b3bb8000060c000e001200048000011006800007b5b2a4afc4b0a1bd9eb0 +8eb006bbbaa1aca2ba0387000504001900adbe880000178000050400aab4000a830000088000090400090015a8b80009078100010200800301000580000420adb7000681000007870003b3b400048000002487000608ae9a0c01090688000502a6be14001387000012800004b6b700030f86000504001900adbe880000178000050400aab4000a830000088000060400090015a8b88000010e088200800301000580000420adb7000681000007870002abbb0a8c0006b9bd0f000c0b0a87000502a6be14001387000012800004b6b700030f86000504001900adbe8b00010b0080b401030a830000088000060400090015a8b88000010e088200800301000580000220ada080b704adafa9a2aa9eb0 +8eb007a2b3b6adbda6a9bb86b307b0aba7b2a7b9abb686b32f99acc6a9b8b2afb7a4b1bbb9b0acaba8b3b5b8b5a7acb7a6ad07a8b5adb5b3b1acb1a8a6b5b4adb4bbaaa3baadb6a7ad86b305a9b0b5adb9a080b086b307afb0b800b5aab6ae87b306afb2a4acb7a6b286b307a9b2c0a4b3c199a886b307b0aba7b2a7b9abb686b32f99acc6a9b8b2afb7a4b1bbb9b0acaba8b3b5b8b5a7acb7a6adbaa7a3aeb1b9b2acb1a8a6b5b4adb4bbaaa3baadb6a7ad87b306aea5b0bfb9b8b586b307b8b6a4b2bda9a5a687b306afb2a4acb7a6b286b307a9b2c0a4b3c199a886b307b0aba7b2a7b9abb686b32f00afb6b1b9acafaaa4b1bbb9b0acaba8b3b5b8b5a7acb7a6adbaa7a3aeb1b9b2acb1a8a6b5b4adb4bdb0a6a8b1b5b6b99eb0 +8eb007b4b1a8bc00b1c0a886b007adb9b2aeb6aab1ad86b00cbeaaadb4a9b0adb0b8b0aab1b680aa20bdb4a5aeabb1b9acb9af09ada8bea8b6b0afaeb8b7abb0b6a8a6bfb4aab2afbcaa86b007b3b2b0acaebaaab286b007a6bbb400aab6a9b286b007adb5acb4b5aab3b186b007b2adaeb0afadb0bb86b007adb9b2aeb6aab1ad86b00cbeaaadb4a9b0adb0b8b0aab1b680aa20bdb4a5aeabb1b9acb9b2b7acb1b8acabb2afaeb8b7abb0b6a8a6bfb4aab2afbcaa86b006bca4b3bd9cb1a987b001acb280ae03acb1bcb286b007adb5acb4b5aab3b186b007b2adaeb0afadb0bb86b007adb9b2aeb6aab1ad86b00c00b8b4a8a6bda1b9b8b0aab1b680aa17bdb4a5aeabb1b9acb9b2b7acb1b8acabb2afaeb8b7abb0b680a806b1b7b0abb6b7a39eb0 +8eb00fa9b6b2aa04b2a8b7b5abaeabb6abbcaa86b107b4b1b5b4adafbfa98eb01fadb0b2b7adb69fbbb100b9a9adb4b0adb0b5aeafa9b5b2b1b3b1b4bda4afb1b68eb00ab7adafb7a8afa8baaeadae800002b3b5b086b105b4aab7b2abb780b1ceb007af01aeb2aeb3adb286b007acaeb3baaf9ec4a7aeb007af01aeb2aeb3adb28eb00704aeafb8a3b4afabc6b0 +8eb005afadbfa905a580b180ac05b5adb0aaabae86af07b1a5aaabb2b3a0b88eb00ab6baa6a2a6b9b6a8af07af80ae12adabbbb4a9b4afbda9b3b4aea8afabacbfa9b28eb008abb0c0b1bcb6baa5b180a904cc00abb7a286af80b2049ab8c0a9a5cfb007af01aeb2aeb3adb286b007bfaeaaa9b9c0a5b9aeb007af01aeb2aeb3adb28eb00700bca9a8bab0bdb2c6b0 +8eb00fb6aea1b400c3b0abacb1b7adafbaa4be86b207b0b2b9b4abb3c1a38eb00db2a3c0bdb9a9bab6b300050308058000000680000202040180000006800004bca7b1c29a8eb00eafb99aaca8bda8b4aac0a6b30200b187b207b4a8c4b590beb2b9ceb007af01aeb2aeb3adb286b005a8abc5a6bcb08000aeb007af01aeb2aeb3adb28eb00707abbdb5a9aea8b1c6b0 +8eb005afadc406a8a080b106b9adaaafb99f12870007adb49eb5aba8b2b78eb006b8af9db3ada8b08000120400af9cb1c1b3a8a7030200c2b7aea7b9ae03800001aeba8eb00aacb6c5a6bea89d110b0011800002080003870006b8afb1bbacaaacceb007af01aeb2aeb3adb286b007b7ad9dc0a0aab803aeb007af01aeb2aeb3adb28eb00700a7bcb7a0bbacbbc6b0 +8eb00fb4a8b200b9b2b6aca2b0bbafacbf99c686b0050008b3c1b2ac80b28eb017a7beacb9b0ac12000700b4a3c7b196b0beadb9b7be9daab780af05a6b2b5c500ab8eb00fb2a0a6b19d0709b1aeb00605000bc0a386b007b50100a6b7aac8aaceb007af01aeb2aeb3adb286b007b5acb6adafb4b200aeb007af01aeb2aeb3adb28eb007199daea6bab3b4abc6b0 +8eb00fa7bfa900b8ba9fb9b8b2ada1aab9a1b686b001b9bd800003bab698b78eb003b1a3afa7810011c9adb1acb3a2b4b6b7a9adabaeb0bbb5adb080b6049fb59bc7008fb003c2aec2098200060da9a5ada1aac086b004a8b1b5010280ae00aaceb007af01aeb2aeb3adb286b007bda9a8b6b396c700aeb007af01aeb2aeb3adb28eb0078e1caeb0bda8a6a8c6b0 +8eb00ab3aab10f9eb3b4aea5adbc80b702adaeb286b107a3abc300aeb2bcbb8fb00eb1beb20300b79eabbaaabba7acb1a780b50dbab6b0a6a9b0b2afa4b6bab8a0088eb002ba9cba80000ab8b1babfb3a7b0bbbca8aa86b107a9c0adaeb10100b8ceb007af01aeb2aeb3adb286b007a6adb8a3c6ba990daeb007af01aeb2aeb3adb28eb007c000acbbacb4b1bdc6b0 +8eb006adb4b000b6b4aa80b306abada7b0a5bcb086af07b50600bcb0a8b7aa8eb00cabb8aa00afa4c2a7b7b2a4b5af80b610ada8b6a7aea3c2b5ada9b2aeb3a7b3b7008eb001acb980000bafabc19faaa9b3b7a7a4b9b586af07b7a2b4abb1aead00ceb007af01aeb2aeb3adb286b007aac5acb0a8acbd00aeb007af01aeb2aeb3adb28eb007acb2b3b0a7afbba1c6b0 +8eb01faea8b304afaeb1b6b4adbfb1a7b4abaeaab2bea3b3bd9cb90a99c1b1b5afb1b48eb01fadb300b3afadaeb5000c00020004000504abc0a8adb1a3bca9b6aebaa4b8a9048eb016aeb000bc9eb2c3a3abbaaaaeb4acb9abacbba6b5b2a4b680b50ea3b0bf9fb3bda800bf9db4b6b0b8a6beb00fa3b7b6abb0b7b1a8000eb0afb2b3adb586b007afb2bab6a5b0bd01aeb005bc00bfabafb1e0b0 +8eb003b2b602a780ab19c4a4af9fabaeb4baacb5b2bd9bb8a1b1b6009dc1aaa5b7aaa6ab8eb010b8ab19a7baa6b3a9bfa7b1b502adc7a9ae80a60cb7b900109eb2b6b3a4b0bb9f088fb02600aab0b8aaa8c3ba98bdadaaac0007b10003b7adafb2a3abb1b2a1c4b191c20e00cc9fb7a5a9bbbeb00fb9b6b5b1a8a6b0bd0aa0b2a1b9b2b4a986b007b6adb1a7b9afa100aeb0079821a8afb0afb7a9deb0 +8eb01fa8b900b2c7a9b2b0b6b5b7abaaaba5b6b7a5b5b3b8000cb5bcb7a2adbaadb1bb8eb01fae0300aab1b9b0b7a4b5a90400bf9db4b7bfa3b50002b5bda3bba2bebfa7ba008eb008b403a4c4aeafae9db480b1000680000015800016aec0a1aac8a2b60104bf9eacb5c4a7a300baa4bdacabb2beb004aaa2a9afad80b708a000cbb0abb1acb6b286b007b5a6b3b2c0b900c0aeb007c700a8caa5afabb4deb0 +8eb008afb501bb97bbacb2a380b714a6abb5b1b3b0afae9d10b29ca8a4b1b9b8afadb1a98eb01fae00bca8afb9a2b2b3acb200b7abbbb3b794c800aba9afa6b2b3b8a8a7a60db18eb01a9d0d03a5a6c8a6c2a9acb3a4bda604b6bea6a2bab49eb70300aca080b80aafacaec1ad00ca9bb3c5a5beb00fbda1b0c4afa4b2b5169ab2c0a5aeafb786b007a9c2aab9949fc4a2aeb007b504ada1b0b3bca9deb0 +8eb016a5b900b8bda4acb3a9b1adafb8b9b1a4b7a71600a7afbb80b303b1b5aba680b700a38eb01f02a99db8b59eb0b9b6a0c201aabba5af9fbe00a8c2a7a6bdb5a4b0a7c0b900bb8eb027c5a500aebda5bea7b3bcb4b1afb100aea3b1bd9bbcb300b5acaec6a8b4a4b1adaaa90d90aeb7a6b5beb00fabbdbea1a9d29203a3a6b3b9adb4ada986b006baada4aac3b5a9afb007a300bcb5acb69fbcdeb0 +8eb01fc300a4aaacbbaeafbbb1adbaada2b7bca400a9c2adafb4afb6a5abaaabb7b5b68eb01f03a9bdb9b0a8c0a6b6aea400aeb1a8baae09179dabc6aea4a9c4b2b4b000a8ad8eb010a4ad00b995bfa6acb6a4ada8b200aeb7b680b214a6bd00b3a7b3b5a1b4adafb4b0acc200bcafb1a8b1bfb00ea3acb6acadb6b2bec1aaa4bbaab5a986b002a3bbb580b202b999bdaeb0070bb5a99fbcb4aaafdeb0 +8eb01f9c06b7b5aeafb7aeaba6aab7a5aac19d0caabaacaebeaca5b5acbab4aeab9faf8eb01003a5bb96aac199c1acbb00cbb1aab3abba8000000a800008beb0b1a9a8b3b205b48fb016afb600aeb5a9acc2abb7b4a8cd00ada7b49facb900bbb080af0e9fb7a7bbb6a1b2bb9d01abb4b0b4b2beb000b880b00bb4aea8acb598b3a8a6b8a7b887b007b5acb79ac0a7c1adaeb00700b9a7beb1aca7b8deb0 +8eb006ba00abb1afbca280b416b1afb5b1c1990a00acb1aab6a8adbcaeabb4a7b1bfadb48eb015b300b9b7b9aab8a3b59f16a9abb7aeb00400b9acb60280af07b3abb8b100a9b7ae8eb027b8b0a500baabb7a6abaeb8b4990aafb7aab8b600bdae0007010600aeabb0b2aeb1ad00b1b0a7b4abbeb00fa9b1aeaab3b7b1aebca8b7b6acb5b1a786b007acb5a9baa9adb4aaaeb00700b8a6b6afa5bfafdeb0 +8eb011b5010c0007000400030005030600a303000e80000b1300aba9acb4baa8b6acb1ad86b080ae25b7aeb2b3a3acb00009a7b4b6adb1aa0bada7b6b0aab700bda9b40009bba5b0acafb203bba0b68eb002b2b8b580000ebda9aeb2afadaf00b1aeadaeacb00b80ac03c0acb80081b701a8b880ab0e09afaaadbaa0b7afb3b2a5b8b3a8b1feb096b006a9b8a7baabafb180b306b1b4b2afaeb5adc6b0 +8eb0050006a5bbb9a580b010afa4b09db6a9c5a8b5a0c2b7a2c0000e0780000004800001cca686b003afadb5a980ac02b6bfb380b11c00b2a6b6afc000b4bdb2b7baad01b3ad00b9a4aabfa8b5b700b1a2c3a08eb00ca7a3b2bc059cb9b7abb5b4b9ab80ae1eb6b8b2ac00aebc950c00bac290b5b7a9b2bc00b1bbb2afbbafaeaab0baadb480adfeb096b00caab7aab2aab2a6a4a9b4a1b3b880ac00b4c6b0 +8eb00bb5a6c3a9a4aebdafb7afb9ac80bf1191bbb7b5a7b99ebaa7afabb6aebaa6b000b986b018acaab6b2b7a5b3a3b2b0adb3000c00b1ad00b6b8a0a5b5a6ad80000cb6aabab29ebe0500b3b19fbfb98eb02bc0a5b6b0a606bda0abb4a9b4beacafa8abb6b0000e001100b4aca8b7ada2c3a9a60dadb0a6b1a6afb6bca4b880b501a2bbfeb096b00fb2b6aba5a9bfb4bd09abbcb4a4b2b5aac6b0 +8eb00ebdaca2adb6b3afa2acafadb5a4b2b880ad0ea2b2b3ba9ecda6b5acb29dc1baa8b786b000b980ab17a7b6abc6b1c29bb8b0069db2090700afadaeb8a0c4afadbf80ad0ab4a9c700adb3afabc1aaa28eb02fabbda9aab4aa00bcb3b1ab9facb6beacaeafbbacabaca2b3afa7c0bbacb4b1b600afb0b1beb0b6b5a0c5aba7abb8aaadfeb096b00fabadb6b2b1b39fa700aea9b4aeb0adb2c6b0 +8eb007acb3abbdb2a2aec080b315b4b9a1a5cea1b4bab1a3bcb7a3b1aabdadb9a4b8aca386b01cafabb0aab0a5b2aa97b30400b1b3afb2acad00010f002000b4ac0c0008810007b4b6a5b6abaaafb88eb02fa8afb5b9aab3a80003a2afcda0afa8b6afadacb9a7bdb4bfc2a4a6acbaa4b500c3af9fc39ea9aba9c2afa9bda4afc39ffeb096b00fb4a9b2b0acaeb5b900aea9b4aeb0adb2c6b0 +8eb015b1b4acb1afaeafa7b3aabbaeb7abb0ad9ebdaab7ad9c80b407b5a3a5c2c4a1b7bf86b00ba4afbab2b0b3a6bdc50da7b480b119b59eb8b5a8b8adb1a2b400039dc0b3afb1c0abb1b596cdaaa3b68fb021c1aea2accaa8b400120286c5a6bfa6baa5aeacbbafae99a1c3acc0b4b9b10699bcba80b206afc1b100a4bcb480b101a6c6feb096b00fb9aaadb0acb0c79a09abbcb4a4b2b5aac6b0 +8eb017aeabb8afacb1b6acb0a7b4abbab2a7b5bf99bab0acb5bca980b805bb98b3afb1a586b080b525b0a5adc88fb500b1af9fbdb1a2bfafa1b9b8aeafacb9b3aac3b79eadb5a9b0aebdbba0a3bab38eb01baca7b0b3bcaeac00a6adb6000100abb1b7a7bab1bc9bbac1b5be95aa80001101a9c694b7a2a6baa3b30c0009b3a2baafa3feb096b00ca8aab4c0b5a89f0ca9b4a1b3b880ac00b4c6b0 +8eb003bc9fb4ad80b019b3aeb5b4abb5a8adc0a9acbbacafaeb5a4b7a8b5abb5b2adb0b286b000ad80af24b0b3ab0901b4b7afb7acb3b7a7abc3ad9ebda3c4a3b6aaacb3aeb9aeb2adbaae9ec2a9b8a78eb011b6adb6acaeb500b7b8acb4aab3bb00060001820013040005001800aab3b4acb1b5a4c0aeb3adaea9b480000304aeb3b5feb096b002b4b2a780ac0ab8bb00b3b1b4b2afaeb5adc6b0 +9eb01fb9b0afb1b2aaabb1afbca9beada6afb2b4aabbafa4b9adb3abaeaca6bd00b7a98fb080af0ca9b9afb4aab0b1aea7b8baa7b186b017acb3ada8b7b2acb3aeb3a9b6b1a900acadbca3b8b3adafb48eb017b4b2af9fb8b4b0afb0b1a7a8b4afa9b7b1afb0b4bcafbcabfeb08eb007b2b3aab4a5b7a800ceb0 +9eb00eaaabb3a8bbb8baa9afb0a2a3b5b4bf80a808b7a6adb9aeaaa8b3bb80020300a8a9bb8eb00fac0aa9afa9b1b2b7b2b703c79ca7b4ab86b017acb0b1b7a6abadb1b7b1b6a9b906b1b9b7aab4b8a4a6caa48eb00ba7a4bdbaab99b6aab4afb9ba80ac09b4ada4bca6ada2adb2b4feb08eb007ada9b9b5b8aab907ceb0 +9eb008b9b4a3bba1a8a1bbab80b908bcb5abb4afb2aab5bb80a809bac0aa00b4a4b4aeabb78eb003b100bfae80b209b9a2b4ad9800bdb7b2b886b017b7adabbda6b8b6acb0a6acae07aaacb0a4b8a9bdb1b7b2b48eb007beb3a7b3bbb2aeab80ad0db5abafcf9003b4abb5afcea6acadfeb08eb007b2b6adaba7aaae00ceb0 +9eb01ba1b2beb0b5b7b9aab1ab9bbbaeb3a7b4c19baeb7afa8ae9a10ac9ec680b201c39c8eb00fba00afbca4b0aab9afa5dc00b0c1ada786b000a980a70cafaeb7b6b4b1bca4bb00afbead80b405ac9fc8a09daf8eb011a500c5a3aab2baacaea8b7b59ca7bfba01a780b10396bcb4bafeb08eb007a9a8bfb0bab500b4ceb0 +9eb01fbcb6a2b0a8b8acaebcb5afb2a9adabb8abb7aeacab051005a1b6b5ae9ab7aeb98eb00da2d0ada7bcb0b7a5b1b09f00a4ac80ad86b017b1c0bfadb7a6a5b4b1b0b400acbdadaabea8aab2acb5bbb98eb000c1800014c9aeaab0adb5aca7b1b9ada3a909b8acb3baa9abadfeb08eb007b4b6a2ada6ba02a4ceb0 +9eb00ca7afb7b2aba8b0b8a5a8c1a7b680b410a8b1a8cca500b4a5b0adc4b7a2c0b8aba48eb008abb69db5adaea9bbb180b80400b9abafbf86b017a9afa9a6b7b5aeb5a7a907b8c394bea9a0b2c1aab1b0a6ab8eb012a6b50697adb3adb7a0c1b99fadc1bab0aa00bb80aa02bcb3abfeb08eb007b3a5b4b0b89802beceb0 +9eb008b4aca80911001e0005800004060005000c82000017800008020095b1b8b19ab6ba8fb00eadb3b5b6afb0a6a9b6a0bca8b6b0ab86b006b7b4b0ca9bb5b180ad00178100030a000517810003bab9b5ae8eb017abbd00abc9a9b6a6b3a8abb7b3a7a8b0aeb4aabab1acafb5feb08eb003a9aca8b380ba01b4a2ceb0 +9eb08000090ca0a9c796b9a7bea8ae8000110bae0100aab5a0c3afadb401000aa5b0b7a58eb00fad08adbba6b0aeb3abb3b2a6b5b3a8b386b005adafabb10002820009a9bdb1b6a4b8a2c2aead800000048fb014aabaa7089faab6b2b8a6b5bca6afbea9abb8adb89e80b300b1feb08eb007abb6b9aaabaea9b6ceb0 +96b027abacb4a2cfa4000106aeabbca2b0b1bab7a3b8b7a8ada80400b2baacb0b6b8a4afbaa5b700b9acb38eb017b200b1b6a1b6b2acbaa2a3b8b3a4b7afabbbabb6abaab1038000000580030100038000150206b2b4bfa3b2b4b1afb5b1c1990a00b5afb3b6acad87b007b7b0b404acb3a0b986b007aab7b0a9bc00b8b7feb0e6b0 +96b006b7c6a8b90004b380ad1ea4b4b0b4be9da4a6cba8b3adc4b89fc3b298beb0a9b6bcacbab5a8a70004a58eb000bb800014a5beaba7b4a1c7bdaeb6b0beacb7aeb1a7b208000380ba1da7aab0adafc2adaaa1a3b8a6b0c2aba6aab7a5aac19d06adacaea4bbb0b386b0079db3b4a1baa5c2a786b007be9fbcb1a61faf9efeb0e6b0 +96b00baa9cbc00afb9a9aeb4b80003800001130580001506b8b39bb3bea3bbbf00110e9aaaaea1b2c3b5b003b78eb007aab403ba9fb5c49b80b103a605a5a080b602b592cb800022bab4a4aab2b6acb6b0b3a2b3b4c2b9a7b8b99dbbb1adbaada2b7bc009db7c4a6b2a8b886b007bfacb1a9b5ac00b186b004a9b2b4aab6800000c2feb0e6b0 +96b023bdbe00b2b8a8adb3a4ba00b0a50baca3bdaa0200acb7aeb5b10100be9aaeb9b7b2c89e9b80b201a5008eb011aab5b4a3b3a6abc0afacb800c1baaaaea3c9800023abacb8aeb7a5bfafb6a0b8b7a2bda2a9b40800c3a9b1adafb8b9b1a400baafa5b8adbba586b007aea0b3bcaeb000b586b007b4a5baa9adbbabacfeb0e6b0 +96b00f9b000ba9afbab1aebb9ca6be00b2acbe80ae0ba80c0aacb4a304abaebca7b580b007a5b2afb9adb7bf008eb017baafa4b1c4b8a9adb2a9c500a6a8bab1b600b3b2bc98adb784000a0fa2c0aabba602ba00a7a380b70ca6abb5b1b3b400b1c1a0bba2bc86b005adb2bf9ca6b6800086b007adbcb1b0b3b89cb9feb0e6b0 +96b00cbc00b0acb7aaa5c5b6a6caac0080ba189ca4c3a0b400b3b10c00afacb2aaa9afadb3b1b0b7b394bd008eb009aaa0c6a3aca3aab9abb380aa02beabbd800004b4b1b8a8bd80001f06a8afc2b2a600b9a4b5a9119ca90dadb6b5b7abaaaba5b6b00ea9a2b2b6b5a986b007bbab9cbcb4b5b20086b007a8b5a3aea6b9b7a9feb0e6b0 +96b0270898c5b1a2afb6a2a5bd98af06bea6b9b1b9b808b2a70300b1baa3b1beafbda5b6b5a9adafbd99048eb037b2a705b3b2b7b6a8a7c4a9b4afbc0001afbba6b4aeacc3a809aab1afabc500adbda205a1bdbca8b7af9fabaeb4baacb5aa00b4b8b4adacaf86b007aaacbfa9b1aeadae86b007b8b3aeb8a9aebfa6feb0e6b0 +96b00700b1adacbbafabb780af1bbaa600acaab3afb400abb0b706b3000a0001a4b3acb6aaa9bfa5b7af80008fb013b700b2acaeadafbb9eb5b6a400bfadb0aeafacb580af2000a8b3b8adb0b100b7a80ba7c6a1b0afb0b4adbfb1a7b4abaeb700b1b3a2bbafb286b007abb4a8b7aea6c0ad86b004abb6aca8bd80a900b9feb0e6b0 +96b01a08a8b4a2bdb1aeb6b4acb2b005b8aca9aa00adb9a7b300acb2a6ba810009bda8abb5baaabaa304bb8eb006b1b301a9b6afa680ae2eafada4a80baeadb4b3a7b9b89fac00b4abb1b2b400b2ae00bdaebda4acbcb0b7a8b0b7a5b9aeaf03b8b2aeb2baa4b98eb005b1a4b2baadaf80ae86b007b1b301a9b6afa6aefeb0deb0 +96b01000c8aeb0a7b2a4a7aabaa102a1a5ab0c0080b714c198bb08afaebca2000200a8b2bda1b2b0a505b4a08eb022abb00eaab7b4afb9b0c1beb70f92aab9a8adbcaaa7cbb200b1a8b4ac00b3b1b200a7ae8000000c81000ebbaab0b1a5b0b400abbab0a7b7a7ad8fb006cda69fb3a2b9b286b007abb00eaab7b4afb9feb0deb0 +96b0170a96c6b1acbabbb4b0b8a9bbc1000700aeb2a897c7a8a20980000d0a00b7b5abbaacb6abba0900bdb38eb037b3ad00a1b4b6aba3b495b7a200c2bf9fbdb8a5b4ae9cbc00b8b5b7b401b0a0b500c3acb3b6aba4070aa6b3baaeb0bea219a5b4b3a9bbb6b78eb007ada6b7a9b7afb8a586b007b3ad00a1b4b6aba3feb0deb0 +96b00900029dbba5aab3aa000281001a0db6abafc09ec2b4afb7a9b6c792bbabb2b6a4adb5b100bba8b3a48eb019adbb04baaca5b2b5b1b5b1b200a8a9b5a6aab7b8b2c1b300a5a9800004b9b3c0a9bb800014aea50d06b8b0b1abbaa0bba00f95bfadb5abaea9ad8eb007bb00afc99cb9a2bf86b007adbb04baaca5b2b5feb0deb0 +96b027af0008aab9b0a9bbc3b1aeb6a6a8b4adb4aab6b9a7a5b0b2ada0c0b4adbb9fb9af0d00aca8ada8c28eb003adb000b680af2fbcadabbb9db4c600b0b3afc0aba5afb000c2c900b7bfa8a7a8b5a6b7030d069faba1a4bdc09eb1ae00aac1bda4aeabb080ae8eb007adc3ba9dc0abbe9d86b003adb000b680af01bcadfeb0deb0 +96b011bb9cb60001b8a5b0a2a5caa3b1bdb3b8a4b580a50cbbb8b1b3c0a7b9a89dbcb5010080a804aecbb0ada68eb002b3ac0880af11b1b69fc09ac1af9f0305a6b1acb9bda5afc280001712afbda4bab0b3afbbaba9adb0c8b5b4a09fb8b6bc00b8a480af80ae02bbbab28eb005ada6a59fb9a580b586b002b3ac0880af02b1b69ffeb0deb0 +96b027aab9aeada5050900021600050aa0acafb3bbaca8bca4aab3a5afb2aa110001a9abc5a3afb0ada0bf8eb02baabf93c5aa9eb1c0b4aeb0b5a7bc0100b2a9b7aa040005a2bab1a3aaa5acc6a7bb9cacbea3b8b6a2bea4b5ae800005b3a6afb9bfb380b001a8a58eb007aeb8b5b0b8afb3a986b007aabf93c5aa9eb1c0feb0deb0 +96b027acb9acb7b6a9b9aaa8a9bdaab300030100010008000c00030400010e99b5b2b4b3a2bfb1aeb4b6a68eb019b1a9bea6b2b5ada9b2a8b2afb5a6b0b50100b5b3a6b8aeb4b0b180b314bab1aeb2adbcb0acb9a6aeb6aa000300b4aeafb3b580a704aab5aeaabe8eb007c095b5bfa4aeafb186b007b1a9bea6b2b5ada9feb0deb0 +deb01facb4000604a6aaaeb1acbaafadb2abb4afadb4b5a7ae00010a99c1b1b5afb1b4feb0feb08eb0 +deb00aada6b3a5ae0c060500070080af04bd99b3b20380000b1303acb19dc1aaa5b7aaa6abfeb0feb08eb0 +deb00eb2c7aaaeb6a5acaeb3a1bd0007001780000eb8b5b4b3a4afaebcb7a2adbaadb1bbfeb0feb08eb0 +deb005a2baabb4b5ad80b001aeb580b113ae9cb3b6b3b1a1c6a6b7b6aea4b1b9b8afadb1a9feb0feb08eb0 +deb013b6adb7acbe96b0bbb1b3a4b0bdbbbca5b0a2c0a680a706b3b5b3b1b5aba680b700a3feb0feb08eb0 +deb012adb2a5a7abc3b9a5b7a8bcb6a4b89dc1b8b6a980b80ab3aeafb6a5abaaabb7b5b6feb0feb08eb0 +deb01fafa2bab0b8a1afb2abbea4acb5a8c2a2a9b4ad9bb8acb5a8b5acbab4aeab9faffeb0feb08eb0 +deb01faeabb7ada9b3b6adb2aeb3b2aab9a9b3b6aab8b7a5beabb5aeabb4a7b1bfadb4feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +96b003b4ba0001840001040380000002800006b0b8000206000887000408b4a203088a000401bbaa000a880006070010b1a7000586000601000a000dabbd88000616000c0008a6b48800070300020005aea6178100000282000102078000090700b7ab0d0007000f02800001040380000002800006b0b8000206000887000408b4a203088a000401bbaa000a880006070010b1a7000586000601000a000dabbd88000616000c0008a6b48800070300020005aea6178100000282000102078000090700b7ab0d0007000f02800001040380000002800006b0b8000206000887000408b4a203088a000401bbaa000a880006060006a1b4adb49eb0 +96b000ae8000000d800000108000000580008008080007bc9a0016000103880003afa4070580000002880005bb9c0104000a8700040700a4ae028800000d81000397ba00088600060d00010005aeb987000105048000040203a5b90c8000000480000603000301030015800001bcb08000020c05108100000580008008080007bc9a0016000103880003afa4070580000002880005bb9c0104000a8700040700a4ae028800000d81000397ba00088600060d00010005aeb987000105048000040203a5b90c8000000480000603000301030015800001bcb08000020c05108100000580008008080007bc9a0016000103880003afa4070580000002880005bb9c0104000a8600030c0800c280b201a4b19eb0 +96b002ad0018810000028500041aa8b5030c800002060001860003c6a1020780000009880004bdb50600128800800105bba001040602890004c4b90005038600000280000417acad00018700000f80000207a9aa810004110700060280000209001a800004bfae1200178000020a00028400041aa8b5030c800002060001860003c6a1020780000009880004bdb50600128800800105bba001040602890004c4b90005038600000280000417acad00018700000f80000207a9aa810004110700060280000209001a800004bfae1200178000020a00028400041aa8b5030c800002060001860003c6a1020780000009880004bdb50600128a0005bba3b1b8b4af9eb0 +96b005bbaeb0a4babe81b50ebaabadc6bca3a8a3b9a8b8b597c5a186b003a6b4b6a880b101bd9d86b007b3a79fb4bfa9a5ba86b007b6aba2bebca4aca886b007a9caa798b3bbb59f86b007a8bcb296adbfabb286b009c291c1a2a4bfacbfb9ad80a523afb1acb4a8a5bfa5a9c4a8a98fd2a19ec0aaafaeb5baabadc6bca3a8a3b9a8b8b597c5a186b003a6b4b6a880b101bd9d86b007b3a79fb4bfa9a5ba86b007b6aba2bebca4aca886b007a9caa798b3bbb59f86b007a8bcb296adbfabb286b009c291c1a2a4bfacbfb9ad80a523afb1acb4a8a5bfa5a9c4a8a98fd2a19ec0aaafaeb5baabadc6bca3a8a3b9a8b8b597c5a186b003a6b4b6a880b101bd9d86b007b3a79fb4bfa9a5ba86b007aacbacba9ea8c0ab9eb0 +96b006aab0aac6b1a5ab80a70eafb5aba3aeb8b2a7b7adb9a4c7a0b786b207baafb6a5bcb2a5bd86b205b6aac2b1adc080aa86b207acb3b1b2a7aec5b786b207b5a8b5baafaeb2b886b207abb9adbabda7afb686b20ca0b7bbacb8a6a8a5adafabb4b980a820bdc0b1abb4b1acb5b9c0afa2b3bcb5b4ada7afb5aba3aeb8b2a7b7adb9a4c7a0b786b207baafb6a5bcb2a5bd86b205b6aac2b1adc080aa86b207acb3b1b2a7aec5b786b207b5a8b5baafaeb2b886b207abb9adbabda7afb686b20ca0b7bbacb8a6a8a5adafabb4b980a820bdc0b1abb4b1acb5b9c0afa2b3bcb5b4ada7afb5aba3aeb8b2a7b7adb9a4c7a0b786b207baafb6a5bcb2a5bd86b205b6aac2b1adc080aa86b207adaea2adc0b89dad9eb0 +96b002bca6ac80aa12acb6bec3a2aac5b7a3a9b4c1a5b7a5b2a8b5ac86ae07a3b0acc194b3b5a586ae07a9b9aba99fa0bdaf87ae05b7a9aabea99487ae07b4a2acaeb1b0a1b089ae04a1a7b8b1a787ae2ec2a0c1a1b2c4b6aabcb5b6b5a9acaba5a7c2b5a8b4aba8aca6bfb89aa9baabc3a2aac5b7a3a9b4c1a5b7a5b2a8b5ac86ae07a3b0acc194b3b5a586ae07a9b9aba99fa0bdaf87ae05b7a9aabea99487ae07b4a2acaeb1b0a1b089ae04a1a7b8b1a787ae2ec2a0c1a1b2c4b6aabcb5b6b5a9acaba5a7c2b5a8b4aba8aca6bfb89aa9baabc3a2aac5b7a3a9b4c1a5b7a5b2a8b5ac86ae07a3b0acc194b3b5a586ae07a9b9aba99fa0bdaf86ae07adbfb4b0a3a5bdb69eb0 +96b000a980b914a4bcb9a2a7a9b5b2a6aab6b5ada2b2b4bbada9bcac86b200b480b604a4c8a9b3a986b207b0afb0b3c4bda2ac86b204b697b3b7a980c087b200ad80b800b580af01b5ae86b207b3b6b9aeb0b1a9b986b211bc9ab6a0b4b1b99ca8b1a3a9afb2beaec3a180ae1badb4aec5b4b3a2b7bfa8afb4a9b5b2a6aab6b5ada2b2b4bbada9bcac86b200b480b604a4c8a9b3a986b207b0afb0b3c4bda2ac86b204b697b3b7a980c087b200ad80b800b580af01b5ae86b207b3b6b9aeb0b1a9b986b211bc9ab6a0b4b1b99ca8b1a3a9afb2beaec3a180ae1badb4aec5b4b3a2b7bfa8afb4a9b5b2a6aab6b5ada2b2b4bbada9bcac86b200b480b604a4c8a9b3a986b207b0afb0b3c4bda2ac86b200b480a404bbc9a8baa39eb0 +96b017adbfa0b9aea7afb9a9bbaca5bbb2a3b8b4b8a8a2b6b8a1b386b107b7a4b3b49db4aaba86b107a8bba8acb3a6b1b686b101acb980b203aca5b0ab86b107b3a7b2afabb4afad86b107a8b1a4b8b9a9b6a886b12fa9b2afb8afb0a4b7b3b6adbab0a2b5ada2c4a2aabfacb1a9b0afb9a9abb6a7b1a9bbaca5bbb2a3b8b4b8a8a2b6b8a1b386b107b7a4b3b49db4aaba86b107a8bba8acb3a6b1b686b101acb980b203aca5b0ab86b107b3a7b2afabb4afad86b107a8b1a4b8b9a9b6a886b12fa9b2afb8afb0a4b7b3b6adbab0a2b5ada2c4a2aabfacb1a9b0afb9a9abb6a7b1a9bbaca5bbb2a3b8b4b8a8a2b6b8a1b386b107b7a4b3b49db4aaba86b107a8bba8acb3a6b1b686b107a9b2bda8a3b79cbf9eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +8eb080b115acaeb3ada7aeb6acaab2b4aeb8abb2a8b7b8a9adb2b486b019b8adaaaeb4ada6bda6bdb9a2b8b99eb7aab8a8b3afb4adafaead80b409b1afabb0b1a5b2afaab280b01fa9b1adbca7abb2b6abb3aab6b3adb4afb2a7b5b2aeb5abaab5abb1b7aca6afb5feb0feb096b0 +8eb00ab3afadaeb3babebdb1b7ae80ba07a2bbaabea4acbbb580b300af86b009a4b1b4b3adb8adaebea680ad0aa5b4bab3b0afb3b0abb4aa80b20fb4a2b3b4a5b8b5b2baaeb8b1a5b6a7b880ae80b004baabacadb480ae13c3a8a7bda8bbb8adb6b1aac3aea8acb3b4b5b2a8feb0feb096b0 +8eb017a8acbcbaa8a9ae9fb4a9a6a2b0aabab8aeb4b2afaea8acb986b01fafb5abb3a6bcb2a4adb3b2b5b3a3a2b1b2a4b6ada8b1abb1a9adb6a6a9bdb0a880a903b1acadb680b411ada9b4a8afb4a5b1adb0bca3b1acadabacb780a900b480ae05b3b7b5b0abad80b400acfeb0feb096b0 +8eb017b9abafaca1b9c8aeafa7c0b1b8b3a1aea7b8b0abb2b6b4a486b021b6b1a7bb9babb7b6b1b59fb3c7b2adafb3a8b2b3b1afb6afb0b3b7b0b1b8b2acbab480ac23afaba8b0acb6b7acb4aeacb3bca2bbb5a7b9c0a9b8aeadbbafaebca3b0b5b3adacaaaeb8feb0feb096b0 +8eb017b3a3adbab5b28c46324e3135333f88b98c612e365887b7b286b01d9ab3bba7472e44373b3c52795661b6acb0b2a5b6b4a8b4a9b3b49abbba9880b327ac924839424c88afaebca8adb1aab3a6bb9ea2bcb0b3afb3b0aeb3b8adacb8b0a5acadb3baada6b6feb0feb096b0 +8eb001b7ac80ae13aab7bdaaacad036db7acbe56001680a31a0084b286b047c2b6a8aaabc09e0777a0afb46a5cbab0b1bfa8bab1aeaab9aeacc1a9abc3adae63002e838c2e008aacb5aab9a4b6bfb5a2c1b2afb2a6a8b0aeaaafa9b3baa9b2b4b9acabbab2a8b5feb0feb096b0 +8eb017a6b1bbb6a7a3adb7adbc007ab2a49d2a33bdb9aaa74b4fc086b0029faabb80ad3bb9ab007cb9a7a9897fbe957b8b858675916ab0b5ada66d74afa89f2a3dbcafaea6376eb58a87977fc29a887a93b3b19d6fbcb0906eb5b17a8881729080b404a4afb2acb6feb0feb096b0 +8fb016afaaafb9b4acb0b3a80078afbc6a0078b3a9afb6a9b7ab86b046b7acbbabb1adac016eacbbab3d39ae760511221300360068aca20017210b907b007da6b1b7aebba4b236203236a834003d0066ac6e02b0ab3601b0af0005320a348fb9acafb3acfeb0feb097b0 +96b05cacb60076b7b5770082a8bc6d75796cb7b3b1ae8d797a7276b6a1b6adb7b8a90074b4b6af363bac7800b6ab0087ac2a3eb24816adbd1647770087b9af6a7f7675bc2b1986b8930087b83e2da06c00b0b13c03a4ba0020c07a0e65b59bbe80ae00b1feb0feb096b0 +96b021abbc0072a8ad740067bbb470795706b0aeb5b1846c787677b3aabbafabacae0474af80aa3b3740b37004b0b8006fb34438b30015363415017208649ead72745003ab353cab9d310aaf9b8c07657017a2ac3500b6b5037a91c53b37afb7afacb7a9feb0feb096b0 +96b017acbc007aacb57b0050aea9aaba7700afaeb5a76740443c3680ae45b7b3abafb80076b5aeb1393eb97204a6af006ead3439b0002b85697577800453b9c9a8b37600a74633b4c24500a8b873007a7b00aac04409afa9007bb5ad3d27b2bda6aeb4a9feb0feb096b0 +97b00dad0078adc09d3a1582b7af8c001380b304b6b1876f75806e80af06abb3afb5b2007080b53cb63734b07500bcb40082bc2c42b7411699c1673fa92b168299ba860004b0472daaa9810494b44e37947800afa80e00b2b40324b67d1958baa8aeb3a9b1feb0feb096b0 +96b05fb3a30f799fb5bd9724002232005a00adb0abb5b0b1b8b2bbb2b4abb1a9ada80d76aeadb14847a97b00b2a7036ab03c37afa90020350050b0a030003a20005602bb3338c0a7ad2200320259b8b5070b343500b2ad000b221f3297b79fb8b1acb2feb0feb096b0 +96b034b3b065a3a8a6b9bab68f7f6d94a07fbbb0a2acb1b4b1a4adacb3b2b3a7aeb5699ab1aab67d85b69473b3b77493b68d85af9eba7c5d80a928b2b1a78e647c96a579a78187c1acaabe8f7298bfaba8ad75848e65b2bb00796c758ab3acafb8abb9adfeb0feb096b0 +96b01fafb7acbdb7a9adaea4b2a6a4c1b4a2abb5acb5b4b5b7adb5aaadb4b2adb6b9b180b506afbda8b5baadb680ab33bab2a8b0b5bdacb4a6bbbaa4bdb2b0beafb3afa7adb1c3a7a8bca4b59eb0b1adb29dc2afb8a8babeb6007cb1adb8b3abb5b3adb4feb0feb097b0 +96b004adabb4a5af80b408acafb8b1b8a9afbaaf80b004b8aaa7b3ae80b415aaafadb0b4a3b6b2acadb6acb8a6b1a5beaab1b2acb880ae19b0b6b1afa6c59fb6a5aeb0acb4b3adaeadb0b1a5b9b1b4acb8a480b902a6b2a880af0daca3b5b2adb4a9b1b3a9b1b4a2bafeb0feb096b0 +96b013b1acada2bdb3acb5a9b7a5bab1a8aebcb1aaafb680b216b1a7abb5b2adb3b4afb1abb2b4aab4ada6bbb1b2aeaaac80b281ae07b4b1acb4b7abb3ae80b411acb5b8a3b0b7acb7ada2baafabb2b4adaaad80b10fadb5b4b1b3afacb2b0b1b3b4b3b1aeacfeb0feb096b0 +96b02caab7bfafadafb0a4b7afb1acadbba39eb8aeadafacb0b8bbafb4b2aeb0aeabafb3a8b1aeaab9b89fa8afb5b4b181af00b680a81eb1aeaab0b7aeb3b1acaaa8aebcb4a6aab2b7bab1a8b4b3b0aeb4b9b5acafae80ad00af82b006afaeadaeafb2b3feb0feb096b0 +97b00faeadb5abacb9bab19eadbab4a8b0c5b880b301b5b080a802acb3b280b105b0adaeb1adb080b806a7b0bbb5adaeb180b503b1b0b1b380b500b380b103aea7abb780b014c0baabb0c0abb9aaa6b0a4baaaafb1afaeafaeacb580ad0cafadb1b4aeb5b3b1afaeafb0b1feb0feb096b0 +96b016b3b0a6b3b1aaa4a7abb8aeafaaa3bd9ea7abaeb3b7b1ad80b402aeb1b480b11eb5b4b1b7a0b0b8b2a4adb7aea7aab0b2b1afabafadaeb5b7b4b6bdada6b0b180a40bb6a7a8bab6b4b3a9bbb2b3b483b30ab5adb0b3acaeb2aaaeb0b180b202b0aeadfeb0feb096b0 +96b003b7afaeaa80b555aabcb7b0a9b0b4b9baafb2bbb3aaafb0aeb8b5acb1b5afb3b5a7aebba3b4a9b4bab8b3b1aeabadafaeabb3afa7acb2a5a4bcacb0bab2a7bdc5a6b6c0a9abb8b1b0a8b8aea6a9b2b5b1abaeadb2b3afaeb0adacadaeaffeb0feb09ab0 +96b019ac393a3941354f9cacb5ae692e402f628fb4b9acb1afa5aab5ad80b21ba9b2ae8d283f32483271ada7abb8bdb5b1b2aca067a4bcafb3b7aeab80b00fb4904724364b83b5a9abb3a8b5afaeaf80b20faca9aeb6acb4b0afb9b7b0b6bbb8b4b080ae01b0b1feb0feb096b0 +96b007ad0172b5ae652b1f80a72c290642af6c103b89b0adb8bbb1b4b3adb4afa7b6ab7815a8bfa42e0349bdabb0a9a0abb8a27c006db1afb2b9b180af26b958002d9888350f75afb5b7b0aeb7b0afb2b7b5b0afb3aeb8a29bb8b4a2aeaaabaeb0b1b0afaefeb0feb096b0 +96b05fb90080acafab6e005d850074afadaf8c2f8db9abacafaab2b0acb5afa8bdaf7100ada8c1ac340496ae9c7d759ab89250055296b4a26c6aa6af903738a5bf9db12877aa8986988ea8ad8a768cb0b69776abb38d81aaa58998768295a8b3b6b2affeb0feb096b0 +96b002b5007c80af01b9a5803f043807aeb7a080b206b1afa9afb1adb380b424acabb4adb7b37603b0aab5a4bc026c9f02302b08909427082287a2003424029f710c68b9a780af04aeb7b23824802b0cb51c0b390066a46e06b0b8310080b00706002616209dacb1feb0feb098b0 +96b01caa0784aba3b6b43b2840039fb69f73818088afb7b6a97c6e7d758bada980ad407600abaebca3ac00858d39b8b40073b168006fb37c3ec4a70071700081adab737b726bb6381a86b4930096a05921b17f00afab3103abb10031b3782268afabacb8feb0feb096b0 +96b01cb20069b9b7aaa1424f2f02b3b6a16771193aa7b0afb5737a6f648bc0b780b2407907b2b1bab3b60073b23226000476ab930c80afbe261e08006d810069adcc746a5211a64433aac02300b3b76a00666f00b3ac4009a4aa0076b9af3440b2b6b0a6feb0feb096b0 +96b057a50474a9b0bd8811363c0089aaa7b7b83a46b7aca8af3f35443d6ba5a3a9ac6e00b0a4a3b06e0080240482a7027bb55e0063b8210079be00777c094aacaa95c46606b0343ea8b04705ad997e01817808b3ac3c02b7b9017080b5052c36a0b1b6b3feb0feb096b0 +96b044aa0980b6b7a74b086ebf012fbbb5aa450127b3b2adbd697b76738dafacbabb7700b9b7acaa1300ad0738a9880970bf7a0187a30045ae880074a1371586bab18e1000c3334080b318830096b45e128e8200b8a82600aeb10028b4872075b5ada4b4feb0feb096b0 +96b017b80019383019115daaad84000135012f2348b2b1a9bc9cc081ae0fb2a9b0ab71081e3c3f0004a1b746034380003222ae7500367f67032d060029c29525002722004d04ab3132a6b9ac220a29006eb7a00c08361711b9af000719141695b0b7adb6feb0feb096b0 +96b05fb572847d7a7b8aa9aab9bab1836793889e8f9ca1b4c5afabafb7afb2b3b4b69c6793786684a4b3a3b5726f8b8186b0a489779da07b757e8f6bb0a9b0837a7b8fb46abd9396bcaea9b47f7a9db0bda9ab77928473a7aa0d6575849dbca5b3b0adfeb0feb096b0 +96b01db1b0abacb4a5bab7ba9eb0b7a2b4acb6aab2b4b8b0a5acb2abb6acb1b5aa80ae15baa9a7b6a4beabbaa3c5aaabbca8a2bcacb4a3bda8b580b116aeb9abb8aaadb7aab4acb7a4b3b0a4beb2aeb6a9b3a9b680b40eacb0b5abb70077b4a4b6b0aab3b1b7feb0feb096b0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +feb0feb0feb08eb0 +gr +gr +%%PageTrailer +rs +%%BoundingBox: 18 300 514 774 +showpage +%%BeginSetup +%%BeginFeature: *PageRegion Letter + letter +%%EndFeature +%%EndSetup +%%Page: 11 11 +%%BeginPageSetup +/#copies 1 def +sv +1.00 -1.00 sl +18.00 -774.00 tl +%%EndPageSetup +%%BoundingBox: (atend) +gs +gr +%%PageTrailer +rs +%%BoundingBox: 18 774 18 774 +showpage +%%Trailer +%%Pages: 11 +end +%%DocumentSuppliedResources: font StarBats +%%EOF diff --git a/doc/Building.html b/doc/Building.html new file mode 100644 index 0000000..0402a7d --- /dev/null +++ b/doc/Building.html @@ -0,0 +1,262 @@ + + + +Put your title here!! + + + + + +
+ + + + Building H5Part + + + +

Building H5Part

+ + +
+ +

Quickstart for the impatient

+
+ +
    + +
  1. Configure:
    + For the serial implementation +
    +    ./configure
    +
    + For the parallel implementation configure with +
    +    ./configure --enable-parallel
    +
    + If you also want to build fortran bindings, add the + --enable-fortran flag to the configure line. +
  2. + +

  3. Make the Library:
    + Type make to build the library. The libraries are + named accordingly. +
      +
    • libH5Part.a: Serial C/C++ Library.
    • +
    • libpH5Part.a: Parallel C/C++ library.
    • +
    • libH5PartF.a: Serial F77/F90 library.
    • +
    • libpH5PartF.a: Parallel F77/F90 library.
    • +
    +
  4. + +

  5. Make Regression Tests and Examples:
    + Just type make tests to build regression tests + and/or example programs for H5Part. These tests are +
      +
    • H5PartF: Fortran example (only build if --enable-fortran + is specified).
    • +
    • H5PartFpar: Parallel Fortran example (only built if both + --enable-fortran and --enable-parallel are specified).
    • +
    • H5PartTest: Serial C example. This test writes a sample + datafile and then reopens it for reading. It demonstrates + the most basic reading/writing capabilities.
    • +
    • H5PartTestP: Parallel C example (only built if + --enable-parallel is specified). This program only works + as an MPI/parallel program.
    • +
    • Bench: This program will only be built if + --enable-parallel is specified. It compares the + performance of raw binary + I/O (one file per processor), raw binary MPI-IO based + parallel I/O to a single file, and the parallel H5Part/HDF5 to + a single file. Generally, H5Part should be very close to the + MPI-IO implementation in terms of performance, but slower + than one-file-per-processor. If HDF5 is slower the + MPI-IO, it would indicate that some performance tuning + will be required for your platform (contact us, and we will + see what we can do!).
    • +
    +
  6. +

  7. Building Your Own Programs:
    + There are many different subtleties to linking on various + computer platforms, but typically one does the following. +
      +
    • C/C++ Serial: +
      #include + < H5Part.h > into your + source file. +
      $CC -Ipath_to_H5Part.h + -Ipath_to_hdf5.h -o outfile + MyFile.cc -Lpath_to_libH5Part.a -lH5Part + -Lpath_to_libhdf5 -lhdf5 -lz -lsz +
    • +
    • C/C++ Parallel: +
      #include + < H5Part.h > into your + source file. +
      $MPICC -Ipath_to_H5Part.h + -Ipath_to_hdf5.h -DPARALLEL_IO + -DH5_HAVE_PARALLEL -o outfile + MyFile.cc -Lpath_to_libH5Part.a -lH5Part + -Lpath_to_libhdf5 -lhdf5 -lz -lsz +
    • + +
    • Fortran Serial: +
      include + 'H5Part.inc' into your + source file. +
      $FC -Ipath_to_H5Part.h + -Ipath_to_hdf5.h -o outfile + MyFile.cc -Lpath_to_libH5PartF.a -lH5PartF + -Lpath_to_libhdf5 -lhdf5 -lz -lsz -lc +
    • +
    • Fortran Parallel: +
      include + 'H5Part.inc' into your + source file. +
      $MPIF90 -Ipath_to_H5Part.h + -o outfile + MyFile.cc -Lpath_to_libpH5PartF.a -lpH5PartF + -Lpath_to_libhdf5 -lhdf5 -lz -lsz -lc +
    • +

    + +
+ +
+ + +

Details for H5Part Configure and Build

+
+ + + +

Configure Options

+
+ H5Part uses GNU Autoconf to generate a Makefile from the makefile + template called Makefile.in. + The configure script pays attention to the following + configure options;

+ +

    +
  • --prefix=PREFIX Install files in PREFIX
  • +
  • --enable-fortran By default H5part will make no attempt to + build Fortran bindings. If you add the + --enable-fortran flag to the ./configure line, it + will create a small test program to determine how to generate + the fortran bindings and then create a library that includes + those bindings. You may need to set the fortran compiler by + setting the FC environment variable in your shell.
  • +
  • --enable-parallel The version of HDF5 that you build for + Parallel I/O differs from the library you would build for + serial I/O. Consequently, the H5Part libraries must be built + specifically for the kind of I/O you have in mind (parallel or + serial). The configure script will attempt to find an + mpicc if it is available. If no + mpicc is available it will use the regular + C-compiler and will try to locate the location of the MPI + include files and libraries. You can assist the configure + program in its search by setting the MPIROOT + environment variable.
  • +
  • --enable-tools Builds the currently available tools +
    + h5pAttrib, an inspection tool that prints the number of timesteps in a file + the file attributes, the step attributes, the dataset names and their values. +
    + h5pToGNUplot, a converter to two column ASCII format to load in GNUplot. +
  • +
  • --enable-python Under construction Option to build python bindings. It has not been tested. +
  • +
  • --help Prints configure options. +
  • +
+

+ + +

Make Options

+ + +
    +
  • make
  • builds the libraries and test programs +
  • make install
  • builds and installs +
  • make clean
  • removes extraneous object files +
  • make distclean
  • returns configuration to unconfigured state +
+ + +

Environment Variables for Configure

+
+ The + configuration script is of limited intelligence. Sometimes, you + have to define the following environment variables in order to + help it on its way. You will often only need to tell it where to + find the HDF5 libraries (H5ROOT for serial or + PHDF5ROOT for parallel builds). All of these + environment variables can also be overidden in the Makefile that + is generated by the autoconfigure script. + The configure script pays attention to the following + environment variables; +

+ +

    +
  • CC: Use the CC environment variable to tell the + configure script where to find the C compiler. You can + also directly modify this variable in the + Makefile that is generated by the autoconfigure
  • +
  • CXX: Use the CXX environment variable to tell the + configure script where to find the C++ compiler. You can + also directly modify this variable in the + Makefile that is generated by the autoconfigure
  • +
  • FC: Use the FC environment variable to tell the + configure script where to find the fortran compiler. You can + also directly modify this variable in the + Makefile that is generated by the autoconfigure
  • +
  • MPICC: If you are building for parallel C I/O, then it is + useful to tell the configure script where to find the + mpicc script. Normally, mpicc is + merely a wrapper script for a build using a regular C-compiler. + If no mpicc is available, then the + configure script will attempt to locate the mpi + header files and libraries. In that case, it may be useful to + define the MPI_HOME environment variable.
  • +
  • MPICXXIf you are building for parallel C++
  • +
  • MPIFC: If you are building for parallel Fortran I/O, then it is + useful to tell the configure script where to find the parallel fortran compiler. +
  • MPIROOT: Set this environment variable to help the + configure script to locate the MPI libraries that should be + used to build the parallel version of the libraries. This + variable will be ignored if configured only to build the + serial implementation of the library.
  • +
  • HDF5ROOT: Find the path to your serial HDF5 installation. If you + are building the serial version of H5part, then you should set + the PHDF5ROOT environment variable.
  • +

+ +

Common compiler environemt variables for NERSC platforms

+
    +
  • DaVinci: Linux ia64
  • + CC=icc CXX=icc F90=ifort MPICC=icc MPIFC=ifort MPILIB=-L/usr/lib/ -lmpi MPIINC=-I/usr/include +
  • Bassi: AIX
  • + CC=cc_r CXX=cc_r FC=xlf_r MPICC=mpcc_r MPICXX=mpcc_r MPIFC=mpxlf_r +
  • Jacquard: Linux x86_64
  • + CC=pathcc CXX=pathCC FC=pathf90 MPICC=mpicc MPICXX=mpicxx MPIFC=mpif90 +
  • Starsky.lbl.gov: (Darwin) PowerPC
  • + CC=gcc CXX=g++ FC=g95 +
+
+NOTE: You might need to set the MPI library path (MPILIB) and MPI includes (MPIIINC) if they are in non standard places. For example:
+MPILIB=-L/usr/lpp/ppe.poe/lib -lmpi_r MPIINC=-I/usr/lpp/ppe.poe/include/thread +

How to set the variables for configure:

+It is very simple just call env with the variables together with configure. Notice the quotes in MPILIB. +
+% env CC=icc CXX=icc F90=ifort MPICC=icc  MPILIB=-L/usr/lib/ -lmpi MPIINC=-I/usr/include ./configure (configure options follow here)
+
+In the worst case, you can edit the src/Makefile.am and test/Makefile.am as + needed to perform the proper build. +
+ diff --git a/doc/BuildingHDF5.html b/doc/BuildingHDF5.html new file mode 100755 index 0000000..d7e85c2 --- /dev/null +++ b/doc/BuildingHDF5.html @@ -0,0 +1,68 @@ + + + +Put your title here!! + + + + + + +
+ + + + Building HDF5 + + + +

Building H5Part

+ + +
+ +

Configure options

+ +To set the installation path configure with +
+	./configure --prefix=your hdf5 installation full path, e.g.--prefix=/usr/local/hdf5 
+
+ For the serial implementation configure with +
+	./configure
+
+ For the parallel implementation configure with +
+	./configure --enable-parallel
+
+To enable shared objects configure with +
+	./configure --enable-shared 
+
+ +

Environment Variables

+ +To add HDF5 to your PATH and LD_LIBRARY_PATH edit your +.tcshr, or .cshrc depending on the shell you are using and add +
+setenv HDF5 "your hdf5 installation full path"
+setenv PATH ${PATH}:${HDF5}/bin
+setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${HDF5}/lib
+
+if you are using bash, add to your .bashrc +
+export HDF5="your hdf5 installation full path"
+export  PATH=$PATH:${HDF5}/bin
+export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${HDF5}/lib
+
+ +Open a new terminal or do a +source .tcshr (.cshrc, .bashrc) in the one that you are using. + +You can continue downloading and installing H5Part. +
+ + diff --git a/doc/Downloading.html b/doc/Downloading.html new file mode 100644 index 0000000..8d73223 --- /dev/null +++ b/doc/Downloading.html @@ -0,0 +1,48 @@ + + + +Put your title here!! + + + + + + +
+ + Downloading H5Part + + + +

Downloading H5Part

+
+
+ +

Subversion access

+
+ +
  • Anonymous via. Savannah:
    + Use svn from tigris +
    +    svn checkout svn+ssh://svn@savannah.psi.ch/afs/psi.ch/project/amas/svn/root/amas/H5Part/ .
    +
    + Password is svn. +
  • Using AFS:
    + You need AFS (openAFS) and must have an AFS-Account at PSI which in consequence gives you + the needed access right. +
  • +

    +    svn checkout file:///afs/psi.ch/project/amas/svn/root/amas/H5Part/ .
    +
    +In case of trouble please contact the person mentioned at the bottom of this page. +
    +
    Andreas Adelmann
    + + +Last modified: Mon Jan 9 22:18:55 CET 2006 + +
    + + diff --git a/doc/Doxyfile b/doc/Doxyfile new file mode 100644 index 0000000..9ec4d0e --- /dev/null +++ b/doc/Doxyfile @@ -0,0 +1,250 @@ +# Doxyfile 1.4.5 + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = H5Part +PROJECT_NUMBER = V1.0 +OUTPUT_DIRECTORY = ./doxydoc +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +USE_WINDOWS_ENCODING = NO +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = YES +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the +ALWAYS_DETAILED_SEC = NO +INLINE_INHERITED_MEMB = NO +FULL_PATH_NAMES = YES +STRIP_FROM_PATH = ../src +STRIP_FROM_INC_PATH = +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = NO +MULTILINE_CPP_IS_BRIEF = NO +DETAILS_AT_TOP = NO +INHERIT_DOCS = YES +SEPARATE_MEMBER_PAGES = NO +TAB_SIZE = 8 +ALIASES = +OPTIMIZE_OUTPUT_FOR_C = NO +OPTIMIZE_OUTPUT_JAVA = NO +BUILTIN_STL_SUPPORT = NO +DISTRIBUTE_GROUP_DOC = NO +SUBGROUPING = YES +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- +EXTRACT_ALL = YES +EXTRACT_PRIVATE = NO +EXTRACT_STATIC = NO +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +HIDE_UNDOC_MEMBERS = YES +HIDE_UNDOC_CLASSES = YES +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = NO +CASE_SENSE_NAMES = YES +HIDE_SCOPE_NAMES = NO +SHOW_INCLUDE_FILES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +SORT_BRIEF_DOCS = NO +SORT_BY_SCOPE_NAME = NO +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +GENERATE_DEPRECATEDLIST= YES +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +SHOW_USED_FILES = YES +SHOW_DIRECTORIES = YES +FILE_VERSION_FILTER = +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = NO +WARN_FORMAT = "$file:$line: $text" +WARN_LOGFILE = +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- +INPUT = ../src +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.h \ + *.hh \ + *.C \ + *.CC \ + *.C++ \ + *.H \ + *.HH +RECURSIVE = YES +EXCLUDE = ../src/H5PartF.c \ + ../src/H5Part.cc \ + ../src/H5Part.hh \ + ../src/H5Part++.cc \ + ../src/H5Part++.hh \ + ../src/TestUnderscoreC.c \ + ../src/Underscore.h +EXCLUDE_SYMLINKS = NO +EXCLUDE_PATTERNS = +EXAMPLE_PATH = +EXAMPLE_PATTERNS = * +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = YES +INLINE_SOURCES = NO +STRIP_CODE_COMMENTS = YES +REFERENCED_BY_RELATION = YES +REFERENCES_RELATION = YES +USE_HTAGS = NO +VERBATIM_HEADERS = YES +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- +ALPHABETICAL_INDEX = NO +COLS_IN_ALPHA_INDEX = 5 +IGNORE_PREFIX = +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = html +HTML_FILE_EXTENSION = .html +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +HTML_ALIGN_MEMBERS = YES +GENERATE_HTMLHELP = NO +CHM_FILE = +HHC_LOCATION = +GENERATE_CHI = NO +BINARY_TOC = NO +TOC_EXPAND = NO +DISABLE_INDEX = NO +ENUM_VALUES_PER_LINE = 4 +GENERATE_TREEVIEW = NO +TREEVIEW_WIDTH = 250 +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- +GENERATE_LATEX = YES +LATEX_OUTPUT = latex +LATEX_CMD_NAME = latex +MAKEINDEX_CMD_NAME = makeindex +COMPACT_LATEX = NO +PAPER_TYPE = a4wide +EXTRA_PACKAGES = +LATEX_HEADER = +PDF_HYPERLINKS = NO +USE_PDFLATEX = NO +LATEX_BATCHMODE = NO +LATEX_HIDE_INDICES = NO +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- +GENERATE_MAN = NO +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_LINKS = NO +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- +GENERATE_XML = NO +XML_OUTPUT = xml +XML_SCHEMA = +XML_DTD = +XML_PROGRAMLISTING = YES +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- +GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- +GENERATE_PERLMOD = NO +PERLMOD_LATEX = NO +PERLMOD_PRETTY = YES +PERLMOD_MAKEVAR_PREFIX = +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = NO +EXPAND_ONLY_PREDEF = NO +SEARCH_INCLUDES = YES +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = +PREDEFINED = +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- +TAGFILES = YES +GENERATE_TAGFILE = +ALLEXTERNALS = NO +EXTERNAL_GROUPS = YES +PERL_PATH = /usr/bin/perl +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- +CLASS_DIAGRAMS = YES +HIDE_UNDOC_RELATIONS = YES +HAVE_DOT = YES +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +GROUP_GRAPHS = YES +UML_LOOK = NO +TEMPLATE_RELATIONS = NO +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +CALL_GRAPH = YES +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DOT_IMAGE_FORMAT = png +DOT_PATH = /Applications/Graphviz.app/Contents/MacOS +DOTFILE_DIRS = +MAX_DOT_GRAPH_WIDTH = 1024 +MAX_DOT_GRAPH_HEIGHT = 1024 +MAX_DOT_GRAPH_DEPTH = 1000 +DOT_TRANSPARENT = NO +DOT_MULTI_TARGETS = NO +GENERATE_LEGEND = YES +DOT_CLEANUP = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- +SEARCHENGINE = NO diff --git a/doc/H5PartExpress.html b/doc/H5PartExpress.html new file mode 100755 index 0000000..b79c417 --- /dev/null +++ b/doc/H5PartExpress.html @@ -0,0 +1,14 @@ + + + +Put your title here!! + + + + + +
    + +Under construction, will be here soon. +
    + diff --git a/doc/H5PartIDL.html b/doc/H5PartIDL.html new file mode 100755 index 0000000..8276d7f --- /dev/null +++ b/doc/H5PartIDL.html @@ -0,0 +1,15 @@ + + + +Put your title here!! + + + + + +
    + +Under construction, will be here soon. + +
    + diff --git a/doc/H5PartParaview.html b/doc/H5PartParaview.html new file mode 100755 index 0000000..8276d7f --- /dev/null +++ b/doc/H5PartParaview.html @@ -0,0 +1,15 @@ + + + +Put your title here!! + + + + + +
    + +Under construction, will be here soon. + +
    + diff --git a/doc/H5PartTools.html b/doc/H5PartTools.html new file mode 100644 index 0000000..62d3246 --- /dev/null +++ b/doc/H5PartTools.html @@ -0,0 +1,99 @@ + + + +Put your title here!! + + + + + + +
    + + + + H5Part Utility Tools + + + +

    H5Part Utility Tools

    + + +
    + + +

    h5pAttrib

    +
    + +h5pAttrib is an inspection tool that prints to stdout the number of timesteps in a file + the file attributes, the step attributes, the dataset names and their values. It's simpler to use than h5dump. + Usage options are given by typing: +

    +
    +% ./h5pAttrib -h
    +usage: h5pAttrib [OPTIONS] file
    +
    +  OPTIONS
    +   -h, --help           Print help page
    +   -n, --nstep          Print number of steps
    +   -A, --fileA          Print file attributes
    +   -a, --stepA          Print step attributes & values for time step n
    +   -d, --dataset        Print data sets names & values for time step n
    +   -H, --header         Print shorter version without the values
    +
    + +

    Examples

    +
      +
    1. + Show file attribute names & values of sample.h5part +
    2. + h5pAttrib -A sample.h5part +
    3. + Show step attribute names for time step 5 of sample.h5part +
    4. + h5pAttrib -a 5 -H sample.h5part +
    + + +

    h5pToGNUplot

    +
    + +h5pToGNUplot is a converter from H5Part to two column ASCII text format for loading into GNUplot. Usage options are given by typing: +

    +
    +% ./h5pToGNUplot -h
    +
    +usage: h5pToGNUplot -t TIMESTEP -1 VARIABLE#1 -2 VARIABLE#2 -i INPUTFILE [OPTIONAL_FLAGS]
    +
    +  FLAGS
    +   -h, --help           Print help page
    +   -1, --1var           (REQUIRED) Takes first variable parameter
    +   -2, --2var           (REQUIRED) Takes second variable parameter
    +   -i, --input          (REQUIRED) Takes input file name
    +   -t, --timestep       (REQUIRED) Sets the timestep (Value -1 will result in dumping values of all timesteps.)
    +   -o, --output         (OPTIONAL) Takes output file name (without this flag, the program will print to stdout)
    +   -n, --number         (OPTIONAL) Sets number of output points
    +   -s, --start          (OPTIONAL) Sets the starting particle index
    +
    + +

    Examples

    +
      +
    1. + Create a GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54 +
    2. + h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt +
    3. + Create a GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54 + using 1200 points from particle index 76 +
    4. + h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt -s 76 -n 1200 +
    + +
    + + + + diff --git a/doc/H5PartVisIt.html b/doc/H5PartVisIt.html new file mode 100755 index 0000000..857cbc7 --- /dev/null +++ b/doc/H5PartVisIt.html @@ -0,0 +1,75 @@ + + + +H5Part: VisIt Plugins + + + + + +
    +

    H5Part: VisIt Plugins

    +

    Introduction

    +

    +VisIt is an open source point-and-click 3D scientific visualization application that supports most of the common visualization techniques on structured and unstructured grids. One of its advantages is that it employs a distributed and parallel architecture in order to handle extremely large data sets interactively. VisIt's rendering and data processing capabilities are split into viewer and engine components that may be distributed across multiple machines. See this link for details on how to run VisIt in NERSC. +

    +

    +VisIt achieves extensibility through the use of dynamically loaded plugins. All of VisIt's plots, operators, and database readers are implemented as plugins and are loaded at run-time from the plugin directory. New plugins can be added simply by installing them in this directory. VisIt comes with a graphical plugin creation tool, which greatly simplifies the process of creating new plugins. The user describes the properties of the plugin and then the tool generates most of the code necessary to implement the plugin. For example, in the case of an operator, the plugin creation tool creates the code necessary for the graphical user interface attribute window; the C++, Python, and Java interfaces; and the code necessary to interface to VisIt. The only code you need to write is the C++ code that actually performs the operation. +

    +

    H5Part in VisIt

    +

    Database Reader Plugin

    +

    +We wrote a Multiple Time Step Multiple Domain database reader to read H5Part data into VisIt. H5Part datasets should be named with the extension ".h5part" to be recognized by the reader since VisIt does not have a format selection mechanism at the time of reading. Figure 1 shows a Pseudocolor plot of a data set and Figure 2 shows a Scatter plot x-y (any combination of x, px, y, py, z, pz, id are possible). +

    +

    + + + + + + + + + + + + +
    + +
    +Figure 1. VisIt User interface showing an H5Part particle file rendered as spheres using the Pseudocolor plot. +
    + +
    +Figure 2. A Scatter plot of the x-y projection of the particles. +
    +

    + +

    +VisIt provides a Query interface, for single time steps and for time series. Figure 3 shows the query interace over time for the sum of the x position and the z position of the particoes. +

    +

    + + + + + + +
    + +
    +Figure 3. VisIt's Time Query Output. +
    +

    +

    Operator Plugins

    +

    +

    Particle Random Sampler

    + + +

    +

    +

    Particle Binner

    +

    +
    diff --git a/doc/H5PartVisIt/cloud_visit.png b/doc/H5PartVisIt/cloud_visit.png new file mode 100644 index 0000000..4dc11aa Binary files /dev/null and b/doc/H5PartVisIt/cloud_visit.png differ diff --git a/doc/H5PartVisIt/cloud_visit.s.png b/doc/H5PartVisIt/cloud_visit.s.png new file mode 100644 index 0000000..65be8d3 Binary files /dev/null and b/doc/H5PartVisIt/cloud_visit.s.png differ diff --git a/doc/H5PartVisIt/cloud_visit_2D.png b/doc/H5PartVisIt/cloud_visit_2D.png new file mode 100644 index 0000000..a6163bc Binary files /dev/null and b/doc/H5PartVisIt/cloud_visit_2D.png differ diff --git a/doc/H5PartVisIt/cloud_visit_2D.s.png b/doc/H5PartVisIt/cloud_visit_2D.s.png new file mode 100644 index 0000000..c98cb29 Binary files /dev/null and b/doc/H5PartVisIt/cloud_visit_2D.s.png differ diff --git a/doc/H5PartVisIt/visit_query1.png b/doc/H5PartVisIt/visit_query1.png new file mode 100644 index 0000000..c6f6d4b Binary files /dev/null and b/doc/H5PartVisIt/visit_query1.png differ diff --git a/doc/H5PartVisIt/visit_query1.s.png b/doc/H5PartVisIt/visit_query1.s.png new file mode 100644 index 0000000..37247aa Binary files /dev/null and b/doc/H5PartVisIt/visit_query1.s.png differ diff --git a/doc/H5tools/H5tools.htm b/doc/H5tools/H5tools.htm new file mode 100644 index 0000000..94e46ac --- /dev/null +++ b/doc/H5tools/H5tools.htm @@ -0,0 +1,417 @@ +H5Part Tools How-to + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    +
    +

    H5Part + Tools How-to

    +
    +

    Table + of Contents

    +
    +

    + [1] Quick Guide

    +

    --- + For h5pAttrib
    +
    + [2] To see number of timesteps in a h5part file
    +
    + [3] To see file attributes in a h5part + file
    +
    + [4] To see step attributes in a h5part + file
    +
    + [5] To see dataset in a h5part file
    +
    + [6] Providing more than one flag at once for h5pAttrib

    +

    --- + For h5pToGNUplot
    +
    + [7] What parameters to provide
    +
    + [8] How to create an input file to GNUplot

    +

     

    +

    <back + to top>

    +

     

    +

    [1] + Quick Guide

    +

    Executing the program with + -h option will display a concise help page.

    +

    $>./h5pAttrib + -h

    +

    usage: h5pAttrib [OPTIONS] + file

    +

    OPTIONS
    + -h, --help Print help page
    + -n, --nstep Print number of steps
    + -A, --fileA Print file attributes
    + -a n, --stepA n Print step attributes & values for time step n
    + -d n, --dataset n Print data sets names & values for time step + n
    + -H, --header Print shorter version without the values

    +

    Examples:

    +

    1) Show file attribute names + & values of sample.h5part

    +

    h5pAttrib -A sample.h5part
    + OR
    + h5pAttrib --fileA sample.h5part

    +

    2) Show step attribute names + for time step 5 of sample.h5part

    +

    h5pAttrib -a 5 -H sample.h5part
    + OR
    + h5pAttrib --stepA 5 -H sample.h5part

    +


    + $> ./h5pToGNUplot -h

    +

    usage: h5pToGNUplot -t TIMESTEP + -1 VARIABLE#1 -2 VARIABLE#2 -i INPUTFILE [OPTIONAL_FLAGS]

    +

    FLAGS
    + -h, --help Print help page

    + -1 par, --1var par (REQUIRED) + Takes first variable parameter to "par"
    + -2 par, --2var par (REQUIRED) Takes second variable parameter to "par"
    + -i file, --input file (REQUIRED) Takes input file name to "file"
    +
    -t step, --timestep + step (REQUIRED) Sets the timestep to "step" (Value -1 will + result in dumping values of all timesteps.)
    + -o file, --output file (OPTIONAL) Takes output file name to "file" + (without this flag, the program will print to stdout)
    + -n num, --number num (OPTIONAL) Sets number of output points to "num"
    + -s idx, --start idx (OPTIONAL) Sets the starting particle index to + "idx"

    +


    + Examples:

    +

    1) Create GNU plot file + output.txt from sample.h5part by ploting x vs px for timestep 54

    +

    h5pToGNUplot -t 54 -1 x + -2 px -i sample.h5part -o output.txt

    +

    2) Create GNU plot file + output.txt from sample.h5part by ploting x vs px for timestep 54
    + using 1200 points from particle index 76

    +

    h5pToGNUplot -t 54 -1 x + -2 px -i sample.h5part -o output.txt -s 76 -n 1200

    +

     

    +

    <back + to top>

    +

     

    +

    --- + For h5pAttrib

    +

     

    +

    [2] + To see number of timesteps in a h5part file

    +

    Executing the program h5pAttrib with -n flag will display the number + of timesteps in the file.

    +

    EXAMPLE>>

    +

    $> + ./h5pAttrib -n sample.h5part

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    Printing number of timesteps + for: sample.h5part ...

    +

    There are total 252 number + of timesteps.
    + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    done
    +

    +

     

    +

    <back + to top>

    +


    + [3] To see file attributes + in a h5part file

    +

    File attribute contains information about the file. (file description + etc...) Executing the program h5pAttrib with -A flag will display + the file attributes in the file.

    +

    EXAMPLE>>

    +

    $> + ./h5pAttrib -A sample.h5part

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    Printing file attributes + for: sample.h5part ...

    +

    The number of file attributes + for file sample.h5part is 0 ...
    + There are no file attributes.
    + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    done

    +


    + NOTE: -H option will omit the list of values of file attributes.

    +

     

    +

    <back + to top>

    +

     

    +

    [4] + To see step attributes in a h5part file

    +

    Step attribute contains information that belongs to a specific step. + (step name, timestep number, etc...) Executing the program h5pAttrib + with -a flag will display the step attributes in the file.
    + Note that the timestep index should follow -a flag.

    +

    EXAMPLE>>

    +

    $> + ./h5pAttrib -a 2 sample.h5part

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    Printing step attributes + for: sample.h5part ...

    +

    The number of step attributes + for timestep #2 is 10 ...

    +

    Attribute #0 = Step
    + There are 1 elements in the attribute
    + Attribute Type is H5T_NATIVE_INT64
    + Printing 1 element value(s):
    + COUNT[0]: 2

    +

    Attribute #1 = Spos
    + There are 1 elements in the attribute
    + Attribute Type is H5T_NATIVE_DOUBLE
    + Printing 1 element value(s):
    + COUNT[0]: 0.143580

    +

    Attribute #2 = structLen
    + There are 1 elements in the attribute
    + Attribute Type is H5T_NATIVE_DOUBLE
    + Printing 1 element value(s):
    + COUNT[0]: 2.393000

    +

    .
    + .
    + .

    +


    + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    done

    +


    + NOTE: -H option will omit the list of values of step attributes.

    +

     

    +

    <back + to top>

    +


    + [5] To see dataset in a h5part file

    +

    Executing the program h5pAttrib with -d flag will display the datasets + information in the file. (dataset name, type, number of elements, + etc...) Executing the program h5pAttrib with -d flag will display + the datasets information in the file.
    + Note that the timestep index should follow -d flag.

    +

    EXAMPLE>>

    +

    $> + ./h5pAttrib -d 2 -H sample.h5part

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    Printing names of datasets + for: sample.h5part ...

    +

    The number of datasets for + timestep #2 is 7 ...

    +

    Dataset Name #0 = id
    + Dataset Type is H5T_NATIVE_INT64
    + Number of elements: 67587

    +

    Dataset Name #1 = px
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 67587

    +

    Dataset Name #2 = py
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 67587

    +

    Dataset Name #3 = pz
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 67587

    +

    Dataset Name #4 = x
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 67587

    +

    Dataset Name #5 = y
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 67587

    +

    Dataset Name #6 = z
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 67587

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    done

    +


    + NOTE: -H option will omit the list of values of datasets.

    +

     

    +

    <back + to top>

    +

     

    +

    [6] + Providing more than one flag at once

    +

    When more than one flags + are provided, one result after another will be displayed.

    +

    EXAMPLE>>

    +

    $> + ./h5pAttrib -H -a 1 -d 1 sample.h5part

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    Printing step attributes + for: sample.h5part ...

    +

    The number of step attributes + for timestep #1 is 10 ...

    +

    Attribute #0 = Step
    + Attribute #1 = Spos
    + Attribute #2 = structLen
    + Attribute #3 = org
    + Attribute #4 = maxX
    + Attribute #5 = minX
    + Attribute #6 = maxP
    + Attribute #7 = minP
    + Attribute #8 = centroid
    + Attribute #9 = nloc
    + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +


    + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    Printing names of datasets + for: sample.h5part ...

    +

    The number of datasets for + timestep #1 is 7 ...

    +

    Dataset Name #0 = id
    + Dataset Type is H5T_NATIVE_INT64
    + Number of elements: 60214

    +

    Dataset Name #1 = px
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 60214

    +

    Dataset Name #2 = py
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 60214

    +

    Dataset Name #3 = pz
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 60214

    +

    Dataset Name #4 = x
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 60214

    +

    Dataset Name #5 = y
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 60214

    +

    Dataset Name #6 = z
    + Dataset Type is H5T_NATIVE_DOUBLE
    + Number of elements: 60214

    +

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +

    done

    +

     

    + +
    +
    +
    +

    --- + For h5pToGNUplot

    +

    [7] + What parameters to provide

    +

    When you execute the program + with -h option, it displays what flags are necessary and what flags are + optional.

    +
    +

    Short Version

    +

    -h
    + -1
    + -2
    + -i
    + -t
    + -o
    + -n
    + -s

    +
    +

    Long Version

    +

    --help
    + --1var
    + --2var
    + --input
    + --timestep
    + --output
    + --number
    + --start

    +
    +

    Meanings

    +

    Print help page
    + (REQUIRED) Takes first variable parameter
    + (REQUIRED) Takes second variable parameter
    + (REQUIRED) Takes input file name
    + (REQUIRED) Sets the timestep (Value -1 will result in dumping values of + all timesteps.)
    + (OPTIONAL) Takes output file name (without this flag, the program will + print to stdout)
    + (OPTIONAL) Sets number of output points
    + (OPTIONAL) Sets the starting particle index

    +
    +

     

    +

    <back + to top>

    +


    + [8] How to create an input file to GNUplot

    +

    EXAMPLE>>
    + Create input file to GNUplot that plots x vs. y.

    +

    $> + ./h5pToGNUplot -1 x -2 y -t 1 -i sample.h5part -o output.txt
    + $> cat output.txt
    + -0.390779 -0.254793
    + -0.396527 -0.252781
    + -0.375362 -0.285137
    + -0.396527 -0.252781
    + -0.379917 -0.283147
    + -0.390779 -0.254793
    + -0.387536 -0.287346
    + -0.371787 -0.319797
    + -0.379917 -0.283147
    + -0.378967 -0.326058
    + -0.378976 -0.326078
    + -0.387536 -0.287346
    + -0.378957 -0.326069
    + -0.379917 -0.283147
    + -0.388762 -0.265390
    + -0.371787 -0.319797
    + -0.390779 -0.254793
    + -0.376825 -0.266804
    + -0.379917 -0.283147
    + -0.375362 -0.285137
    + ...

    +

    Then run GNUplot...

    +

    $> + gnuplot

    +

    G N U P L O T
    + Version 4.0 patchlevel 0
    + last modified Thu Apr 15 14:44:22 CEST 2004
    + System: Linux 2.6.11.4-21.11-smp

    +

    Copyright (C) 1986 - 1993, 1998, + 2004
    + Thomas Williams, Colin Kelley and many others

    +

    This is gnuplot version 4.0. + Please refer to the documentation
    + for command syntax changes. The old syntax will be accepted
    + throughout the 4.0 series, but all save files use the new syntax.

    +

    Type `help` to access the on-line + reference manual.
    + The gnuplot FAQ is available from
    + http://www.gnuplot.info/faq/

    +

    Send comments and requests for + help to
    + <gnuplot-info@lists.sourceforge.net>
    + Send bugs, suggestions and mods to
    + <gnuplot-bugs@lists.sourceforge.net>

    +


    + Terminal type set to 'x11'
    + gnuplot> plot "output.txt"

    +

    This will open a GNUplot + window that plots output.txt.

    +


    + <Sample screen shot of GNUplot + with input datafile generated by h5pToGNUplot>

    +
    + \ No newline at end of file diff --git a/doc/H5tools/H5tools_files/snapshot1.jpg b/doc/H5tools/H5tools_files/snapshot1.jpg new file mode 100644 index 0000000..a6301d7 Binary files /dev/null and b/doc/H5tools/H5tools_files/snapshot1.jpg differ diff --git a/doc/H5xxx/H5xxx.tex b/doc/H5xxx/H5xxx.tex new file mode 100755 index 0000000..ac383bc --- /dev/null +++ b/doc/H5xxx/H5xxx.tex @@ -0,0 +1,345 @@ +\documentclass[acus]{JAC2003} + +%% +%% Use \documentclass[boxit]{JAC2003} +%% to draw a frame with the correct margins on the output. +%% +%% Use \documentclass[acus]{JAC2003} +%% for US letter paper layout +%% + +\usepackage{graphicx} + +%% +%% VARIABLE HEIGHT FOR THE TITLE BOX (default 35mm) +%% + +\setlength{\titleblockheight}{40mm} + +\begin{document} +\title{H5Pie: A Portable High Performance Parallel Data Interface for Electromagnetics Simulations Including Particles\thanks{ +This work (LBNL-57607) was supported by the Director, Office of Science, Office of Advanced Scientific Computing Research, of the U.S. Department of Energy under Contract No. DE-AC03-76SF00098 and the DOE SciDAC project on ``Advanced Computing for 21st Century Accelerator Science and Technology.''. +}} + +\author{A. Adelmann, A. Gsell, B. Oswald, PSI, Villigen, Switzerland \\ + R.D. Ryne, LBNL/AFR, Berkeley, California, USA\\ + W. Bethel, J.M. Shalf, C. Siegerist, LBNL/NERSC, Berkeley, California, USA} + +\maketitle +\begin{abstract} +The very largest parallel particle simulations, for problems +involving six dimensional phase space, +generate vast quantities of data. It is desirable to +store such enormous datasets efficiently and also to share data +effortlessly between data analysis tools +such as VisIt or ParaView +among other groups who are working on particle-based accelerator +simulations. We define a very simple file schema built on top of HDF5~\cite{hdf5hp} +(Hierarchical Data Format version 5) as well as an API that simplifies +the reading/writing of the data to the HDF5 file format. HDF5 offers a +self-describing machine-independent binary file format that supports +scalable parallel I/O performance for MPI codes on computer systems +ranging from laptops to supercomputers. + +H5Pie is actually a composition of three parts. On a very abstract view we have, +H5Part which handles the macro particles of a simulation. H5Mesh defines the (spatial) geometry of the +computational domain and H5Fields represents scalar and vector filds. (H5Pie = H5{\bf P} art + H5F{\bf i}eld+ H5M{\bf e}sh) + + +The sample H5Pie +API will be available for C, C++, and Fortran codes. +The common file format will enable groups that +use completely different simulation implementations to transparently share +datasets. +\end{abstract} + +\section{Motivation} +The motivation for this undertaking is to create a file format that is +suitable for large-scale parallel simulation codes. +A suitable data format must have the following properties: +it must be a machine-independent binary representation that is +self-describing, easily extensible, language independent, efficient +(both for serial and parallel), and produces files that are seamlessly sharable +between different programs. In the following sections we describe +the motivation for these features and how they can be accomplished +using the proposed implementation. + +\subsection{Machine Independence} +Processor architectures use different binary representations +for data. While the IEEE 754 standard has decreased the number of +differing floating point number represenations, byte-order still remains +a source of incompatibility. While it is trivial to byte-swap a file from +a programming standpoint, it creates a number of long-term file management +difficulties for groups that are sharing or maintaining a repository of simulation +data. Given files that store data structures with differently sized elements, +one must know the storage format precisely in order to apply byte-swapping +properly. +HDF5 does not suffer from these problems because the file format is completely +self-describing and the internal binary structures are all machine independent. +The HDF5 library is able to convert data that is stored in any native machine +represenation in the data file into a native binary representation in memory +as part of the reading process with little performance penalty. + +\subsection{Language Independence} +The three most common languages used for implementing applications +in the arena of computational sciences are +Fortran, C and C++. The file format and associated API must hide +differences in the binary file-storage conventions of these languages +as well as offering native API bindings for each of these +programming languages. + +For instance, Fortran unformatted binary files contain integer fields +at the beginning and the end of each record that describe the length +of the record. The size of these integer tags is usually 32-bits, but some +fortran compiler implementations will use larger tags in order to represent +larger record sizes. C and C++ binary files have no such convention for +record-oriented storage. The language-dependent differences in +binary storage layout conventions +can cause difficulties for scientists who wish to share data files between +Fortran and C/C++ implementations of a code, or with visualization tools +that are primarily written in C/C++. The API bindings and underlying file format +provided by the H5Part API and the underlying HDF5 file format are able to +hide these differences in order to provide symmetric access via all languages. + +\subsection{Self-Describing} +The data is accessed by names, for example, one might ask for `the +column of data called $p_x$' -- affording a layer of file-layout independence. +In other words, self-describing data is +not accessed by a position in a file but by name of the datasets. Various attributes +of the data that may be necessary to using it are available. For +example, one can ask ``what are the units of column $p_x$?'. + +There are a number of examples of self-describing file formats. Examples include HDF earlier HDF implementations leading up to HDF version 5 and the Unidata NetCDF format. Another +very popular approach is the Self Describing Data Sets (SDDS) \cite{SDDS} although it +is only serial in nature. HDF5 is a complete rewrite of the HDF file format that supports +parallel I/O and offers a much leaner, more flexible interface. +Because it is self-describing, the entire contents of an HDF5 file can be +browsed and even converted to ASCII text, including XML syntax text files, +using the built-in 'h5ls' and 'h5dump' +tools without specific knowledge of the internal file format. + +\begin{figure}[htb] +\begin{minipage}[b]{0.5\textwidth} +%\includegraphics[scale=0.095]{./partview1.eps} +%\includegraphics[scale=0.097]{./density70.eps} +\end{minipage} +\caption{color: A common self-describing file format allows different codes to share a common set of visualization and data analysis tools. PartView and AVS/Express, pictured above, are able to read and display contents of an H5Part/HDF5 file written on any machine in any language, regardless of how many processors are used.} +\label{fig:vis} +\end{figure} + +The primary advantage of accessing data and its attributes is that one +can then construct more flexible data manipulation tools that are capable +of surviving the natural evolution of file formats. Data formats can be extended +to include additional information without breaking older file readers. +Self-describing data contains all the information +that analysis tools need to manipulate various types of data +correctly. Two examples of such tools using the proposed file format +are shown in Figure ~\ref{fig:vis} As a result, data exchange between different simulations tools is +much simpler, robust and better defined by using self-describing data sets. + +\subsection{High Performance} +The HDF5 file format allows data elements to be written to disk in the +native binary representation. The file format stores a description of +the native data representation of the machine that wrote the data so +that it can be automatically translated to the native binary +representation of the machine that reading the data (eg. if the byte +order differs). In contrast to XDR, where the data always gets +translated to/from an intermediate machine-neutral format, the HDF5 +data conversion only occurs if the stored data represenation is +different from the native binary representation of the machine that is +reading the file, so there is no performance penalty if the machines +have the compatible binary data formats. [ada: need work] In general, HDF5 offers +performance that is very close to what can be achieved by writing an +ad-hoc machine-dependent binary for F77 unformatted data file. + +\subsection{Parallel I/O} +HDF5 also supports parallel I/O capabilities for MPI programs. +The naive approach to writing data from a parallel program is to +write one file per processor. While this is simple to implement and +very efficient on most cluster filesystems, it leads to file management +headaches when it comes the time to analyze the data. One must either +recombine these separate files into a single file or create ponderous +user-interfaces that allow a data analysis application to read from a +directory full of files instead of just one file. + +Parallel I/O methods, allow you to write data into a single file from all +of the tasks of a parallel program. The performance is typically lower +than that of writing one-file-per-processor, but it makes data management +much simpler after the program has finished. No additional recombining +steps are required to make the file accessible by vis-tools or for +restarting a simulation using a different number of processors. + +Parallel HDF5 uses MPI-I/O for its low-level implementation. The +mechanics of using MPI-I/O are all hidden from the user by our +H5Part file API (the code looks nearly identical to reading/writing the data +from a serial program). While the performance is not as good as +writing one-file-per-processor, we demonstrate that writing files +with Parallel HDF5 is consistently faster than writing the data +in raw/native binary using the MPI-I/O library. This efficiency is +made possible through sophisticated HDF5 tuning directives that +control data alignment and caching within the HDF5 layer. +Therefore, we argue that it would be difficult to match +HDF5 performance even using a home-grown binary file format. + +\section{H5Mesh File Organization and API} + +\section{H5Field File Organization and API} + +\section{H5Part File Organization and API} +The proposed file storage format uses HDF5 for the low-level file +storage and a simple API to provide a high-level interface to that +file format. A programmer can either use the H5Part API to access +the data files or write directly to the file format using some simple +conventions for organizing and naming the objects stored in the +file. + +The HDF5 format, its benefits, and its file organization is decribed +at \cite{hdf5hp}. The file format was also adopted by the DOE +ASCI-VIEWS effort, so the library has been tuned and adapted to read +and write data efficiently on large-scale parallel computing +systems. We adopted HDF5 for our file storage needs because it offers +all that is needed as stipulated in the motivation section. + +We describe now the H5Part conventions for storing +objects in the HDF5 file as well as some examples of the API. +\subsection{H5Part File Organization} +In order to store Particle Data in the HDF5 file format, we have +formalized the hierarchical arrangement of the datasets and naming +conventions for the groups and associated datasets. The sample H5Part API formally +encodes these conventions in order to provide a simple and uniform +way to access these files from C, C++, and Fortran codes. The API makes +it easier to write very portable data adaptors for visualization tools in order to +expand the number of tools available to access the data. Even so, +anyone can use the HDF5 $h5ls$ utility to examine the organization +of the H5Part files and even write their own HDF5-based interface for reading and writing the +file format. The standards offered by the sample API are completely independent of the +standard for organizing data within the file. + +The file format supports the storage of multiple timesteps of +datasets that contain multiple fields. The fields correspond to different properties of +the particles at that particular time step -- for instance, +the 3-dimensional cartesian position of the particles +$(X,Y,Z)$ as well as the 3-dimensional phase of each +particle $(PX,PY,PZ)$. These two degrees of freedom +are organized such that the timesteps are groups (time groups) that are added sequentially +to the root group (``/''). The fields are datasets that are nested within the +time groups. The convention for naming the time group is $Particles$ where $$ is a monotonically increasing counter for the number of timesteps stored in the file. + +The fields contained within a given time group are simply named for the property of the particle they represent. For instance, the phase of the particle stored in a simulation variable called 'px' is simply named $``px''$. The field names are user-defined and +can be understood automatically by the visualization +tools that read the file. The only other convention is that each time group must contain the same set of fields -- the contents of the fields will change, but the set of names for these fields must remain the same for all timesteps. + +The fields can be either integer or real data types. Initially, the file format supports double precision float and 64-bit integers in order to simplify the requirements for file readers, but HDF5 is capable of automatically down-converting to 32-bit data types upon request. The API will be extended accordingly to support these conversions. + +Finally, the file, the individual timesteps, and the individual data arrays can contain {\em attributes} that provide additional information about the data. For instance, the datasets can be annotated with attributes containing {\em units} for a given data field, simulation parameters, or code revision information. The {\em attributes} are key-value pairs where the $key$ is a string that is associated with the file, group, or dataset, and the $value$ is either a string, a real value, or an integer associated with that key. + +%Visualization and data analysis tools can take advantage of this additional information if they are programmed to recognize it, but less-sophisticated tools can safely ignore it without compromising their ability to read the file format. + +% ada: to philosophic for a 3 page paper, although it is very important and of course right! +%The ability to ignore such information is arguably one of the most powerful capabilities of the HDF5 file format. Whereas changes to headers or data layout in conventional, non-self-describing file formats can render an older reader interface useless, one can continuously add new descriptive information to the HDF5 file without having any detrimental effect on readers that were designed to work with older versions of the file format. This provides enormous benefits for the long term maintenance and evolution of the file format. + +\section{GENERAL FORM IN PSEUDOCODE} +In Figure \ref{fig:usage} we show the very simple API for writing +data. The API for reading is almost symmetric. It is also worth to +note that there are minimal differences whether one read/write serial +or in parallel. The API consists of a small number of C, C++ and +Fortran functions and will be described elsewhere. +In the parallel case the original domain decomposition can be used or +the data can be decomposed according to the new number of processor +nodes available. +The resulting HDF5 file will contains a simple directory structure that can be navigated using the generic 'h5ls' utility; +\begin{figure}[h!] \label{fig:sbendVect} +\newsavebox{\gogo} + \setbox\gogo=\hbox{% + \begin{minipage}{0.4\textwidth} + \small + \begin{tabbing} + 111111\=aaaa\=aaaa\=aaaa\=\kill +\texttt{if(not parallel);}\\ +\quad\texttt{filehandle=OpenFile(filename,mode)} \\ +\texttt{else}\\ +\quad\texttt{filehandle=OpenFile(filename,mode,mpicomm)} \\ +\texttt{SetNumberOfParticles(filehandle);}\\ +\texttt{loop(step=1,NSteps);}\\ +\quad\texttt{SetStep(filehandle,step);}\\ +\quad\texttt{WriteData(filehandle,fieldname1,data1);}\\ +\centerline{\texttt{{\bf write more data}}}\\ +\quad\texttt{WriteData(filehandle,fieldname,data);}\\ +\texttt{CloseFile(filehandle);} +\end{tabbing} +\end{minipage} +} +\fbox{\usebox{\gogo}} +\caption{Usage of H5Part in pseudo-code} +\label{fig:usage} +\end{figure} + +% \begin{figure}[h!] \label{fig:sbendVect} +% \newsavebox{\gugu} +% \setbox\gugu=\hbox{% +% \begin{minipage}{0.4\textwidth} +% \small +% \begin{tabbing} +% 111111\=aaaa\=aaaa\=aaaa\=\kill +%\texttt{/Particles1/fieldname1 } \\ +%\texttt{/Particles1/fieldname2} \\ +%\texttt{ . . . } \\ +%\texttt{/Particles1/fieldname } \\ +%\texttt{/Particles2/fieldname1} \\ +%\texttt{ . . .}\\ +%\texttt{ /Particles/fieldname} +%\end{tabbing} +%\end{minipage} +%} +%\fbox{\usebox{\gugu}} +%\end{figure} +\vspace{-5mm} +\section{PERFORMANCE} +% [ada] We also have data for 4 procs +% [ada] name for one file per proc +Preliminary performance estimations, looking at global (GD) and local data (LD) +rates, suggests that our HDF5 writing has a very good performance even +with respect to raw mpi, as shown in Table \ref{tab:perf}. +\begin{table}[h!] +\begin{flushleft} \footnotesize + \begin{tabular}{|l|l|l|} +\hline +\bf Mode & \bf GD [MB/s] & \bf LD [MB/s]\\ +\hline +mpi-io (one file) & 241 & 3.7 \\ +\hline +one file per proc & 1288 & 20 \\ +\hline +H5Part/pHDFf5 (one file) & 773 & 12 \\ +\hline +\end{tabular} +\end{flushleft} +\caption{\label{tab:perf}{64 IBM SP-3 nodes writing $51e6$ particles (6D). }} +%, each having 6 double-precision floating point fields for 64 timesteps over 3 trials.}} +\end{table} +\vspace{-4mm} +\section{Conclusions and Future Work} +The file format will be extended in the near future to integrate fast bitmap indexing +technology~\cite{DEX} in order to provide accelerated queries of data +stored in the file. With fastbit technolgy, a user can efficiently extract subsets of data +using compound query expressions such +as {\it $(velocity > 1e6)$ AND $(0.4 < phase < 1.0)$}. +%Such a query-driven approach offers advantages over scalable technologies aimed at visualizing ever-larger datasets. + +We are also constantly tuning the performance of the parallel data +file format implementation. We will also be porting the H5Part reader +to a wider variety of visualization tools. +%in order to expand the arena +%of tools available for analyzing the stored particle data. +\begin{thebibliography}{9} % Use for 1-9 references +\bibitem{FPAT082} +A. Adelmann, R.D Ryne, C. Siegerist, J. Shalf, "From Visualization to Data Mining With Large Datasets," PAC, 2005. +\bibitem{hdf5hp} +HDF5 Home Page, http://hdf.ncsa.uiuc.edu/HDF5. +\bibitem{SDDS} +Definitions and libraries for SDDS implementation may be found at the link http://www.aps.anl.gov/asd/oag/oagPackages.shtml. +\bibitem{DEX} +K. Stockinger, J. Shalf, W. Bethel, K. Wu. "DEX: Increasing the Capability of Scientific Data Analysis Pipelines by Using Efficient Bitmap Indices to Accelerate Scientific Visualization." Scientific and Statistical Database Management Conference (SDDBM), 2005. +\end{thebibliography} + +\end{document} diff --git a/doc/H5xxx/JAC2003.cls b/doc/H5xxx/JAC2003.cls new file mode 100644 index 0000000..322d531 --- /dev/null +++ b/doc/H5xxx/JAC2003.cls @@ -0,0 +1,217 @@ +%% +%% This file has been developed as a common template for papers +%% destined for electronic production using Adobe Acrobat +%% software for Accelerator Conferences +%% +%% See the JACo Website for more information +%% +%% http://www.cern.ch/accelconf/ +%% + +% Special thanks to John Jowett and Michel Goossens from CERN and +% Martin Comyn at TRIUMF for their significant contributions to +% this class file over the period 1996 to 2000. +% John Poole +% March 2000 + + +% JAC2001.cls is a modified version of JAC2000.cls to produce indented +% first paragraphs after section, subsection and subsubsection headings. +% +% Martin Comyn April 2001 + +\def\fileversion{1.2} +\def\filedate{2003/03/10} +\def\docdate {2003/03/10} + +\newlength{\dsep} +\newlength{\dwid} +\newlength{\dht} +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{JAC2003}[\filedate\space Version \fileversion] +\DeclareOption{acus} + {\setlength{\dwid}{6mm}% + \setlength{\dht}{-18mm} + \setlength{\paperheight}{11in} + \setlength{\paperwidth}{8.5in} + \typeout{Setup for US LETTER PAPER}} +\DeclareOption{aca4} + {\setlength{\dwid}{0mm}% + \setlength{\dht}{0mm}} +\DeclareOption{boxit} +%% +%% This option draws a box on the output text with the correct margins +%% + {\special{!userdict begin /bop-hook{ + gsave + newpath + 58 55 moveto + 58 737 lineto + 539 737 lineto + 539 55 lineto + closepath + stroke + grestore + }def end}} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} + +\ExecuteOptions{aca4} +\ProcessOptions + +\LoadClass[10pt]{article} +%% +%% Using Times fonts produces a Uniform, compact document +%% suitable for the Acrobat Software and printable anywhere. +%% +%% In a 'modern' TeX installation +%% e.g TeXLive Version 3 or later (more information on the JACo Website) +%% one can use the following command +%% + +\renewcommand{\rmdefault}{ptm} + +%% +%% Older installations may require +%% \RequirePackage{times} +%% +\typeout{------------------------------------------------------------------------} +\typeout{LaTeX2e Class file for Accelerator Conference publication for LaTeX2e users} +\typeout{ } +\typeout{Use the boxit option to draw a box on page showing the correct margins} +\typeout{ } +\typeout{Itemize, Enumerate and Description environments are compact versions} +\typeout{------------------------------------------------------------------------} +\typeout{ } + +% +% DIMENSION OF TEXT: + +\setlength{\textheight}{241mm} +\setlength{\textwidth}{170mm} +\setlength{\topmargin}{23mm} +\addtolength{\topmargin}{\dht} +\setlength{\oddsidemargin}{20mm} +\setlength{\evensidemargin}{20mm} +\setlength{\columnsep}{5mm} + + +\hoffset -25.4mm +\voffset -25.4mm + +\columnseprule 0pt % Width of rule between columns. + +% Use Michel Goossens' dense lists +% Prevent infinite loops + +\let\Otemize =\itemize +\let\Onumerate =\enumerate +\let\Oescription =\description +% Zero the vertical spacing parameters +\def\Nospacing{\itemsep=0pt\topsep=0pt\partopsep=0pt\parskip=0pt\parsep=0pt} +% Redefine the environments in terms of the original values +\newenvironment{Itemize}{\Otemize\Nospacing}{\endlist} +\newenvironment{Enumerate}{\Onumerate\Nospacing}{\endlist} +\newenvironment{Description}{\Oescription\Nospacing}{\endlist} + +\renewcommand{\topfraction}{.95} +\renewcommand{\bottomfraction}{.95} +\renewcommand{\textfraction}{0.1} +\renewcommand{\floatpagefraction}{0.8} + +\def\@oddhead{}\def\@evenhead{} +\def\@oddfoot{} +\def\@evenfoot{\@oddfoot} + +%----------------------------------------------------------------------- +% We acknowledge the borrowing of the clever part of +% Steven Gildea's definition of \section +% from geophysi.sty. +% +% \section is tricky because we want to both support \section* and have +% the section title uppercased. + +\def\section{\secdef\@sectionb\@sections} +\def\@sectionb[#1]#2{\@sections{#2}} +\def\@sections#1{\@startsection {section}{1}{\z@} + {2.8ex plus 0.8ex minus .1ex}{1.5ex plus .2ex} + {\large\bf\boldmath\centering}{\uppercase{#1}}} +% Should there be any problem with this, we can revert to the following +% but then the onus is on the user to type the argument of \section in +% uppercase in the input file. +% +%\def\section{\@startsection {section}{1}{\z@}{2.8ex plus 0.8ex minus.1ex} +% {1.5ex plus .2ex}{\large\bf\boldmath\centering}} + +\def\subsection{\@startsection{subsection}{2}{\z@}{2.6ex plus .8ex minus + .17ex}{1.2ex plus .17ex}{\large\it}} +\def\subsubsection{\@startsection{subsubsection}{3}{\parindent} + {2.5ex plus .7ex minus .17ex}{-1em}{\normalsize\bf}} +\def\paragraph{\@startsection + {paragraph}{4}{\z@}{2.5ex plus .7ex minus .17ex}{-1em}{\normalsize\it}} +\def\subparagraph{\@startsection + {subparagraph}{4}{\parindent}{2.25ex plus .7ex minus + .17ex}{-1em}{\normalsize\bf}} + +\setcounter{secnumdepth}{0} + +% This definition of \maketitle taken from article.sty, and has been +% somewhat modified. + +\def\maketitle{\par + \begingroup + \def\thefootnote{\fnsymbol{footnote}} + \def\@makefnmark{\hbox + to 5pt{$^{\@thefnmark}$\hss}} + \twocolumn[\@maketitle] + \@thanks + \endgroup + \setcounter{footnote}{0} + \let\maketitle\relax + \let\@maketitle\relax + \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax} + +\newlength{\titleblockheight} % so user can change it if need be +\setlength{\titleblockheight}{3.5cm} + + +\def\@maketitle{\vbox to \titleblockheight {\hsize\textwidth + \linewidth\hsize \vskip 3pt \centering + {\Large\bf \@title \par} + \vskip 2em % Vertical space after title. + {\large\begin{tabular}[t]{@{}c@{}}\@author \end{tabular}\par} + \vfil}} + + +% The \copyrightspace command is used to produce a blank space in the first +% column where a copyright notice may go. It works by producing a +% blank footnote of the appropriate size. Note that it should appear +% after any \footnote commands that produce footnotes for the first +% column. Adjusted to leave just 1cm. + +\def\copyrightspace{\footnotetext[0]{\mbox{}\vrule height 1cm width 0pt}} + +\def\abstract{\subsection*{Abstract}} +\def\endabstract{\par} + +% Redefine to use smaller fonts +\def\thebibliography#1{\setlength{\itemsep}{0pt}\setlength{\parsep}{0pt} + \section*{REFERENCES\@mkboth + {REFERENCES}{REFERENCES}}\small\list + {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth + \advance\leftmargin\labelsep + \usecounter{enumi}} + \def\newblock{\hskip .11em plus .33em minus .07em} + \sloppy\clubpenalty4000\widowpenalty4000 + \sfcode`\.=1000\relax} + +\let\endthebibliography=\endlist + +\twocolumn +\sloppy +\parindent 1em +\leftmargini 2em +\leftmargin\leftmargini +\leftmarginv .5em +\leftmarginvi .5em +\flushbottom +%----------------------------------------------------------------------- diff --git a/doc/H5xxx/makefile b/doc/H5xxx/makefile new file mode 100755 index 0000000..4a6f230 --- /dev/null +++ b/doc/H5xxx/makefile @@ -0,0 +1,14 @@ +################################################# +##BEGIN OF makefile "makefile" - using the gnu-compiler g++ +##This file is used by the Make command. +################################################### + +FILE=H5xxx + +all: $(FILE).tex + latex $(FILE).tex +#bibtex $(FILE) + dvips -j0 $(FILE).dvi -o $(FILE).ps +# dvips $(FILE).dvi -o $(FILE).ps -x 1200 -O 10mm,15mm +clean: + rm *~ *.bbl *.aux *.blg *.log *.dvi *.ps diff --git a/doc/InternalLayout.html b/doc/InternalLayout.html new file mode 100755 index 0000000..5e26b65 --- /dev/null +++ b/doc/InternalLayout.html @@ -0,0 +1,54 @@ + + + +H5Part, Logical Internal HDF5 File Layout + + + + + +
    +

    H5Part: Logical Internal HDF5 File Layout

    +

    +HDF5 is extremely flexible in the sense that it allows the user to define a higher level data model to describe domain-specific data relationships. This flexibility however makes it necessary to develop an agreement on the logical layout of the data. The H5Part data model consists of Particle groups corresponding to the simulation time steps, each with seven datasets corresponding to x, px, y, py, z, pz, id for each particle. Attributes can be added to the file and to the datasets. +

    +
    +
    +HDF5 "parttest.h5" {
    +GROUP "/" {
    +   GROUP "Particles#0" {
    +      DATASET "id" {
    +         DATATYPE  H5T_STD_I64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +      DATASET "px" {
    +         DATATYPE  H5T_IEEE_F64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +      DATASET "py" {
    +         DATATYPE  H5T_IEEE_F64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +      DATASET "pz" {
    +         DATATYPE  H5T_IEEE_F64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +      DATASET "x" {
    +         DATATYPE  H5T_IEEE_F64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +      DATASET "y" {
    +         DATATYPE  H5T_IEEE_F64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +      DATASET "z" {
    +         DATATYPE  H5T_IEEE_F64LE
    +         DATASPACE  SIMPLE { ( 10 ) / ( 10 ) }
    +      }
    +   }
    +
    +

    +See hdf5.pdf for an introduction on the use of HDF5. +

    +
    + diff --git a/doc/ReferencePages/H5PartF_8c.html b/doc/ReferencePages/H5PartF_8c.html new file mode 100644 index 0000000..4757d6c --- /dev/null +++ b/doc/ReferencePages/H5PartF_8c.html @@ -0,0 +1,2181 @@ + + +H5Part: H5PartF.c File Reference + + + + +

    H5PartF.c File Reference

    #include "H5Part.h"
    +#include "Underscore.h"
    +#include <hdf5.h>
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Defines

    #define f_h5pt_openr   F77NAME(h5pt_openr_,h5pt_openr,H5PT_OPENR)
    #define f_h5pt_openw   F77NAME(h5pt_openw_,h5pt_openw,H5PT_OPENW)
    #define f_h5pt_openr_par   F77NAME(h5pt_openr_par_,h5pt_openr_par,H5PT_OPENR_PAR)
    #define f_h5pt_openw_par   F77NAME(h5pt_openw_par_,h5pt_openw_par,H5PT_OPENW_PAR)
    #define f_h5pt_close   F77NAME(h5pt_close_,h5pt_close,H5PT_CLOSE)
    #define f_h5pt_isvalid   F77NAME(h5pt_isvalid_,h5pt_isvalid,H5PT_ISVALID)
    #define f_h5pt_setnpoints   F77NAME(h5pt_setnpoints_,h5pt_setnpoints,H5PT_SETNPOINTS)
    #define f_h5pt_setstep   F77NAME(h5pt_setstep_,h5pt_setstep,H5PT_SETSTEP)
    #define f_h5pt_writedata_r8   F77NAME(h5pt_writedata_r8_,h5pt_writedata_r8,H5PT_WRITEDATA_R8)
    #define f_h5pt_writedata_i8   F77NAME(h5pt_writedata_i8_,h5pt_writedata_i8,H5PT_WRITEDATA_I8)
    #define f_h5pt_getnsteps   F77NAME(h5pt_getnsteps_,h5pt_getnsteps,H5PT_GETNSTEPS)
    #define f_h5pt_getndatasets   F77NAME(h5pt_getndatasets_,h5pt_getndatasets,H5PT_GETNDATASETS)
    #define f_h5pt_getnpoints   F77NAME(h5pt_getnpoints_,h5pt_getnpoints,H5PT_GETNPOINTS)
    #define f_h5pt_getdatasetname   F77NAME(h5pt_getdatasetname_,h5pt_getdatasetname,H5PT_GETDATASETNAME)
    #define f_h5pt_setview   F77NAME(h5pt_setview_,h5pt_setview,H5PT_SETVIEW)
    #define f_h5pt_resetview   F77NAME(h5pt_resetview_,h5pt_resetview,H5PT_RESETVIEW)
    #define f_h5pt_hasview   F77NAME(h5pt_hasview_,h5pt_hasview,H5PT_HASVIEW)
    #define f_h5pt_readdata_r8   F77NAME(h5pt_readdata_r8_,h5pt_readdata_r8,H5PT_READDATA_R8)
    #define f_h5pt_readdata_i8   F77NAME(h5pt_readdata_i8_,h5pt_readdata_i8,H5PT_READDATA_I8)
    #define f_h5pt_readdata   F77NAME(h5pt_readdata_,h5pt_readdata,H5PT_READDATA)
    #define f_h5pt_writefileattrib_r8   F77NAME(h5pt_writefileattrib_r8_,h5pt_writefileattrib_r8,H5PT_WRITEFILEATTRIB_R8)
    #define f_h5pt_writefileattrib_i8   F77NAME(h5pt_writefileattrib_i8_,h5pt_writefileattrib_i8,H5PT_WRITEFILEATTRIB_I8)
    #define f_h5pt_writefileattrib_string   F77NAME(h5pt_writefileattrib_string_,h5pt_writefileattrib_string,H5PT_writefileattrib_string)
    #define f_h5pt_writestepattrib_r8   F77NAME(h5pt_writestepattrib_r8_,h5pt_writestepattrib_r8,H5PT_WRITESTEPATTRIB_R8)
    #define f_h5pt_writestepattrib_i8   F77NAME(h5pt_writestepattrib_i8_,h5pt_writestepattrib_i8,H5PT_WRITESTEPATTRIB_I8)
    #define f_h5pt_writestepattrib_string   F77NAME(h5pt_writestepattrib_string_,h5pt_writestepattrib_string,H5PT_WRITESTEPATTRIB_STRING)
    #define f_h5pt_getnstepattribs   F77NAME(h5pt_getnstepattribs_,h5pt_getnstepattribs,H5PT_GETNSTEPATTRIBS)
    #define f_h5pt_getnfileattribs   F77NAME(h5pt_getnfileattribs_,h5pt_getnfileattribs,H5PT_GETNFILEATTRIBS)
    #define f_h5pt_getstepattribinfo   F77NAME(h5pt_getstepattribinfo_,h5pt_getstepattribinfo,H5PT_GETSTEPATTRIBINFO)
    #define f_h5pt_getfileattribinfo   F77NAME(h5pt_getfileattribinfo_,h5pt_getfileattribinfo,H5PT_GETFILEATTRIBINFO)
    #define f_h5pt_readstepattrib   F77NAME(h5pt_readstepattrib_,h5pt_readstepattrib,H5PT_READSTEPATTRIB)
    #define f_h5pt_readfileattrib   F77NAME(h5pt_readfileattrib_,h5pt_readfileattrib,H5PT_READFILEATTRIB)

    Functions

    haddr_t f_h5pt_openr (char *file, int flen)
    haddr_t f_h5pt_openw (char *file, int flen)
    void f_h5pt_close (haddr_t *file)
    int f_h5pt_isvalid (haddr_t *file)
    void f_h5pt_setnpoints (haddr_t *file, uint64_t *np)
    void f_h5pt_setstep (haddr_t *file, int *step)
    void f_h5pt_writedata_r8 (haddr_t *file, char *name, void *data, int flen)
    void f_h5pt_writedata_i8 (haddr_t *file, char *name, void *data, int flen)
    int f_h5pt_getnsteps (haddr_t *file)
    int f_h5pt_getndatasets (haddr_t *file)
    haddr_t f_h5pt_getnpoints (haddr_t *file)
    int f_h5pt_getdatasetname (haddr_t *file, int *index, char *name, int namelen)
    uint64_t f_h5pt_getnumpoints (haddr_t *file)
    void f_h5pt_setview (haddr_t *file, int64_t *start, int64_t *end)
    void f_h5pt_resetview (haddr_t *file)
    int f_h5pt_hasview (haddr_t *file)
    void f_h5pt_getview (haddr_t *file, int64_t *start, int64_t *end)
    int f_h5pt_readdata_r8 (haddr_t *file, char *name, void *array, int namelen)
    int f_h5pt_readdata_i8 (haddr_t *file, char *name, void *array, int namelen)
    int f_h5pt_writefileattrib_r8 (haddr_t *f, char *name, void *attrib, int *nelem, int namelen)
    int f_h5pt_writefileattrib_i8 (haddr_t *f, char *name, void *attrib, int *nelem, int namelen)
    int f_h5pt_writefileattrib_string (haddr_t *f, char *name, char *attrib, int namelen, int attriblen)
    int f_h5pt_writestepattrib_r8 (haddr_t *f, char *name, void *attrib, int *nelem, int namelen)
    int f_h5pt_writestepattrib_i8 (haddr_t *f, char *name, void *attrib, int *nelem, int namelen)
    int f_h5pt_writestepattrib_string (haddr_t *f, char *name, char *attrib, int namelen, int attriblen)
    int f_h5pt_getnstepattribs (haddr_t *f)
    int f_h5pt_getnfileattribs (haddr_t *f)
    int f_h5pt_getstepattribinfo (haddr_t *f, int *idx, char *name, int *nelem, int maxnamelen)
    int f_h5pt_getfileattribinfo (haddr_t *f, int *idx, char *name, int *nelem, int maxnamelen)
    int f_h5pt_readstepattrib (haddr_t *f, char *name, void *data, int namelen)
    int f_h5pt_readfileattrib (haddr_t *f, char *name, void *data, int namelen)
    +

    Define Documentation

    +

    + + + + +
    + + + + +
    #define f_h5pt_close   F77NAME(h5pt_close_,h5pt_close,H5PT_CLOSE)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getdatasetname   F77NAME(h5pt_getdatasetname_,h5pt_getdatasetname,H5PT_GETDATASETNAME)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getfileattribinfo   F77NAME(h5pt_getfileattribinfo_,h5pt_getfileattribinfo,H5PT_GETFILEATTRIBINFO)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getndatasets   F77NAME(h5pt_getndatasets_,h5pt_getndatasets,H5PT_GETNDATASETS)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getnfileattribs   F77NAME(h5pt_getnfileattribs_,h5pt_getnfileattribs,H5PT_GETNFILEATTRIBS)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getnpoints   F77NAME(h5pt_getnpoints_,h5pt_getnpoints,H5PT_GETNPOINTS)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getnstepattribs   F77NAME(h5pt_getnstepattribs_,h5pt_getnstepattribs,H5PT_GETNSTEPATTRIBS)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getnsteps   F77NAME(h5pt_getnsteps_,h5pt_getnsteps,H5PT_GETNSTEPS)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_getstepattribinfo   F77NAME(h5pt_getstepattribinfo_,h5pt_getstepattribinfo,H5PT_GETSTEPATTRIBINFO)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_hasview   F77NAME(h5pt_hasview_,h5pt_hasview,H5PT_HASVIEW)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_isvalid   F77NAME(h5pt_isvalid_,h5pt_isvalid,H5PT_ISVALID)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_openr   F77NAME(h5pt_openr_,h5pt_openr,H5PT_OPENR)
    +
    + + + + + +
    +   + + +

    +open/close interface

    +

    + + + + +
    + + + + +
    #define f_h5pt_openr_par   F77NAME(h5pt_openr_par_,h5pt_openr_par,H5PT_OPENR_PAR)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_openw   F77NAME(h5pt_openw_,h5pt_openw,H5PT_OPENW)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_openw_par   F77NAME(h5pt_openw_par_,h5pt_openw_par,H5PT_OPENW_PAR)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_readdata   F77NAME(h5pt_readdata_,h5pt_readdata,H5PT_READDATA)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_readdata_i8   F77NAME(h5pt_readdata_i8_,h5pt_readdata_i8,H5PT_READDATA_I8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_readdata_r8   F77NAME(h5pt_readdata_r8_,h5pt_readdata_r8,H5PT_READDATA_R8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_readfileattrib   F77NAME(h5pt_readfileattrib_,h5pt_readfileattrib,H5PT_READFILEATTRIB)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_readstepattrib   F77NAME(h5pt_readstepattrib_,h5pt_readstepattrib,H5PT_READSTEPATTRIB)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_resetview   F77NAME(h5pt_resetview_,h5pt_resetview,H5PT_RESETVIEW)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_setnpoints   F77NAME(h5pt_setnpoints_,h5pt_setnpoints,H5PT_SETNPOINTS)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_setstep   F77NAME(h5pt_setstep_,h5pt_setstep,H5PT_SETSTEP)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_setview   F77NAME(h5pt_setview_,h5pt_setview,H5PT_SETVIEW)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writedata_i8   F77NAME(h5pt_writedata_i8_,h5pt_writedata_i8,H5PT_WRITEDATA_I8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writedata_r8   F77NAME(h5pt_writedata_r8_,h5pt_writedata_r8,H5PT_WRITEDATA_R8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writefileattrib_i8   F77NAME(h5pt_writefileattrib_i8_,h5pt_writefileattrib_i8,H5PT_WRITEFILEATTRIB_I8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writefileattrib_r8   F77NAME(h5pt_writefileattrib_r8_,h5pt_writefileattrib_r8,H5PT_WRITEFILEATTRIB_R8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writefileattrib_string   F77NAME(h5pt_writefileattrib_string_,h5pt_writefileattrib_string,H5PT_writefileattrib_string)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writestepattrib_i8   F77NAME(h5pt_writestepattrib_i8_,h5pt_writestepattrib_i8,H5PT_WRITESTEPATTRIB_I8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writestepattrib_r8   F77NAME(h5pt_writestepattrib_r8_,h5pt_writestepattrib_r8,H5PT_WRITESTEPATTRIB_R8)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define f_h5pt_writestepattrib_string   F77NAME(h5pt_writestepattrib_string_,h5pt_writestepattrib_string,H5PT_WRITESTEPATTRIB_STRING)
    +
    + + + + + +
    +   + + +

    +

    +


    Function Documentation

    +

    + + + + +
    + + + + + + + + + +
    void f_h5pt_close haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_getdatasetname haddr_t *  file,
    int *  index,
    char *  name,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_getfileattribinfo haddr_t *  f,
    int *  idx,
    char *  name,
    int *  nelem,
    int  maxnamelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int f_h5pt_getndatasets haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int f_h5pt_getnfileattribs haddr_t *  f  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    haddr_t f_h5pt_getnpoints haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int f_h5pt_getnstepattribs haddr_t *  f  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int f_h5pt_getnsteps haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    uint64_t f_h5pt_getnumpoints haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_getstepattribinfo haddr_t *  f,
    int *  idx,
    char *  name,
    int *  nelem,
    int  maxnamelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void f_h5pt_getview haddr_t *  file,
    int64_t *  start,
    int64_t *  end
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int f_h5pt_hasview haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int f_h5pt_isvalid haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    haddr_t f_h5pt_openr char *  file,
    int  flen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    haddr_t f_h5pt_openw char *  file,
    int  flen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_readdata_i8 haddr_t *  file,
    char *  name,
    void *  array,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_readdata_r8 haddr_t *  file,
    char *  name,
    void *  array,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_readfileattrib haddr_t *  f,
    char *  name,
    void *  data,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_readstepattrib haddr_t *  f,
    char *  name,
    void *  data,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    void f_h5pt_resetview haddr_t *  file  ) 
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    void f_h5pt_setnpoints haddr_t *  file,
    uint64_t *  np
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    void f_h5pt_setstep haddr_t *  file,
    int *  step
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void f_h5pt_setview haddr_t *  file,
    int64_t *  start,
    int64_t *  end
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void f_h5pt_writedata_i8 haddr_t *  file,
    char *  name,
    void *  data,
    int  flen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void f_h5pt_writedata_r8 haddr_t *  file,
    char *  name,
    void *  data,
    int  flen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_writefileattrib_i8 haddr_t *  f,
    char *  name,
    void *  attrib,
    int *  nelem,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_writefileattrib_r8 haddr_t *  f,
    char *  name,
    void *  attrib,
    int *  nelem,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_writefileattrib_string haddr_t *  f,
    char *  name,
    char *  attrib,
    int  namelen,
    int  attriblen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_writestepattrib_i8 haddr_t *  f,
    char *  name,
    void *  attrib,
    int *  nelem,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_writestepattrib_r8 haddr_t *  f,
    char *  name,
    void *  attrib,
    int *  nelem,
    int  namelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int f_h5pt_writestepattrib_string haddr_t *  f,
    char *  name,
    char *  attrib,
    int  namelen,
    int  attriblen
    +
    + + + + + +
    +   + + +

    +

    +


    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/H5Part_8c.html b/doc/ReferencePages/H5Part_8c.html new file mode 100644 index 0000000..332c457 --- /dev/null +++ b/doc/ReferencePages/H5Part_8c.html @@ -0,0 +1,2205 @@ + + +H5Part: H5Part.c File Reference + + + + +

    H5Part.c File Reference

    #include <stdio.h>
    +#include <stdlib.h>
    +#include <string.h>
    +#include <hdf5.h>
    +#include "H5Part.h"
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Classes

    struct  H5IO_getname_t

    Typedefs

    typedef H5IO_getname_t H5IO_getname_t

    Functions

    herr_t H5PartIOcounter (hid_t group_id, const char *member_name, void *operator_data)
    H5PartFileH5PartOpenFileParallel (const char *filename, unsigned flags)
    H5PartFileH5PartOpenFile (const char *filename, unsigned flags)
    int H5PartFileIsValid (H5PartFile *f)
    void H5PartCloseFile (H5PartFile *f)
    void H5PartSetNumParticles (H5PartFile *f, long long nparticles)
    int H5PartWriteDataFloat64 (H5PartFile *f, char *name, double *array)
    int H5PartWriteDataInt64 (H5PartFile *f, char *name, long long *array)
    int H5PartWriteFileAttribString (H5PartFile *f, char *name, char *attrib)
    int H5PartWriteStepAttribString (H5PartFile *f, char *name, char *attrib)
    int H5PartWriteStepAttrib (H5PartFile *f, char *name, hid_t type, void *value, int nelem)
    int H5PartWriteAttrib (H5PartFile *f, char *name, hid_t type, void *value, int nelem)
    int H5PartWriteFileAttrib (H5PartFile *f, char *name, hid_t type, void *value, int nelem)
    herr_t H5PartAttribcounter (hid_t group_id, const char *member_name, void *operator_data)
    int H5PartGetNumStepAttribs (H5PartFile *f)
    int H5PartGetNumFileAttribs (H5PartFile *f)
    hid_t H5PartNormType (hid_t type)
    void H5PartGetStepAttribInfo (H5PartFile *f, int idx, char *name, size_t maxname, hid_t *type, int *nelem)
    void H5PartGetFileAttribInfo (H5PartFile *f, int idx, char *name, size_t maxname, hid_t *type, int *nelem)
    int H5PartReadStepAttrib (H5PartFile *f, char *name, void *data)
    void H5PartReadAttrib (H5PartFile *f, char *name, void *data)
    int H5PartReadFileAttrib (H5PartFile *f, char *name, void *data)
    void H5PartSetStep (H5PartFile *f, int step)
    herr_t H5PartDScounter (hid_t group_id, const char *member_name, void *operator_data)
    herr_t H5IOgetname (hid_t group_id, const char *member_name, void *operator_data)
    int H5PartGetNumSteps (H5PartFile *f)
    int H5PartGetNumDatasets (H5PartFile *f)
    int H5PartGetDatasetName (H5PartFile *f, int _index, char *name, int maxlen)
    hid_t H5PartGetDiskShape (H5PartFile *f, hid_t dataset)
    hid_t H5PartGetMemShape (H5PartFile *f, hid_t dataset)
    herr_t H5PartGetFirstDS (hid_t group_id, const char *member_name, void *operator_data)
    long long H5PartGetNumParticles (H5PartFile *f)
    void H5PartSetView (H5PartFile *f, long long start, long long end)
    int H5PartGetView (H5PartFile *f, long long *start, long long *end)
    void H5PartSetCanonicalView (H5PartFile *f)
    int H5PartReadDataFloat64 (H5PartFile *f, char *name, double *array)
    int H5PartReadDataInt64 (H5PartFile *f, char *name, long long *array)
    int H5PartReadParticleStep (H5PartFile *f, int step, double *x, double *y, double *z, double *px, double *py, double *pz, long long *id)
    herr_t H5NameExists (hid_t group_id, const char *member_name, void *v)
    int H5PartFileHasName (H5PartFile *f, char *dir, char *name)
    int H5PartStashFile (H5PartFile *f, char *filename)
    int H5PartUnstashFile (H5PartFile *f, char *filename, char *outputpath)
    int H5PartGetNumStashFiles (H5PartFile *f)
    int H5PartFileGetStashFileName (H5PartFile *f, int nameindex, char *filename, int maxnamelen)
    +

    Typedef Documentation

    +

    + + + + +
    + + + + +
    typedef struct H5IO_getname_t H5IO_getname_t
    +
    + + + + + +
    +   + + +

    +H5IO_getname_t: Private

    +


    Function Documentation

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    herr_t H5IOgetname hid_t  group_id,
    const char *  member_name,
    void *  operator_data
    +
    + + + + + +
    +   + + +

    +H5IOgetname: Private

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    herr_t H5NameExists hid_t  group_id,
    const char *  member_name,
    void *  v
    +
    + + + + + +
    +   + + +

    +H5NameExists: Private

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    herr_t H5PartAttribcounter hid_t  group_id,
    const char *  member_name,
    void *  operator_data
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    void H5PartCloseFile H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartCloseFile: closes an open file.

    Parameters:
    + + +
    f filehandle of the file to close
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    herr_t H5PartDScounter hid_t  group_id,
    const char *  member_name,
    void *  operator_data
    +
    + + + + + +
    +   + + +

    +H5PartDScounter: Private

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartFileGetStashFileName H5PartFile f,
    int  nameindex,
    char *  filename,
    int  maxnamelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartFileHasName H5PartFile f,
    char *  dir,
    char *  name
    +
    + + + + + +
    +   + + +

    +H5PartFileHasName: Private

    +

    + + + + +
    + + + + + + + + + +
    int H5PartFileIsValid H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartFileIsValid: checks if a file was successfully opened.

    Parameters:
    + + +
    f filehandle of the file to check validity
    +
    +
    Returns:
    1 if success 0 if failure
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartGetDatasetName H5PartFile f,
    int  _index,
    char *  name,
    int  maxlen
    +
    + + + + + +
    +   + + +

    +H5PartGetDatasetName: This reads the name of a datasetes specified by it's index.

    Parameters:
    + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    _index integer specifying the index of the dataset. If the number of datasets is nds, the range of index is 0 to nds-1.
    name A null-terminated string for the name of the dataset.
    maxlen An integer specifying the maximum length of the name array.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    hid_t H5PartGetDiskShape H5PartFile f,
    hid_t  dataset
    +
    + + + + + +
    +   + + +

    +H5PartGetDiskShape: Private

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartGetFileAttribInfo H5PartFile f,
    int  idx,
    char *  name,
    size_t  maxname,
    hid_t *  type,
    int *  nelem
    +
    + + + + + +
    +   + + +

    +H5PartGetFileAttribInfo: gets the name, type and number of elements of a file attribute .

    Parameters:
    + + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    idx Index of the attribute
    name A null-terminated string with the name of the attribute.
    maxname The length of the attribute name.
    type One of the following ones: H5T_NATIVE_DOUBLE H5T_NATIVE_INT64 H5T_NATIVE_CHAR.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    void.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    herr_t H5PartGetFirstDS hid_t  group_id,
    const char *  member_name,
    void *  operator_data
    +
    + + + + + +
    +   + + +

    +H5PartGetFirstDS: Private

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    hid_t H5PartGetMemShape H5PartFile f,
    hid_t  dataset
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumDatasets H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumDatasets: This reads the number of datasetes that are stored at a particular time step.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of datasets.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumFileAttribs H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumFileAttribs: gets the number of attributes bound to the file.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of attributes of the File.
    +
    +

    + + + + +
    + + + + + + + + + +
    long long H5PartGetNumParticles H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumParticles: This gets the number of particles that are stored in the current timestep. It will arbitrarily select a timestep if you haven't already set the timestep with H5PartSetStep().

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of particles in current timestep.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumStashFiles H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumStashFiles: returns the number of stashed files.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    Number of stashed files.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumStepAttribs H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumStepAttribs: gets the number of attributes bound to the current step. The step has to be set with H5PartSetStep().

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of attributes of the current step.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumSteps H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumSteps: This reads the number of datasteps that are currently stored in the datafile. (simple return of an int). It works for both reading and writing of files, but is probably only typically used when you are reading.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of timesteps currently stored in the file.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartGetStepAttribInfo H5PartFile f,
    int  idx,
    char *  name,
    size_t  maxname,
    hid_t *  type,
    int *  nelem
    +
    + + + + + +
    +   + + +

    +H5PartGetStepAttribInfo: gets the name, type and number of elements of a step attribute .

    Parameters:
    + + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    idx Index of the attribute
    name A null-terminated string with the name of the attribute.
    maxname the length of the name of the attribute.
    type One of the following ones: H5T_NATIVE_DOUBLE H5T_NATIVE_INT64 H5T_NATIVE_CHAR.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    void.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartGetView H5PartFile f,
    long long *  start,
    long long *  end
    +
    + + + + + +
    +   + + +

    +H5PartGetView: Allows you to query the current view. Start and End will be -1 if there is no current view established. Use H5PartHasView to see if the view is smaller than the total dataset.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    start start particle
    end end particle
    +
    +
    Returns:
    the number of elements in the view
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    herr_t H5PartIOcounter hid_t  group_id,
    const char *  member_name,
    void *  operator_data
    +
    + + + + + +
    +   + + +

    +H5PartIOcounter: This is an entirely internal callback function which is used in conjunction with HDF5 iterators. The HDF5 Group iterator will call this repeatedly in order to count how many timesteps of data have been stored in a particular file. This is used by H5PartGetNumSteps().

    +

    + + + + +
    + + + + + + + + + +
    hid_t H5PartNormType hid_t  type  ) 
    +
    + + + + + +
    +   + + +

    +H5PartNormType: Private

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    H5PartFile* H5PartOpenFile const char *  filename,
    unsigned  flags
    +
    + + + + + +
    +   + + +

    +H5PartOpenFile: Opens file with specified filename. If you open with flag H5PART_WRITE, it will truncate any file with the specified filename and start writing to it. If you open with H5PART_READ, then it will open the file readonly.

    +H5PartFile should be treated as an essentially opaque datastructure. It acts as the file handle, but internally it maintains several key state variables associated with the file.

    +

    Parameters:
    + + + +
    filename The name of the IEEEIO data file to open. The typical extension for these files is .h5
    flags The accessmode for the file. This is one of 2 different access modes: H5PART_READ, H5PART_WRITE.
    +
    +
    Returns:
    A new filehandle with an open file or NULL if error.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    H5PartFile* H5PartOpenFileParallel const char *  filename,
    unsigned  flags
    +
    + + + + + +
    +   + + +

    +H5PartOpenFileParallel: Opens file with specified filename. If you open with flag H5PART_WRITE, it will truncate any file with the specified filename and start writing to it. If you open with H5PART_READ, then it will open the file readonly.

    +H5PartFile should be treated as an essentially opaque datastructure. It acts as the file handle, but internally it maintains several key state variables associated with the file.

    +

    Parameters:
    + + + + +
    filename The name of the IEEEIO data file to open. The typical extension for these files is .h5
    flags The accessmode for the file. This is one of 2 different access modes: H5PART_READ, H5PART_WRITE.
    comm This argument is only available if the program has been compiled with the PARALLEL_IO
    +
    +
    Returns:
    A new filehandle with an open file or NULL if error.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartReadAttrib H5PartFile f,
    char *  name,
    void *  data
    +
    + + + + + +
    +   + + +

    +H5PartReadAttrib: reads a step attribute NOTE: it has been superseeded by H5PartReadStepAttrib.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string with the name of the attribute.
    data of the attribute.
    +
    +
    Returns:
    1 on success, -1 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadDataFloat64 H5PartFile f,
    char *  name,
    double *  array
    +
    + + + + + +
    +   + + +

    +H5PartReadDataFloat64: This reads in an individual array from a particlar timestep. If you haven't selected a particular timestep, it will pick the current one.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer to read array of particle data. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadDataInt64 H5PartFile f,
    char *  name,
    long long *  array
    +
    + + + + + +
    +   + + +

    +H5PartReadDataInt64: This reads in an individual array from a particlar timestep. If you haven't selected a particular timestep, it will pick the current one.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer to read array of particle data. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadFileAttrib H5PartFile f,
    char *  name,
    void *  data
    +
    + + + + + +
    +   + + +

    +H5PartReadFileAttrib: reads a file attribute

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string with the name of the attribute.
    data Value of the attribute.
    +
    +
    Returns:
    1 on success, -1 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadParticleStep H5PartFile f,
    int  step,
    double *  x,
    double *  y,
    double *  z,
    double *  px,
    double *  py,
    double *  pz,
    long long *  id
    +
    + + + + + +
    +   + + +

    +H5PartReadParticleStep: This is the mongo read function that pulls in all of the data for a given timestep in one shot. It also takes the timestep as an argument and will call H5PartSetStep() internally so that you don't have to make that call separately. See also: H5PartReadArray() if you want to just read in one of the many arrays.

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadStepAttrib H5PartFile f,
    char *  name,
    void *  data
    +
    + + + + + +
    +   + + +

    +H5PartReadStepAttrib: reads a step attribute

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string with the name of the attribute.
    data of the attribute.
    +
    +
    Returns:
    1 on success, -1 on failure.
    +
    +

    + + + + +
    + + + + + + + + + +
    void H5PartSetCanonicalView H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5SetCanonicalView: If it is too tedious to manually set the start and end coordinates for a view, the H5SetCanonicalView() will automatically select an appropriate domain decomposition of the data arrays for the degree of parallelism and set the "view" accordingly.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    void H5PartSetNumParticles H5PartFile f,
    long long  nparticles
    +
    + + + + + +
    +   + + +

    +H5PartSetNumParticles: This function's sole purpose is to prevent needless creation of new HDF5 DataSpace handles if the number of particles is invariant throughout the sim. That's its only reason for existence. After you call this subroutine, all subsequent operations will assume this number of particles will be written.

    Parameters:
    + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    nparticles A long long integer specifying the number of particles
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    void H5PartSetStep H5PartFile f,
    int  step
    +
    + + + + + +
    +   + + +

    +H5PartSetStep: When writing data to a file the current time step must be set (even if there is only one). In a file with N time steps, the steps are numbered from 0 to N-1.

    Parameters:
    + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    step the time step to set.
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartSetView H5PartFile f,
    long long  start,
    long long  end
    +
    + + + + + +
    +   + + +

    +H5SetView: For parallel I/O or for subsetting operations on the datafile, the H5SetView subroutine allows you to define a subset of the total particle dataset to read. The concept of "view" works for both serial and for parallel I/O. The "view" will remain in effect until a new view is set, or the number of particles in a dataset changes, or the view is "unset" by calling H5SetView(file,-1,-1);

    +Before you set a view, the H5PartGetNumParticles will return the total number of particles in a file (even for the parallel reads). However, after you set a view, it will return the number of particles contained in the view.

    +The range is inclusive (the start and the end index).

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    start start particle
    end end particle
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    int H5PartStashFile H5PartFile f,
    char *  filename
    +
    + + + + + +
    +   + + +

    +NOTE: it's missing the read! H5PartStashFile: stash a file in the hdf5 file. If it does not exists a UserData and a Files group will be created. /param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). /param filename A null-terminated string for the name of the filename. /return 1 on succes, 0 on failure.

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartUnstashFile H5PartFile f,
    char *  filename,
    char *  outputpath
    +
    + + + + + +
    +   + + +

    +H5PartUnstashFile: unstash a file in the hdf5 file. /param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). /param filename A null-terminated string for the name of the filename. /param The path to the directory to create the file. /return 1 on succes, 0 on failure.

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteAttrib H5PartFile f,
    char *  name,
    hid_t  type,
    void *  value,
    int  nelem
    +
    + + + + + +
    +   + + +

    +H5PartWriteAttr: writes a step attribute. Note: this call has been superseeded by H5PartWriteStepAttr.

    +

    Parameters:
    + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    type One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR.
    value Value of the attribute.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteDataFloat64 H5PartFile f,
    char *  name,
    double *  array
    +
    + + + + + +
    +   + + +

    +H5PartWriteDataFloat64: After setting the number of particles with H5PartSetNumParticles() and the current timestep using H5PartSetStep(), you can start writing datasets into the file. Each dataset has a name associated with it (chosen by the user) in order to facilitate later retrieval. The writing routines also implicitly store the datatype of the array so that the array can be reconstructed properly on other systems with incompatible type representations. The data is committed to disk before the routine returns. All data that is written after setting the timestep is associated with that timestep. While the number of particles can change for each timestep, you cannot change the number of particles in the middle of a given timestep.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer containing an array of particle data to commit to disk. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteDataInt64 H5PartFile f,
    char *  name,
    long long *  array
    +
    + + + + + +
    +   + + +

    +H5PartWriteDataInt64: After setting the number of particles with H5PartSetNumParticles() and the current timestep using H5PartSetStep(), you can start writing datasets into the file. Each dataset has a name associated with it (chosen by the user) in order to facilitate later retrieval. The writing routines also implicitly store the datatype of the array so that the array can be reconstructed properly on other systems with incompatible type representations. The data is committed to disk before the routine returns. All data that is written after setting the timestep is associated with that timestep. While the number of particles can change for each timestep, you cannot change the number of particles in the middle of a given timestep.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer containing an array of particle data to commit to disk. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteFileAttrib H5PartFile f,
    char *  name,
    hid_t  type,
    void *  value,
    int  nelem
    +
    + + + + + +
    +   + + +

    +H5PartWriteStepAttr: writes a string attribute bound to a step.

    +

    Parameters:
    + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    type One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR.
    value Value of the attribute.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteFileAttribString H5PartFile f,
    char *  name,
    char *  attrib
    +
    + + + + + +
    +   + + +

    +H5PartWriteFileAttribString: writes a string attribute bound to a file.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    attrib A null-terminated string for the attribute.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteStepAttrib H5PartFile f,
    char *  name,
    hid_t  type,
    void *  value,
    int  nelem
    +
    + + + + + +
    +   + + +

    +H5PartWriteStepAttrib: writes a step attribute.

    Parameters:
    + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    type One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR.
    value Value of the attribute.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteStepAttribString H5PartFile f,
    char *  name,
    char *  attrib
    +
    + + + + + +
    +   + + +

    +H5PartWriteStepAttrString: writes a string attribute bound to the current step.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    attrib A null-terminated string for the attribute.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +


    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/H5Part_8h-source.html b/doc/ReferencePages/H5Part_8h-source.html new file mode 100644 index 0000000..a57a606 --- /dev/null +++ b/doc/ReferencePages/H5Part_8h-source.html @@ -0,0 +1,146 @@ + + +H5Part: H5Part.h Source File + + + + +

    H5Part.h

    Go to the documentation of this file.
    00001 #ifndef _H5Part_H_
    +00002 #define _H5Part_H_
    +00003 
    +00004 #include <hdf5.h>
    +00005 #ifdef PARALLEL_IO
    +00006 #include <mpi.h>
    +00007 #endif
    +00008 
    +00016 typedef struct H5PartFile {
    +00017   hid_t file;
    +00018   int timestep;
    +00019 
    +00020   hid_t timegroup;
    +00021   hid_t properties;
    +00022   hsize_t nparticles;
    +00023   hid_t shape;
    +00024   unsigned mode;
    +00025   int maxstep;
    +00026   hid_t xfer_prop,create_prop,access_prop;
    +00027   hid_t diskshape,memshape; /* for parallel I/O (this is on-disk) H5S_ALL 
    +00028                     if serial I/O */
    +00029   long long viewstart,viewend; /* -1 if no view is available: A "view" looks at a subset of the data. */
    +00030   
    +00031 #ifdef PARALLEL_IO
    +00032   long long *pnparticles; /* the number of particles in each processor.
    +00033                              With respect to the "VIEW", these numbers
    +00034                              can be regarded as non-overlapping subsections
    +00035                              of the particle array stored in the file.
    +00036                              So they can be used to compute the offset of
    +00037                              the view for each processor */
    +00038   MPI_Comm comm;
    +00039   int nprocs,myproc;
    +00040 #endif
    +00041 }H5PartFile;
    +00042 
    +00043 #define H5PART_READ 0x01
    +00044 #define H5PART_WRITE 0x02
    +00045 
    +00046 /*========== File Opening/Closing ===============*/
    +00047 #ifdef PARALLEL_IO
    +00048 #include <mpi.h>
    +00049 H5PartFile *H5PartOpenFileParallel(const char *filename,
    +00050                                    unsigned flags,
    +00051                                    MPI_Comm communicator);
    +00052 #endif
    +00053 #define H5PartOpenFileSerial(x,y) H5PartOpenFile(x,y)
    +00054 
    +00055 H5PartFile *H5PartOpenFile(const char *filename, /* name of datafile */
    +00056                                  unsigned flags); /* H5PART_READ | H5PART_WRITE */
    +00057 int H5PartFileIsValid(H5PartFile *f);
    +00058 void H5PartCloseFile(H5PartFile *f);
    +00059 
    +00060 
    +00061 /*============== File Writing Functions ==================== */
    +00062 void H5PartSetNumParticles(H5PartFile *f,long long nparticles);
    +00063 int H5PartWriteDataFloat64(H5PartFile *f,char *name,double *array);
    +00064 int H5PartWriteDataInt64(H5PartFile *f,char *name,long long *array);
    +00065 
    +00066 /*================== File Reading Routines =================*/
    +00067 void H5PartSetStep(H5PartFile *f, /* file handle */
    +00068                    int step); /* current timestep to select (0 to n-1) */
    +00069 int H5PartGetNumSteps(H5PartFile *f);
    +00070 int H5PartGetNumDatasets(H5PartFile *f);
    +00071 int H5PartGetDatasetName(H5PartFile *f,int index,char *name,int maxlen);
    +00072 long long H5PartGetNumParticles(H5PartFile *f);
    +00073 void H5PartSetView(H5PartFile *f,long long start,long long end);
    +00074 #define H5PartResetView(f) H5PartSetView(f,-1,-1)
    +00075 #define H5PartHasView(f) ((f->viewstart<0||f->viewend<0)?0:1)
    +00076 int H5PartGetView(H5PartFile *f,long long *start,long long *end);
    +00077 void H5PartSetCanonicalView(H5PartFile *f);
    +00078 
    +00079 int H5PartReadDataFloat64(H5PartFile *f,
    +00080                           char *name, /* name of the array to read
    +00081                                          "x"=position in x direction (y,z)
    +00082                                          "vx"=velocity in x directio (y,z)
    +00083                                          "px"=position in x dir (y,z) */
    +00084                           double *array); /* array to read data into */
    +00085 int H5PartReadDataInt64(H5PartFile *f,
    +00086                           char *name, /* name of the array to read
    +00087                                          "x"=position in x direction (y,z)
    +00088                                          "vx"=velocity in x directio (y,z)
    +00089                                          "px"=position in x dir (y,z) */
    +00090                           long long *array); /* array to read data into */
    +00091 
    +00092 /* the following is a back-door for extensions to the data writing */
    +00093 #if 0
    +00094 int H5PartReadData(H5PartFile *f,char *name,void *array,hid_t type);
    +00095 int H5PartWriteData(H5PartFile *f,char *name,void *array,hid_t type);
    +00096 #endif
    +00097 int H5PartReadParticleStep(H5PartFile *f, /* filehandle */
    +00098                            int step, /* selects timestep to read from*/
    +00099                            double *x,double *y,double *z, /* particle positions */
    +00100                            double *px,double *py,double *pz, /* particle momenta */
    +00101                            long long *id); /* and phase */
    +00102 /**********==============Attributes Interface============***************/
    +00103 /* currently there is file attributes:  Attributes bound to the file
    +00104    and step attributes which are bound to the current timestep.  You 
    +00105    must set the timestep explicitly before writing the attributes (just
    +00106    as you must do when you write a new dataset.  Currently there are no
    +00107    attributes that are bound to a particular data array, but this could
    +00108    easily be done if required.
    +00109 */
    +00110 int H5PartWriteStepAttrib(H5PartFile *f,char *name,
    +00111     hid_t type,void *attrib,int nelem);
    +00112 int H5PartWriteFileAttrib(H5PartFile *f,char *name,
    +00113     hid_t type,void *attrib,int nelem);
    +00114 int H5PartWriteAttrib(H5PartFile *f,char *name,
    +00115                       hid_t type,void *attrib,int nelem); /* this should be deprecated */
    +00116 
    +00117 int H5PartWriteFileAttribString(H5PartFile *f,char *name,
    +00118     char *attrib);
    +00119 int H5PartWriteStepAttribString(H5PartFile *f,char *name,
    +00120     char *attrib);
    +00121 int H5PartGetNumStepAttribs(H5PartFile *f); /* for current filestep */
    +00122 int H5PartGetNumFileAttribs(H5PartFile *f);
    +00123 void H5PartGetStepAttribInfo(H5PartFile *f,int idx,
    +00124     char *name,size_t maxnamelen,
    +00125                          hid_t *type,int *nelem);
    +00126 void H5PartGetFileAttribInfo(H5PartFile *f,int idx,
    +00127     char *name,size_t maxnamelen,
    +00128     hid_t *type,int *nelem);
    +00129 int H5PartReadStepAttrib(H5PartFile *f,char *name,void *data);
    +00130 void H5PartReadAttrib(H5PartFile *f,char *name,void *data);
    +00131 int H5PartReadFileAttrib(H5PartFile *f,char *name,void *data);
    +00132 
    +00133 
    +00134 /**************** File Stashing Interfaces *************************/
    +00135 int H5PartStashFile(H5PartFile *f,char *filename);
    +00136 int H5PartUnstashFile(H5PartFile *f, char *filename, char *outputpath); /* outputpath can be null for cwd */
    +00137 int H5PartGetNumStashFiles(H5PartFile *f);
    +00138 int H5PartFileGetStashFileName(H5PartFile *f,int nameindex,char *filename,int maxnamelen);
    +00139 
    +00140 
    +00141 #endif
    +

    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/H5Part_8h.html b/doc/ReferencePages/H5Part_8h.html new file mode 100644 index 0000000..65150f4 --- /dev/null +++ b/doc/ReferencePages/H5Part_8h.html @@ -0,0 +1,1876 @@ + + +H5Part: H5Part.h File Reference + + + + +

    H5Part.h File Reference

    #include <hdf5.h>
    + +

    +Go to the source code of this file. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Classes

    struct  H5PartFile

    Defines

    #define H5PART_READ   0x01
    #define H5PART_WRITE   0x02
    #define H5PartOpenFileSerial(x, y)   H5PartOpenFile(x,y)
    #define H5PartResetView(f)   H5PartSetView(f,-1,-1)
    #define H5PartHasView(f)   ((f->viewstart<0||f->viewend<0)?0:1)

    Typedefs

    typedef H5PartFile H5PartFile

    Functions

    H5PartFileH5PartOpenFile (const char *filename, unsigned flags)
    int H5PartFileIsValid (H5PartFile *f)
    void H5PartCloseFile (H5PartFile *f)
    void H5PartSetNumParticles (H5PartFile *f, long long nparticles)
    int H5PartWriteDataFloat64 (H5PartFile *f, char *name, double *array)
    int H5PartWriteDataInt64 (H5PartFile *f, char *name, long long *array)
    void H5PartSetStep (H5PartFile *f, int step)
    int H5PartGetNumSteps (H5PartFile *f)
    int H5PartGetNumDatasets (H5PartFile *f)
    int H5PartGetDatasetName (H5PartFile *f, int index, char *name, int maxlen)
    long long H5PartGetNumParticles (H5PartFile *f)
    void H5PartSetView (H5PartFile *f, long long start, long long end)
    int H5PartGetView (H5PartFile *f, long long *start, long long *end)
    void H5PartSetCanonicalView (H5PartFile *f)
    int H5PartReadDataFloat64 (H5PartFile *f, char *name, double *array)
    int H5PartReadDataInt64 (H5PartFile *f, char *name, long long *array)
    int H5PartReadParticleStep (H5PartFile *f, int step, double *x, double *y, double *z, double *px, double *py, double *pz, long long *id)
    int H5PartWriteStepAttrib (H5PartFile *f, char *name, hid_t type, void *attrib, int nelem)
    int H5PartWriteFileAttrib (H5PartFile *f, char *name, hid_t type, void *attrib, int nelem)
    int H5PartWriteAttrib (H5PartFile *f, char *name, hid_t type, void *attrib, int nelem)
    int H5PartWriteFileAttribString (H5PartFile *f, char *name, char *attrib)
    int H5PartWriteStepAttribString (H5PartFile *f, char *name, char *attrib)
    int H5PartGetNumStepAttribs (H5PartFile *f)
    int H5PartGetNumFileAttribs (H5PartFile *f)
    void H5PartGetStepAttribInfo (H5PartFile *f, int idx, char *name, size_t maxnamelen, hid_t *type, int *nelem)
    void H5PartGetFileAttribInfo (H5PartFile *f, int idx, char *name, size_t maxnamelen, hid_t *type, int *nelem)
    int H5PartReadStepAttrib (H5PartFile *f, char *name, void *data)
    void H5PartReadAttrib (H5PartFile *f, char *name, void *data)
    int H5PartReadFileAttrib (H5PartFile *f, char *name, void *data)
    int H5PartStashFile (H5PartFile *f, char *filename)
    int H5PartUnstashFile (H5PartFile *f, char *filename, char *outputpath)
    int H5PartGetNumStashFiles (H5PartFile *f)
    int H5PartFileGetStashFileName (H5PartFile *f, int nameindex, char *filename, int maxnamelen)
    +


    Define Documentation

    +

    + + + + +
    + + + + +
    #define H5PART_READ   0x01
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    #define H5PART_WRITE   0x02
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    #define H5PartHasView  )    ((f->viewstart<0||f->viewend<0)?0:1)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + + + + +
    #define H5PartOpenFileSerial x,
     )    H5PartOpenFile(x,y)
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    #define H5PartResetView  )    H5PartSetView(f,-1,-1)
    +
    + + + + + +
    +   + + +

    +

    +


    Typedef Documentation

    +

    + + + + +
    + + + + +
    typedef struct H5PartFile H5PartFile
    +
    + + + + + +
    +   + + +

    +/struct H5PartFile: This is an essentially opaque datastructure that acts as the filehandle for all practical purposes. It is created by H5PartOpenFile<xx>() and destroyed by H5PartCloseFile().

    +


    Function Documentation

    +

    + + + + +
    + + + + + + + + + +
    void H5PartCloseFile H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartCloseFile: closes an open file.

    Parameters:
    + + +
    f filehandle of the file to close
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartFileGetStashFileName H5PartFile f,
    int  nameindex,
    char *  filename,
    int  maxnamelen
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + + + + + + +
    int H5PartFileIsValid H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartFileIsValid: checks if a file was successfully opened.

    Parameters:
    + + +
    f filehandle of the file to check validity
    +
    +
    Returns:
    1 if success 0 if failure
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartGetDatasetName H5PartFile f,
    int  _index,
    char *  name,
    int  maxlen
    +
    + + + + + +
    +   + + +

    +H5PartGetDatasetName: This reads the name of a datasetes specified by it's index.

    Parameters:
    + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    _index integer specifying the index of the dataset. If the number of datasets is nds, the range of index is 0 to nds-1.
    name A null-terminated string for the name of the dataset.
    maxlen An integer specifying the maximum length of the name array.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartGetFileAttribInfo H5PartFile f,
    int  idx,
    char *  name,
    size_t  maxname,
    hid_t *  type,
    int *  nelem
    +
    + + + + + +
    +   + + +

    +H5PartGetFileAttribInfo: gets the name, type and number of elements of a file attribute .

    Parameters:
    + + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    idx Index of the attribute
    name A null-terminated string with the name of the attribute.
    maxname The length of the attribute name.
    type One of the following ones: H5T_NATIVE_DOUBLE H5T_NATIVE_INT64 H5T_NATIVE_CHAR.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    void.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumDatasets H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumDatasets: This reads the number of datasetes that are stored at a particular time step.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of datasets.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumFileAttribs H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumFileAttribs: gets the number of attributes bound to the file.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of attributes of the File.
    +
    +

    + + + + +
    + + + + + + + + + +
    long long H5PartGetNumParticles H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumParticles: This gets the number of particles that are stored in the current timestep. It will arbitrarily select a timestep if you haven't already set the timestep with H5PartSetStep().

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of particles in current timestep.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumStashFiles H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumStashFiles: returns the number of stashed files.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    Number of stashed files.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumStepAttribs H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumStepAttribs: gets the number of attributes bound to the current step. The step has to be set with H5PartSetStep().

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of attributes of the current step.
    +
    +

    + + + + +
    + + + + + + + + + +
    int H5PartGetNumSteps H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5PartGetNumSteps: This reads the number of datasteps that are currently stored in the datafile. (simple return of an int). It works for both reading and writing of files, but is probably only typically used when you are reading.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    number of timesteps currently stored in the file.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartGetStepAttribInfo H5PartFile f,
    int  idx,
    char *  name,
    size_t  maxname,
    hid_t *  type,
    int *  nelem
    +
    + + + + + +
    +   + + +

    +H5PartGetStepAttribInfo: gets the name, type and number of elements of a step attribute .

    Parameters:
    + + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    idx Index of the attribute
    name A null-terminated string with the name of the attribute.
    maxname the length of the name of the attribute.
    type One of the following ones: H5T_NATIVE_DOUBLE H5T_NATIVE_INT64 H5T_NATIVE_CHAR.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    void.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartGetView H5PartFile f,
    long long *  start,
    long long *  end
    +
    + + + + + +
    +   + + +

    +H5PartGetView: Allows you to query the current view. Start and End will be -1 if there is no current view established. Use H5PartHasView to see if the view is smaller than the total dataset.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    start start particle
    end end particle
    +
    +
    Returns:
    the number of elements in the view
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    H5PartFile* H5PartOpenFile const char *  filename,
    unsigned  flags
    +
    + + + + + +
    +   + + +

    +H5PartOpenFile: Opens file with specified filename. If you open with flag H5PART_WRITE, it will truncate any file with the specified filename and start writing to it. If you open with H5PART_READ, then it will open the file readonly.

    +H5PartFile should be treated as an essentially opaque datastructure. It acts as the file handle, but internally it maintains several key state variables associated with the file.

    +

    Parameters:
    + + + +
    filename The name of the IEEEIO data file to open. The typical extension for these files is .h5
    flags The accessmode for the file. This is one of 2 different access modes: H5PART_READ, H5PART_WRITE.
    +
    +
    Returns:
    A new filehandle with an open file or NULL if error.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartReadAttrib H5PartFile f,
    char *  name,
    void *  data
    +
    + + + + + +
    +   + + +

    +H5PartReadAttrib: reads a step attribute NOTE: it has been superseeded by H5PartReadStepAttrib.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string with the name of the attribute.
    data of the attribute.
    +
    +
    Returns:
    1 on success, -1 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadDataFloat64 H5PartFile f,
    char *  name,
    double *  array
    +
    + + + + + +
    +   + + +

    +H5PartReadDataFloat64: This reads in an individual array from a particlar timestep. If you haven't selected a particular timestep, it will pick the current one.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer to read array of particle data. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadDataInt64 H5PartFile f,
    char *  name,
    long long *  array
    +
    + + + + + +
    +   + + +

    +H5PartReadDataInt64: This reads in an individual array from a particlar timestep. If you haven't selected a particular timestep, it will pick the current one.

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer to read array of particle data. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadFileAttrib H5PartFile f,
    char *  name,
    void *  data
    +
    + + + + + +
    +   + + +

    +H5PartReadFileAttrib: reads a file attribute

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string with the name of the attribute.
    data Value of the attribute.
    +
    +
    Returns:
    1 on success, -1 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadParticleStep H5PartFile f,
    int  step,
    double *  x,
    double *  y,
    double *  z,
    double *  px,
    double *  py,
    double *  pz,
    long long *  id
    +
    + + + + + +
    +   + + +

    +H5PartReadParticleStep: This is the mongo read function that pulls in all of the data for a given timestep in one shot. It also takes the timestep as an argument and will call H5PartSetStep() internally so that you don't have to make that call separately. See also: H5PartReadArray() if you want to just read in one of the many arrays.

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartReadStepAttrib H5PartFile f,
    char *  name,
    void *  data
    +
    + + + + + +
    +   + + +

    +H5PartReadStepAttrib: reads a step attribute

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string with the name of the attribute.
    data of the attribute.
    +
    +
    Returns:
    1 on success, -1 on failure.
    +
    +

    + + + + +
    + + + + + + + + + +
    void H5PartSetCanonicalView H5PartFile f  ) 
    +
    + + + + + +
    +   + + +

    +H5SetCanonicalView: If it is too tedious to manually set the start and end coordinates for a view, the H5SetCanonicalView() will automatically select an appropriate domain decomposition of the data arrays for the degree of parallelism and set the "view" accordingly.

    Parameters:
    + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    void H5PartSetNumParticles H5PartFile f,
    long long  nparticles
    +
    + + + + + +
    +   + + +

    +H5PartSetNumParticles: This function's sole purpose is to prevent needless creation of new HDF5 DataSpace handles if the number of particles is invariant throughout the sim. That's its only reason for existence. After you call this subroutine, all subsequent operations will assume this number of particles will be written.

    Parameters:
    + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    nparticles A long long integer specifying the number of particles
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    void H5PartSetStep H5PartFile f,
    int  step
    +
    + + + + + +
    +   + + +

    +H5PartSetStep: When writing data to a file the current time step must be set (even if there is only one). In a file with N time steps, the steps are numbered from 0 to N-1.

    Parameters:
    + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    step the time step to set.
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void H5PartSetView H5PartFile f,
    long long  start,
    long long  end
    +
    + + + + + +
    +   + + +

    +H5SetView: For parallel I/O or for subsetting operations on the datafile, the H5SetView subroutine allows you to define a subset of the total particle dataset to read. The concept of "view" works for both serial and for parallel I/O. The "view" will remain in effect until a new view is set, or the number of particles in a dataset changes, or the view is "unset" by calling H5SetView(file,-1,-1);

    +Before you set a view, the H5PartGetNumParticles will return the total number of particles in a file (even for the parallel reads). However, after you set a view, it will return the number of particles contained in the view.

    +The range is inclusive (the start and the end index).

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    start start particle
    end end particle
    +
    +
    Returns:
    void
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + +
    int H5PartStashFile H5PartFile f,
    char *  filename
    +
    + + + + + +
    +   + + +

    +NOTE: it's missing the read! H5PartStashFile: stash a file in the hdf5 file. If it does not exists a UserData and a Files group will be created. /param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). /param filename A null-terminated string for the name of the filename. /return 1 on succes, 0 on failure.

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartUnstashFile H5PartFile f,
    char *  filename,
    char *  outputpath
    +
    + + + + + +
    +   + + +

    +H5PartUnstashFile: unstash a file in the hdf5 file. /param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). /param filename A null-terminated string for the name of the filename. /param The path to the directory to create the file. /return 1 on succes, 0 on failure.

    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteAttrib H5PartFile f,
    char *  name,
    hid_t  type,
    void *  value,
    int  nelem
    +
    + + + + + +
    +   + + +

    +H5PartWriteAttr: writes a step attribute. Note: this call has been superseeded by H5PartWriteStepAttr.

    +

    Parameters:
    + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    type One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR.
    value Value of the attribute.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteDataFloat64 H5PartFile f,
    char *  name,
    double *  array
    +
    + + + + + +
    +   + + +

    +H5PartWriteDataFloat64: After setting the number of particles with H5PartSetNumParticles() and the current timestep using H5PartSetStep(), you can start writing datasets into the file. Each dataset has a name associated with it (chosen by the user) in order to facilitate later retrieval. The writing routines also implicitly store the datatype of the array so that the array can be reconstructed properly on other systems with incompatible type representations. The data is committed to disk before the routine returns. All data that is written after setting the timestep is associated with that timestep. While the number of particles can change for each timestep, you cannot change the number of particles in the middle of a given timestep.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer containing an array of particle data to commit to disk. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteDataInt64 H5PartFile f,
    char *  name,
    long long *  array
    +
    + + + + + +
    +   + + +

    +H5PartWriteDataInt64: After setting the number of particles with H5PartSetNumParticles() and the current timestep using H5PartSetStep(), you can start writing datasets into the file. Each dataset has a name associated with it (chosen by the user) in order to facilitate later retrieval. The writing routines also implicitly store the datatype of the array so that the array can be reconstructed properly on other systems with incompatible type representations. The data is committed to disk before the routine returns. All data that is written after setting the timestep is associated with that timestep. While the number of particles can change for each timestep, you cannot change the number of particles in the middle of a given timestep.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the array. When retrieving datasets from disk, you ask for them by name. There are no restrictions on naming of arrays, but it is useful to arrive at some common naming convention when sharing data with other groups.
    array A buffer containing an array of particle data to commit to disk. The datatype for elements in the buffer is implicit in the name of the subroutine call.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteFileAttrib H5PartFile f,
    char *  name,
    hid_t  type,
    void *  value,
    int  nelem
    +
    + + + + + +
    +   + + +

    +H5PartWriteStepAttr: writes a string attribute bound to a step.

    +

    Parameters:
    + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    type One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR.
    value Value of the attribute.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteFileAttribString H5PartFile f,
    char *  name,
    char *  attrib
    +
    + + + + + +
    +   + + +

    +H5PartWriteFileAttribString: writes a string attribute bound to a file.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    attrib A null-terminated string for the attribute.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteStepAttrib H5PartFile f,
    char *  name,
    hid_t  type,
    void *  value,
    int  nelem
    +
    + + + + + +
    +   + + +

    +H5PartWriteStepAttrib: writes a step attribute.

    Parameters:
    + + + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    type One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR.
    value Value of the attribute.
    nelem Number of elements of type "type".
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int H5PartWriteStepAttribString H5PartFile f,
    char *  name,
    char *  attrib
    +
    + + + + + +
    +   + + +

    +H5PartWriteStepAttrString: writes a string attribute bound to the current step.

    +

    Parameters:
    + + + + +
    f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel().
    name A null-terminated string for the name of the attribute.
    attrib A null-terminated string for the attribute.
    +
    +
    Returns:
    1 on success, 0 on failure.
    +
    +


    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/annotated.html b/doc/ReferencePages/annotated.html new file mode 100644 index 0000000..6d23c69 --- /dev/null +++ b/doc/ReferencePages/annotated.html @@ -0,0 +1,16 @@ + + +H5Part: Class List + + + + +

    H5Part Class List

    Here are the classes, structs, unions and interfaces with brief descriptions: + + +
    H5IO_getname_t
    H5PartFile
    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/doxygen.css b/doc/ReferencePages/doxygen.css new file mode 100644 index 0000000..decae9e --- /dev/null +++ b/doc/ReferencePages/doxygen.css @@ -0,0 +1,309 @@ +BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV { + font-family: Geneva, Arial, Helvetica, sans-serif; +} +BODY,TD { + font-size: 90%; +} +H1 { + text-align: center; + font-size: 160%; +} +H2 { + font-size: 120%; +} +H3 { + font-size: 100%; +} +CAPTION { font-weight: bold } +DIV.qindex { + width: 100%; + background-color: #eeeeff; + border: 1px solid #b0b0b0; + text-align: center; + margin: 2px; + padding: 2px; + line-height: 140%; +} +DIV.nav { + width: 100%; + background-color: #eeeeff; + border: 1px solid #b0b0b0; + text-align: center; + margin: 2px; + padding: 2px; + line-height: 140%; +} +DIV.navtab { + background-color: #eeeeff; + border: 1px solid #b0b0b0; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} +TD.navtab { + font-size: 70%; +} +A.qindex { + text-decoration: none; + font-weight: bold; + color: #1A419D; +} +A.qindex:visited { + text-decoration: none; + font-weight: bold; + color: #1A419D +} +A.qindex:hover { + text-decoration: none; + background-color: #ddddff; +} +A.qindexHL { + text-decoration: none; + font-weight: bold; + background-color: #6666cc; + color: #ffffff; + border: 1px double #9295C2; +} +A.qindexHL:hover { + text-decoration: none; + background-color: #6666cc; + color: #ffffff; +} +A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff } +A.el { text-decoration: none; font-weight: bold } +A.elRef { font-weight: bold } +A.code:link { text-decoration: none; font-weight: normal; color: #0000FF} +A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF} +A.codeRef:link { font-weight: normal; color: #0000FF} +A.codeRef:visited { font-weight: normal; color: #0000FF} +A:hover { text-decoration: none; background-color: #f2f2ff } +DL.el { margin-left: -1cm } +.fragment { + font-family: Fixed, monospace; + font-size: 95%; +} +PRE.fragment { + border: 1px solid #CCCCCC; + background-color: #f5f5f5; + margin-top: 4px; + margin-bottom: 4px; + margin-left: 2px; + margin-right: 8px; + padding-left: 6px; + padding-right: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px } +TD.md { background-color: #F4F4FB; font-weight: bold; } +TD.mdPrefix { + background-color: #F4F4FB; + color: #606060; + font-size: 80%; +} +TD.mdname1 { background-color: #F4F4FB; font-weight: bold; color: #602020; } +TD.mdname { background-color: #F4F4FB; font-weight: bold; color: #602020; width: 600px; } +DIV.groupHeader { + margin-left: 16px; + margin-top: 12px; + margin-bottom: 6px; + font-weight: bold; +} +DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% } +BODY { + background: white; + color: black; + margin-right: 20px; + margin-left: 20px; +} +TD.indexkey { + background-color: #eeeeff; + font-weight: bold; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px; + border: 1px solid #CCCCCC; +} +TD.indexvalue { + background-color: #eeeeff; + font-style: italic; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px; + border: 1px solid #CCCCCC; +} +TR.memlist { + background-color: #f0f0f0; +} +P.formulaDsp { text-align: center; } +IMG.formulaDsp { } +IMG.formulaInl { vertical-align: middle; } +SPAN.keyword { color: #008000 } +SPAN.keywordtype { color: #604020 } +SPAN.keywordflow { color: #e08000 } +SPAN.comment { color: #800000 } +SPAN.preprocessor { color: #806020 } +SPAN.stringliteral { color: #002080 } +SPAN.charliteral { color: #008080 } +.mdTable { + border: 1px solid #868686; + background-color: #F4F4FB; +} +.mdRow { + padding: 8px 10px; +} +.mdescLeft { + padding: 0px 8px 4px 8px; + font-size: 80%; + font-style: italic; + background-color: #FAFAFA; + border-top: 1px none #E0E0E0; + border-right: 1px none #E0E0E0; + border-bottom: 1px none #E0E0E0; + border-left: 1px none #E0E0E0; + margin: 0px; +} +.mdescRight { + padding: 0px 8px 4px 8px; + font-size: 80%; + font-style: italic; + background-color: #FAFAFA; + border-top: 1px none #E0E0E0; + border-right: 1px none #E0E0E0; + border-bottom: 1px none #E0E0E0; + border-left: 1px none #E0E0E0; + margin: 0px; +} +.memItemLeft { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: solid; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memItemRight { + padding: 1px 8px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: solid; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memTemplItemLeft { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: none; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memTemplItemRight { + padding: 1px 8px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: none; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memTemplParams { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: solid; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + color: #606060; + background-color: #FAFAFA; + font-size: 80%; +} +.search { color: #003399; + font-weight: bold; +} +FORM.search { + margin-bottom: 0px; + margin-top: 0px; +} +INPUT.search { font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #eeeeff; +} +TD.tiny { font-size: 75%; +} +a { + color: #252E78; +} +a:visited { + color: #3D2185; +} +.dirtab { padding: 4px; + border-collapse: collapse; + border: 1px solid #b0b0b0; +} +TH.dirtab { background: #eeeeff; + font-weight: bold; +} +HR { height: 1px; + border: none; + border-top: 1px solid black; +} diff --git a/doc/ReferencePages/doxygen.png b/doc/ReferencePages/doxygen.png new file mode 100644 index 0000000..f0a274b Binary files /dev/null and b/doc/ReferencePages/doxygen.png differ diff --git a/doc/ReferencePages/files.html b/doc/ReferencePages/files.html new file mode 100644 index 0000000..a8a94da --- /dev/null +++ b/doc/ReferencePages/files.html @@ -0,0 +1,17 @@ + + +H5Part: File Index + + + + +

    H5Part File List

    Here is a list of all files with brief descriptions: + + + +
    H5Part.c
    H5Part.h [code]
    H5PartF.c
    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/functions.html b/doc/ReferencePages/functions.html new file mode 100644 index 0000000..fa5b120 --- /dev/null +++ b/doc/ReferencePages/functions.html @@ -0,0 +1,35 @@ + + +H5Part: Class Members + + + + + +Here is a list of all class members with links to the classes they belong to: +

    +

    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/functions_vars.html b/doc/ReferencePages/functions_vars.html new file mode 100644 index 0000000..6b77cab --- /dev/null +++ b/doc/ReferencePages/functions_vars.html @@ -0,0 +1,35 @@ + + +H5Part: Class Members - Variables + + + + + + +

    +

    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/globals.html b/doc/ReferencePages/globals.html new file mode 100644 index 0000000..044a663 --- /dev/null +++ b/doc/ReferencePages/globals.html @@ -0,0 +1,107 @@ + + +H5Part: Class Members + + + + + +
    f | h
    + +

    +Here is a list of all file members with links to the files they belong to: +

    +

    - f -

    +

    - h -

    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/globals_defs.html b/doc/ReferencePages/globals_defs.html new file mode 100644 index 0000000..24b249a --- /dev/null +++ b/doc/ReferencePages/globals_defs.html @@ -0,0 +1,59 @@ + + +H5Part: Class Members + + + + + +
    f | h
    + +

    + +

    +

    - f -

    +

    - h -

    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/globals_func.html b/doc/ReferencePages/globals_func.html new file mode 100644 index 0000000..5f11e8d --- /dev/null +++ b/doc/ReferencePages/globals_func.html @@ -0,0 +1,97 @@ + + +H5Part: Class Members + + + + + +
    f | h
    + +

    + +

    +

    - f -

    +

    - h -

    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/globals_type.html b/doc/ReferencePages/globals_type.html new file mode 100644 index 0000000..d122a7e --- /dev/null +++ b/doc/ReferencePages/globals_type.html @@ -0,0 +1,19 @@ + + +H5Part: Class Members + + + + + + +

    +

    +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/index.html b/doc/ReferencePages/index.html new file mode 100644 index 0000000..1c739a1 --- /dev/null +++ b/doc/ReferencePages/index.html @@ -0,0 +1,14 @@ + + +H5Part: Main Page + + + + +

    H5Part Documentation

    +

    +


    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/structH5IO__getname__t-members.html b/doc/ReferencePages/structH5IO__getname__t-members.html new file mode 100644 index 0000000..e6035d1 --- /dev/null +++ b/doc/ReferencePages/structH5IO__getname__t-members.html @@ -0,0 +1,16 @@ + + +H5Part: Member List + + + + +

    H5IO_getname_t Member List

    This is the complete list of members for H5IO_getname_t, including all inherited members.

    + + + +
    countH5IO_getname_t
    indexH5IO_getname_t
    nameH5IO_getname_t


    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/structH5IO__getname__t.html b/doc/ReferencePages/structH5IO__getname__t.html new file mode 100644 index 0000000..a99c8d4 --- /dev/null +++ b/doc/ReferencePages/structH5IO__getname__t.html @@ -0,0 +1,97 @@ + + +H5Part: H5IO_getname_t Struct Reference + + + + +

    H5IO_getname_t Struct Reference

    List of all members. + + + + + + + + +

    Public Attributes

    int index
    int count
    char * name
    +

    Detailed Description

    +H5IO_getname_t: Private +

    +


    Member Data Documentation

    +

    + + + + +
    + + + + +
    int H5IO_getname_t::count
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    int H5IO_getname_t::index
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    char* H5IO_getname_t::name
    +
    + + + + + +
    +   + + +

    +

    +


    The documentation for this struct was generated from the following file: +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/structH5PartFile-members.html b/doc/ReferencePages/structH5PartFile-members.html new file mode 100644 index 0000000..9c7ff17 --- /dev/null +++ b/doc/ReferencePages/structH5PartFile-members.html @@ -0,0 +1,28 @@ + + +H5Part: Member List + + + + +

    H5PartFile Member List

    This is the complete list of members for H5PartFile, including all inherited members.

    + + + + + + + + + + + + + + + +
    access_propH5PartFile
    create_propH5PartFile
    diskshapeH5PartFile
    fileH5PartFile
    maxstepH5PartFile
    memshapeH5PartFile
    modeH5PartFile
    nparticlesH5PartFile
    propertiesH5PartFile
    shapeH5PartFile
    timegroupH5PartFile
    timestepH5PartFile
    viewendH5PartFile
    viewstartH5PartFile
    xfer_propH5PartFile


    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/ReferencePages/structH5PartFile.html b/doc/ReferencePages/structH5PartFile.html new file mode 100644 index 0000000..1b84ed1 --- /dev/null +++ b/doc/ReferencePages/structH5PartFile.html @@ -0,0 +1,399 @@ + + +H5Part: H5PartFile Struct Reference + + + + +

    H5PartFile Struct Reference

    #include <H5Part.h> +

    +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Attributes

    hid_t file
    int timestep
    hid_t timegroup
    hid_t properties
    hsize_t nparticles
    hid_t shape
    unsigned mode
    int maxstep
    hid_t xfer_prop
    hid_t create_prop
    hid_t access_prop
    hid_t diskshape
    hid_t memshape
    long long viewstart
    long long viewend
    +


    Detailed Description

    +/struct H5PartFile: This is an essentially opaque datastructure that acts as the filehandle for all practical purposes. It is created by H5PartOpenFile<xx>() and destroyed by H5PartCloseFile(). +

    +


    Member Data Documentation

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::access_prop
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::create_prop
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::diskshape
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::file
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    int H5PartFile::maxstep
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::memshape
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    unsigned H5PartFile::mode
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hsize_t H5PartFile::nparticles
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::properties
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::shape
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::timegroup
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    int H5PartFile::timestep
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    long long H5PartFile::viewend
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    long long H5PartFile::viewstart
    +
    + + + + + +
    +   + + +

    +

    +

    + + + + +
    + + + + +
    hid_t H5PartFile::xfer_prop
    +
    + + + + + +
    +   + + +

    +

    +


    The documentation for this struct was generated from the following file: +
    Generated on Tue Jan 31 11:52:45 2006 for H5Part by  + +doxygen 1.4.4
    + + diff --git a/doc/UsingC.html b/doc/UsingC.html new file mode 100644 index 0000000..8380696 --- /dev/null +++ b/doc/UsingC.html @@ -0,0 +1,606 @@ + + + +H5Part, the C/C++ API + + + + + + +
    + +

    The C/C++ Application Programming Interface (API)

    + +
    +Reference Manual (Doxygen) +
    +
    +

    Opening Datafiles

    +

    +Just like the familiar FILE* type for C stdio operations, all +H5Part file operations require a file handle. The type of this handle is +(H5PartFile*). +
    +H5PartOpenFile() is +used to open a serial file and +HDFPartOpenFileParallel() is used to open a file for +Parallel I/O (in an MPI program). +After you open the file handle you can use the same set of +subroutines for operations on the file regardless of whether the +file is a parallel or serial I/O file. +The libraries manage all of this internally.

    +

    +C Prototypes
    +

    +Serial File
    +H5PartFile *H5PartOpenFile(const char *filename, unsigned +accessmode);
    +Parallel File
    +H5PartFile *H5PartOpenFileParallel(char *filename,int +accessmode,MPI_Comm communicator);
    +

    filename:
    The name of the IEEEIO data file to +open. The typical extension for these files is .h5
    +
    accessmode:
    The accessmode for the file. This is +one of 2 different access modes
    +H5PART_READ : Opens a file in read-only mode.
    +H5PART_WRITE : Opens a file in write-only mode. +If the +file does not exist, it will be created. If it does +exist, it will be +truncated. +
    communicator:
    +
    This argument is only available if the program has been +compiled with the PARALLEL_IO C-preprocessor flag +defined. It is used to pass in the communicator that will be +used for all collective I/O operations that target the same +file on disk.
    +
    Returns:
    A new filehandle with an open file or NULL if error.
    + +

    +
    Example Use
    +
    +#include < H5Part.h >
    +. . . code . . .
    +    /* Open an HDF5 file for writing */
    +    H5PartFile *writer = H5PartOpenFile("datafileout.h5",H5PART_WRITE);
    +    /* Open an HDF5 file for Parallel I/O */
    +    H5PartFile *writer = H5PartOpenFileParallel("datafileout.h5",H5PART_WRITE,MPI_COMM_WORLD);
    +    /* open HDF5 file for reading */ 
    +    H5PartFile *reader = H5PartOpenFile("datafilein.h5",H5PART_READ); 
    +    /* open HDF5 file for parallel reads */ 
    +    H5PartFile *reader = H5PartOpenFileParallel("datafilein.h5",H5PART_READ,MPI_COMM_WORLD);
    +. . . more code . . .
    +

    + + +
    + + +

    Closing Datafiles

    +

    +To close the file, you simply use H5PartCloseFile() for both +parallel and serial files. You must call H5PartCloseFile() on any +file descriptor created by H5PartFileOpen() regardless of +whether the file turns out to be valid or not. +

    +C Prototypes
    +

    +void H5PartCloseFile(H5PartFile *fileID); +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or H5PartOpenFileParallel().
    +
    Returns:
    void.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *file;
    +... code ...
    +file=H5PartOpenFileParallel("parttest.h5",H5PART_WRITE,comm);
    +... more code ...
    +H5PartCloseFile(file);
    +
    +
    +
    + + +

    Validating Datafiles

    +

    +You can test if the file was opened successfully using the +H5PartFileIsValid() function. It returns 1 if valid, 0 if invalid.

    +

    +C Prototype
    +

    +int H5PartFileIsValid(H5PartFile *fileID); +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or H5PartOpenFileParallel().
    +
    Returns:
    1 if valid, 0 if invalid.
    +
    +

    +
    Example Use
    +

    +Here is an example of validating a newly opened file. Even if +the file is invalid, you must use H5PartCloseFile() to reclaim +the file handle. +

    +
    +#include < H5Part.h >
    +. . . code . . .
    +    H5PartFile *fileID = H5PartOpenFile("datafileout.h5",H5PART_WRITE);
    +    if(!H5PartFileIsValid(fileID)){ 
    +       puts("The file you specified does not exist or is not in a
    +readable format");
    +       H5PartClose(fileID); /* must reclaim fileID even if file is invalid */
    +       . . . do other cleanup . . .
    +    }
    +. . . more code . . .
    +

    + +
    + + +

    Setting the Timestep

    +
    +

    +When writing data to a file the current time step must be set (even if there is only one). In a file with N time steps, the steps are numbered from 0 to N-1. +

    +C Prototype
    +

    +void H5PartSetStep((H5PartFile *fileID,int step); +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or H5PartOpenFileParallel().
    +
    step:
    An integer time step. +
    +
    Returns:
    void.
    +
    +
    Example Use
    +

    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +int timeStep;
    +....
    +H5PartSetStep(fileID,timeStep);
    +....
    +
    + +
    + + + + +

    Setting the Number of Particles

    +

    +H5PartSetNumParticles: This function's sole purpose is to +prevent needless creation of new HDF5 DataSpace handles if +the number of particles is invariant throughout the sim. +That's its only reason for existence. After you call this +subroutine, all subsequent operations will assume this +number of particles will be written. +

    +C Prototype
    +

    +void H5PartSetNumParticles(H5PartFile *fileID,long long nparticles); + +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or H5PartOpenFileParallel().
    +
    nparticles:
    A long long integer specifying the number of particles. +
    +
    Returns:
    void.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +long long nparticles;
    +....
    +H5PartSetStep(fileID,nparticles);
    +....
    +
    + +
    + + +

    Writing Datasets

    +
    +

    +After setting the number of particles with +H5PartSetNumParticles() +and the current timestep using +H5PartSetStep(), you can start +writing datasets into the file. Each dataset has a name +associated with it (chosen by the user) in order to facilitate +later retrieval. The writing routines also implicitly store +the datatype of the array so that the array can be +reconstructed properly on other systems with incompatible type +representations. The data is committed to disk before the +routine returns. All data that is written after setting the +timestep is associated with that timestep. While the number of +particles can change for each timestep, you cannot change the +number of particles in the middle of a given timestep. +

    +C Prototypes
    +

    +int H5PartWriteDataFloat64(H5PartFile *fileID,char + *name,double *array);
    +int H5PartWriteDataInt64(H5PartFile *fileID,char + *name,double *array); +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    name:
    A null-terminated string for the +name of the array. When retrieving datasets from disk, +you ask for them by name. There are no restrictions on +naming of arrays, but it is useful to arrive at some common +naming convention when sharing data with other groups.
    +
    array:
    A buffer containing an array of +particle data to commit to disk. The datatype for +elements in the buffer is implicit in the name of the +subroutine call.
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +double *x,*y,*z;
    +int timeStep;
    +long long nparticles;
    +
    +...
    +
    +H5PartSetStep(fileID,timeStep); /* must set the current timestep in file */
    +H5PartSetNumParticles(fileID,nparticles); /* then set number of particles to store */
    +
    +/* now write different tuples of data into this timestep of the file */
    +H5PartWriteDataFloat64(fileID,"x",x);
    +H5PartWriteDataFloat64(fileID,"y",y);
    +H5PartWriteDataFloat64(file,"z",z);
    +..
    +
    + +
    + +

    Reading the Number of Time Steps

    +
    +

    +This reads the number of datasteps that are + currently stored in the datafile. + It works for both reading and writing of files, but is probably + only typically used when you are reading. + +

    +C Prototype
    +

    +int H5PartGetNumSteps (H5PartFile *fileID);
    +

    +
    fileID:
    A FileHandle opened by H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    Returns:
    The number of timesteps currently stored in the file. +
    +

    +
    + + +

    Reading the Number of Particles

    +
    +

    +This reads the number of particles that are +currently stored in the current time step. +It will arbitrarily select a timestep if you haven't +already set the timestep with H5PartSetStep(). + +

    +C Prototype
    +

    +long long H5PartGetNumParticles (H5PartFile *fileID);
    +

    +
    fileID:
    A FileHandle opened by H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    Returns:
    The number of particles in current timestep. +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +int timeStep;
    +long long nparticles;
    +
    +H5PartSetStep(fileID,0);
    +nparticles=H5PartGetNumParticles(fileID);
    +...
    +
    + +
    + + + + +

    Reading Datasets

    +
    +

    +After setting the time step and getting the number of particles to allocate the data arrays, you can start to read the data. +

    +C Prototypes
    +

    +int H5PartReadDataFloat64(H5PartFile *fileID,char *name,double *array);
    +int H5PartReadDataInt64(H5PartFile *fileID,char *name,long long *array);
    + +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    name:
    A null-terminated string for the +name of the array. When retrieving datasets from disk, +you ask for them by name. There are no restrictions on +naming of arrays, but it is useful to arrive at some common +naming convention when sharing data with other groups.
    +
    array:
    A buffer to which the particle data will be read.i +The datatype for +elements in the buffer is implicit in the name of the +subroutine call.
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +double *x,*y,*z;
    +int timeStep;
    +long long nparticles;
    +
    +H5PartSetStep(fileID,0);
    +nparticles=H5PartGetNumParticles(fileID);
    +... 
    +
    +H5PartReadDataFloat64(file,"x",x);
    +H5PartReadDataFloat64(file,"y",y);
    +H5PartReadDataFloat64(file,"z",z);
    +...
    +
    +
    +

    Reading the Number and Names of Datasets

    +

    +H5Part provides funtions to find out how many datasets are stored at a particular timestep +and what their names are if you don't know what they are a-priori. +

    +C Prototypes
    +

    +int H5PartGetNumDatasets(H5PartFile *fileID);
    +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    Returns:
    The number of datasets.
    +
    +

    +

    +int H5PartGetDatasetName(H5PartFile *fileID,int index,char *name,int maxlen);
    +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    index:
    integer specifying the index of the dataset. If the number of datasets is +nds, the range of index is 0 to nds-1.
    +
    name:
    A null-terminated string for the name of the dataset.
    +
    maxlen:
    An integer specifying the maximum length of the name array.
    +
    Returns:
    1 on success, 0 on failure.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +char name[64];
    +int index, nds;
    +
    +...
    +nds=H5PartGetNumDatasets(fileID);
    +  for(index=0;index< nds;index++){
    +    H5PartGetDatasetName(fileID,index,name,64);
    +    printf("\tDataset[%u] name=[%s]\n", index,name);
    +  }
    +...
    +
    + +
    + + +

    Attributes Interface

    +

    +In the current H5Part implemtation there are two types of attributes: file attributes which are bound to the file + and step attributes which are bound to the current timestep. You + must set the timestep explicitly before writing the attributes (just + as you must do when you write a new dataset. Currently there are no + attributes that are bound to a particular data array, but this could + easily be done if required. +

    +

    H5PartGetNumStepAttribs and H5PartGetNumFileAttribs return the number of attributes bound to a step and to a file respectively. H5PartGetStepAttribInfo and H5PartGetFileAttribInfo return the name, type and number of elements of type "type" bound to a step and a file respectively. +

    +C Prototypes:
    +int H5PartGetNumStepAttribs(H5PartFile *fileID); +
    +
    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    Returns
    The number of step attributes for the current step.
    +
    +int H5PartGetNumFileAttribs(H5PartFile *fileID); +
    +
    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    Returns
    The number of file attributes.
    +
    +void H5PartGetStepAttribInfo(H5PartFile *fileID,int idx, char *name,size_t maxnamelen,hid_t *type,int *nelem); +
    +
    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    idx:
    Index of the attribute.
    +
    name:
    A null-terminated string with the name of the attribute.
    +
    maxnamelen
    the length of the name of the attribute.
    +
    type:
    One of the following: H5T_NATIVE_DOUBLE H5T_NATIVE_INT64 H5T_NATIVE_CHAR.
    +
    nelem:
    Number of elements of type "type".
    +
    Returns
    void.
    +
    + +void H5PartGetFileAttribInfo(H5PartFile *fileID,int idx, char *name,size_t maxnamelen, hid_t *type,int *nelem); +
    + +
    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    idx:
    Index of the attribute.
    +
    name:
    A null-terminated string with the name of the attribute.
    +
    maxnamelen
    the length of the name of the attribute.
    +
    type:
    One of the following: H5T_NATIVE_DOUBLE H5T_NATIVE_INT64 H5T_NATIVE_CHAR.
    +
    nelem:
    Number of elements of type "type".
    +
    Returns
    void.
    +
    + + + +

    Writing Attributes

    +
    +

    +An attribute can be bound to the file or after setting the time step to this time step. +

    + +C Prototypes: Generic Attributes
    +

    +int H5PartWriteFileAttrib(H5PartFile *fileID,char *name, hid_t type,void *value,int nelem);
    +int H5PartWriteStepAttrib(H5PartFile *fileID,char *name, hid_t type,void *value,int nelem);
    +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    name:
    A null-terminated string for the +name of the array. When retrieving datasets from disk, +you ask for them by name. There are no restrictions on +naming of arrays, but it is useful to arrive at some common +naming convention when sharing data with other groups.
    +
    type: One of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64, H5T_NATIVE_CHAR. +
    value: value of the attribute. +
    nelem: number of elements of type "type". +
    Returns:
    1 on success, 0 on failure.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +double actPos;
    +
    +...
    +H5PartWriteStepAttrib(file_m,"Spos",H5T_NATIVE_DOUBLE,&actPos,1);
    +...
    +
    + + +C Prototypes: String Attributes
    +

    +int H5PartWriteStepAttribString(H5PartFile *fileID,char *name, char *attrib);
    +int H5PartWriteFileAttribString(H5PartFile *fileID,char *name, char *attrib);
    +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    name:
    A null-terminated string for the +name of the array. When retrieving datasets from disk, +you ask for them by name. There are no restrictions on +naming of arrays, but it is useful to arrive at some common +naming convention when sharing data with other groups.
    +
    attrib: the attribute character string. +
    Returns:
    1 on success, 0 on failure.
    +
    +

    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +char *newattrib;
    +char *newname;
    +
    +...
    +H5PartWriteFileAttribString(fileID, newname,newattrib);
    +...
    +
    +
    + + +

    Reading Attributes

    +
    +

    +

    +As with the writing of attributes, there are two basic reading interfaces one that reads file bound attributes and one that reads +step bound attributes. If the step is not set the current one will be used. +

    +

    +C Prototypes
    +

    +void H5PartReadStepAttrib(H5PartFile *fileID,char *name,void *value);
    +void H5PartReadAttrib(H5PartFile *fileID,char *name,void *value);
    +int H5PartReadFileAttrib(H5PartFile *fileID,char *name,void *value);
    +

    +
    fileID:
    A FileHandle opened by +H5PartOpenFile() or +H5PartOpenFileParallel().
    +
    name:
    A null-terminated string for the +name of the array. When retrieving datasets from disk, +you ask for them by name. There are no restrictions on +naming of arrays, but it is useful to arrive at some common +naming convention when sharing data with other groups.
    +
    value: value of the attribute. +
    Returns:
    1 on success, 0 on failure.
    +
    +

    +
    +NOTE: H5PartReadAttrib has been superseeded by H5PartSetStep. +
    +
    Example Use
    +
    +#include < H5Part.h >
    +H5PartFile *fileID;
    +int step;
    +char name[MAXNAME];
    +
    +...
    +
    +H5PartSetStep(fileID, step);
    +if (H5PartReadStepAttrib(file, "filename", &name[0]) == 1){
    +	printf("Read step from file: %s\n", name);
    +}
    +
    +...
    +
    + +
    + + diff --git a/doc/UsingF.html b/doc/UsingF.html new file mode 100755 index 0000000..40d0b94 --- /dev/null +++ b/doc/UsingF.html @@ -0,0 +1,504 @@ + + + +H5part, the Fortran API + + + + + + +
    + + +

    The FORTRAN Application Programming Interface (API)

    +

    +These references contain the information on how to access the H5Part API using FORTRAN bindings. All pointers are cast to haddr_t (a unint64_t) within the C/C++ code. In fortran, these pointers (handles) are carried as INTEGER*8 +

    + +
    +

    Opening Datafiles

    +

    +Like the familiar OPEN in FORTRAN files can be opened to read and write. Different functions are used for the serial and parallel case. +

    +FORTRAN Prototypes
    +

    +Serial File
    +INTEGER*8 h5pt_openr
    +FUNCTION h5pt_openw(file)
    +in CHARACTER file(*) : the filename to open for writing

    +returns INTEGER*8 : and open filehandle for serial reads
    +
    +INTEGER*8 h5pt_openw
    +FUNCTION h5pt_openw(file)
    +in CHARACTER file(*) : the filename to open for writing
    +returns INTEGER*8 : and open filehandle for serial writes

    +
    +Parallel File
    +INTEGER*8 h5pt_openr_par
    +FUNCTION h5pt_openr_par(file,mpi_communicator)
    +in CHARACTER file(*) : the filename to open for writing
    +in INTEGER mpi_communicator : the MPI_Communicator used by the program
    + returns INTEGER*8 : and open filehandle for parallel reads

    +
    +INTEGER*8 h5pt_openw_par
    +FUNCTION h5pt_openw_par(file,mpi_communicator)
    + in CHARACTER file(*) : the filename to open for writing
    + in INTEGER mpi_communicator : the MPI_Communicator used by the program
    + returns INTEGER*8 : and open filehandle for parallel reads

    +

    +

    +Example Use
    +

    +include 'H5Part.inc'
    +INTEGER*8 file
    +...
    +file = h5pt_openw("testfilef.h5")
    +...
    +
    +

    +
    +

    Closing Datafiles

    +

    +To close the file, you simply use h5pt_close() for both parallel and serial files. You must call h5pt_close() on any file descriptor created by h5pt_open*() regardless of whether the file turns out to be valid or not.

    +FORTRAN Prototype
    +EXTERNAL h5pt_close
    +SUBROUTINE h5pt_close(filehandle)
    + in INTEGER*8 filehandle : close this open filehandle

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +...
    +call h5pt_close(file)
    +...
    +
    +

    +
    +

    Validating Datafiles

    +

    +You can test if the file was opened successfully using the +h5p_isvalid() function. It returns 1 if valid, 0 if invalid. +

    +FORTRAN Prototype
    +INTEGER h5pt_isvalid
    +FUNCTION h5pt_isvalid(filehandle)
    + in INTEGER*8 filehandle: an open filehandle
    + returns INTEGER : 1 if the file is valid, 0 if it is not

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER status 
    +...
    +status = h5pt_isvalid(file)
    +...
    +
    +

    +
    + +

    Setting the Timestep

    +
    +

    +When writing data to a file the current time step must be set (even if there is only one). In a file with N time steps, the steps are numbered from 0 to N-1. +

    +FORTRAN Prototype
    +EXTERNAL h5pt_setstep
    +SUBROUTINE h5pt_setstep(filehandle,step)
    + in INTEGER*8 filehandle : an open filehandle
    + in INTEGER step : Set the current timestep in the file to this +

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER I
    +INTEGER nstep
    +...
    +do I=1,nstep
    +	call h5pt_setstep(file,I)
    +... more code ...
    +enddo
    +
    +

    +
    + + + +

    Setting the Number of Particles

    +

    +This function's sole purpose is to +prevent needless creation of new HDF5 DataSpace handles if +the number of particles is invariant throughout the sim. +That's its only reason for existence. After you call this +subroutine, all subsequent operations will assume this +number of particles will be written. +

    +FORTRAN Prototype
    +EXTERNAL h5pt_setnpoints
    +SUBROUTINE h5pt_setnpoints(filehandle,npoints)
    + in INTEGER*8 filehandle : an open filehandle
    + in INTEGER*8 npoints : The number of particles on *this* processor

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER*8 npoints
    +
    +...
    +call h5pt_setnpoints(file,npoints)
    +...
    +
    + +
    + +

    Writing Datasets

    +
    +

    +After setting the number of particles with +h5pt_setnpoints() +and the current timestep using +h5pt_setstep(), you can start +writing datasets into the file. Each dataset has a name +associated with it (chosen by the user) in order to facilitate +later retrieval. The writing routines also implicitly store +the datatype of the array so that the array can be +reconstructed properly on other systems with incompatible type +representations. The data is committed to disk before the +routine returns. All data that is written after setting the +timestep is associated with that timestep. While the number of +particles can change for each timestep, you cannot change the +number of particles in the middle of a given timestep. +

    +FORTRAN Prototypes
    +

    +The two data types supported for the moment are REAL*8 and INTEGER*8 (float64 and int64). +

    +EXTERNAL h5pt_writedata_r8
    +SUBROUTINE h5pt_writedata_r8(filehandle,name,data)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the data we are writing eg. "X" or "Y" or "PX" etc...
    + in REAL*8 data(*) : The dataarray to write

    +
    +EXTERNAL h5pt_writedata_i8
    +SUBROUTINE h5pt_writedata_i8(filehandle,name,data)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the data we are writing eg. "X" or "Y" or "PX" etc...
    + in INTEGER*8 data(*) : The dataarray to write

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER nstep
    +INTEGER I
    +REAL*8,ALLOCATABLE:: X(:)
    +
    +...
    +do I=1,nstep
    +	call h5pt_setstep(file,I)
    +	call h5pt_writedata_r8(file,"x",X)
    +enddo
    +...
    +
    +
    + +

    Reading the Number of Time Steps

    +
    +

    +This reads the number of datasteps that are + currently stored in the datafile. + It works for both reading and writing of files, but is probably + only typically used when you are reading. + +

    +FORTRAN Prototypes
    +INTEGER h5pt_getnsteps
    +FUNCTION h5pt_getnsteps(filehandle)
    + in INTEGER*8 filehandle : an open filehandle
    + returns INTEGER : number of timesteps stored in the file

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER nstep
    +
    +file = h5pt_openr("testfilef.h5")
    +nstep = h5pt_getnsteps(file)
    +
    +
    + + +

    Reading the Number of Particles

    +
    +

    +This reads the number of particles that are currently stored in the current time step. It will arbitrarily select a timestep if you haven't already set the timestep with H5PartSetStep(). + +

    +FORTRAN Prototypes
    +INTEGER h5pt_getnpointss
    +FUNCTION h5pt_getnpoints(filehandle)
    + in INTEGER*8 filehandle : an open filehandle
    + returns INTEGER : number of particles in the current time step

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER*8 npoints
    +INTEGET step;
    +
    +file = h5pt_openr("testfilef.h5")
    +call h5pt_setstep(file,0)
    +npoints = h5pt_getnpoints(file)
    +...
    +
    +
    + + + + + +

    Reading Datasets

    +
    +

    +After setting the time step and getting the number of particles to allocate the data arrays, you can start to read the data. +

    +FORTRAN Prototypes
    +INTEGER h5pt_readdata_r8
    +FUNCTION h5pt_readdata_r8(filehandle,name,data)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the data we are writing, eg. "X" or "Y" or "PX" etc...
    + out REAL*8 data(*) : The data array to read. The number of points to read is either the number within + the view setby h5pt_setview() or the default (the total number of particles in the file).
    + + + +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER err
    +INTEGER*8,ALLOCATABLE:: ID(:)
    +
    +...
    +call h5pt_setstep(file,step)
    +err=h5pt_readdata_i8(file,"id",ID)
    +...
    +
    +
    +

    Reading the Number and Names of Datasets

    +

    +H5Part provides funtions to find out how many datasets are stored at a particular timestep +and what their names are if you don't know what they are a-priori. +

    +FORTRAN Prototypes
    +INTEGER h5pt_getndatasets
    +FUNCTION h5pt_getndatasets(filehandle)
    + in INTEGER*8 filehandle : an open filehandle
    + returns INTEGER*8 : number of datasets stored per timestep

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER ndata
    +
    +...
    +call h5pt_setstep(file,1)
    +ndata = h5pt_getndatasets(file)
    +...
    +
    +
    +FORTRAN Prototypes
    +INTEGER h5pt_getdatasetname
    +FUNCTION h5pt_getdatasetname(filehandle,index,name)
    + in INTEGER*8 filehandle : an open filehandle
    + in INTEGER index : Index for a given dataset name
    + out CHARACTER name(*) returns the name of the dataset at that index
    + returns INTEGER, 1 on success 0 on failure.

    +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +INTEGER err
    +CHARACTER,ALLOCATABLE:: name(:)
    +
    +...
    +err=h5pt_getdatasetname(file, 1, name)
    +...
    +
    +
    + + +

    Attributes Interface

    +

    +In the current H5Part implemtation there are two types of attributes: file attributes which are bound to the file + and step attributes which are bound to the current timestep. You + must set the timestep explicitly before writing the attributes (just + as you must do when you write a new dataset. Currently there are no + attributes that are bound to a particular data array, but this could + easily be done if required. +

    +FORTRAN Prototypes
    +INTEGER h5pt_getnstepattribs
    +FUNCTION h5pt_getnstepattribs(filehandle)
    + in INTEGER*8 filehandle : an open filehandle
    + returns INTEGER : number of attributes bound to this particular step
    +
    +
    +INTEGER h5pt_getnfileattribs
    +FUNCTION h5pt_getnfileattribs(filehandle)
    + in INTEGER*8 filehandle : an open filehandle
    + returns INTEGER : number of attributes bound to the file
    +
    +
    +INTEGER h5pt_getstepattribinfo
    +FUNCTION h5pt_getstepattribinfo(filehandle,idx,attribname,nelem)
    + in INTEGER*8 filehandle : an open filehandle
    + in INTEGER idx : index of the attribute being queried
    + out CHARACTER name(*) : The name of the attribute
    + out INTEGER nelem : Number of elements in the attrib array
    + returns INTEGER, 1 on success 0 on failure.
    +
    +
    +INTEGER h5pt_getfileattribinfo
    +FUNCTION h5pt_getfileattribinfo(filehandle,idx,attribname,nelem)
    + in INTEGER*8 filehandle : an open filehandle
    + in INTEGER idx : index of the attribute being queried
    + out CHARACTER name(*) : The name of the attribute
    + out INTEGER nelem : Number of elements in the attrib array
    + returns INTEGER, 1 on success 0 on failure. +
    +
    + + + + + +
    + +

    Writing Attributes

    +
    +

    +An attribute can be bound to the file or after setting the time step to this time step. +

    +FORTRAN Prototypes
    +INTEGER h5pt_writefileattrib_r8
    + +FUNCTION h5pt_writefileattrib_r8(filehandle,name,attrib,nelem)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the attribute
    + in REAL*8 attrib(*) : The array of data to write into the attribute
    + in INTEGER nelem : Number of elements in the attrib array
    + returns INTEGER, 1 on success 0 on failure
    +
    +
    +INTEGER h5pt_writefileattrib_i8
    +FUNCTION h5pt_writefileattrib_i8(filehandle,name,attrib,nelem)
    + in INTEGER*8 filehandle : The filehandle
    + in CHARACTER name(*) : The name of the attribute
    + in INTEGER*8 attrib(*) : The array of data to write into the attribute
    + in INTEGER nelem : Number of elements in the attrib array
    + returns INTEGER, 1 on success 0 on failure
    +
    +
    +INTEGER h5pt_writefileattrib_string
    +FUNCTION h5pt_writefileattrib_string(filehandle,name,string)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the attribute
    + in CHARACTER*8 attrib(*) : The array of data to write into the attribute
    + returns INTEGER, 1 on success 0 on failure
    +
    +
    +INTEGER h5pt_writestepattrib_r8
    +FUNCTION h5pt_writestepattrib_r8(filehandle,name,attrib,nelem)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the attribute
    + in REAL*8 attrib(*) : The array of data to write into the attribute
    + in INTEGER nelem : Number of elements in the attrib array + returns INTEGER, 1 on success 0 on failure
    +
    +
    +INTEGER h5pt_writestepattrib_i8
    +FUNCTION h5pt_writestepattrib_i8(filehandle,name,attrib,nelem)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the attribute
    + in INTEGER*8 attrib(*) : The array of data to write into the attribute
    + in INTEGER nelem : Number of elements in the attrib array
    + returns INTEGER, 1 on success 0 on failure
    +
    +
    +INTEGER h5pt_writestepattrib_string
    +FUNCTION h5pt_writestepattrib_string(filehandle,name,string)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER name(*) : The name of the attribute
    + in CHARACTER*8 attrib(*) : The array of data to write into the attribute
    + returns INTEGER, 1 on success 0 on failure
    +
    + +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +REAL*8 REALTIME
    +INTEGER err
    +
    +...
    +err=h5pt_writefileattrib_string(file,"Annotation","Testing 1 2 3")
    +err=h5pt_writestepattrib_r8(file,"RealTime",REALTIME,1)
    +...
    +
    +
    + +
    + +

    Reading Attributes

    +
    +

    +As with the writing of attributes, there are two basic reading interfaces one that reads file bound attributes and one that reads +step bound attributes. If the step is not set the current one will be used. +

    +FORTRAN Prototypes
    + +INTEGER h5pt_readstepattrib
    +FUNCTION h5pt_readstepattrib(filehandle,name,data)
    + in INTEGER*8 filehandle : an open filehandle
    + in CHARACTER attributename(*) : name of the attribute to read
    + out data(*) : the attribute data will be read into this array
    + returns INTEGER, 1 on success 0 on failure
    +
    +
    +INTEGER h5pt_readfileattrib
    +FUNCTION h5pt_readfileattrib(filehandle,name,data)
    + in INTEGER*8 filehandle an open filehandle
    + in CHARACTER attributename(*) : name of the attribute to read
    + out data(*) : the attribute data will be read into this array
    + returns INTEGER, 1 on success 0 on failure
    +
    + +Example Use
    +
    +include 'H5Part.inc'
    +INTEGER*8 file
    +REAL*8 REALTIME
    +
    +...
    +call h5pt_setstep(file,0)
    +err=h5pt_readstepattrib(file,"RealTime",data)
    +...
    +
    + + +
    + + diff --git a/doc/collision_6.png b/doc/collision_6.png new file mode 100755 index 0000000..84b2636 Binary files /dev/null and b/doc/collision_6.png differ diff --git a/doc/collision_6.s.png b/doc/collision_6.s.png new file mode 100755 index 0000000..62dd39b Binary files /dev/null and b/doc/collision_6.s.png differ diff --git a/doc/h5part.html b/doc/h5part.html new file mode 100644 index 0000000..aff0704 --- /dev/null +++ b/doc/h5part.html @@ -0,0 +1,121 @@ + + + +H5Part: a Portable High Performance Parallel Data Interface to HDF5 + + + + + +
    +

    H5Part: a Portable High Performance Parallel Data Interface to HDF5

    +

    THESE PAGES ARE UNDER CONSTRUCTION, July 2006

    +

    Motivation

    +

    + + + + + + +
    + +
    +Beam-beam collision simulation. +
    +

    +

    +Particle based simulations of accelerator beam-lines, especially in +six dimensional phase space, generate vast amounts of data. Even +though a subset of statistical information regarding phase space +or analysis needs to be preserved, reading and writing such +enormous restart files on massively parallel supercomputing +systems remains challenging.

    +

    + +

    +H5Part is a very simple data storage schema and provides an +API that simplifies the reading/writing of the data to the HDF5 +file format. An important foundation for a stable visualization and data +analysis environment is a stable and portable file storage format and +its associated APIs. The presence of a "common file storage format," +including associated APIs, will help foster a fundamental level of +interoperability across the project's software infrastructure. It will +also help ensure that key data analysis capabilities are present +during the earliest phases of the software development effort. +

    +

    +H5Part is built on top of the HDF5 (Hierarchical Data Format). +HDF5 offers a self-describing machine-independent +binary file format that supports scalable parallel I/O +performance for MPI codes on a variety of supercomputing +systems, and works equally well on laptop computers. The API is +available for C, C++, and Fortran codes. The H5Part file format and APIs +enable disparate research groups with different simulation +implementations to transparently share datasets and data +analysis tools. For instance, the common file format will enable +groups that depend on completely different simulation +implementations to share data analysis tools. +

    +

    H5Part file organization and API

    +

    +The proposed file storage format uses HDF5 for the lowlevel +file storage and a simple API to provide a high-level +interface to that file format. A programmer can either use +the H5Part API to access the data files or write directly to +the file format using some simple conventions for organizing +and naming the objects stored in the file. +

    +

    +In order to store Particle Data in the HDF5 file format, +we have formalized the hierarchical arrangement of the +datasets and naming conventions for the groups and associated +datasets. The sample H5Part API formally encodes +these conventions in order to provide a simple and uniform +way to access these files from C, C++, and Fortran codes. +The API makes it easier to write very portable data adaptors +for visualization tools in order to expand the number of +tools available to access the data. Even so, anyone can use +the HDF5 h5ls utility to examine the organization of the +H5Part files and even write their own HDF5-based interface +for reading and writing the file format. The standards +offered by the sample API are completely independent of +the standard for organizing data within the file.The file +format supports the storage of multiple timesteps +of datasets that contain multiple fields. +

    + + +

    Downloading and Installing H5Part

    + +

    Bindings

    + + +

    H5Part Visualization Tools

    + +
    + diff --git a/doc/hdf5.pdf b/doc/hdf5.pdf new file mode 100644 index 0000000..29318d1 Binary files /dev/null and b/doc/hdf5.pdf differ diff --git a/doc/layout.png b/doc/layout.png new file mode 100644 index 0000000..69d133a Binary files /dev/null and b/doc/layout.png differ diff --git a/install-sh b/install-sh new file mode 100755 index 0000000..1a83534 --- /dev/null +++ b/install-sh @@ -0,0 +1,323 @@ +#!/bin/sh +# install - install a program, script, or datafile + +scriptversion=2005-02-02.21 + +# 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. It can only install one file at a time, a restriction +# shared with many OS's install programs. + +# set DOITPROG to echo to test this script + +# Don't use :- since 4.3BSD and earlier shells don't like it. +doit="${DOITPROG-}" + +# put in absolute paths if you don't have them in your path; or use env. vars. + +mvprog="${MVPROG-mv}" +cpprog="${CPPROG-cp}" +chmodprog="${CHMODPROG-chmod}" +chownprog="${CHOWNPROG-chown}" +chgrpprog="${CHGRPPROG-chgrp}" +stripprog="${STRIPPROG-strip}" +rmprog="${RMPROG-rm}" +mkdirprog="${MKDIRPROG-mkdir}" + +chmodcmd="$chmodprog 0755" +chowncmd= +chgrpcmd= +stripcmd= +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src= +dst= +dir_arg= +dstarg= +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: +-c (ignored) +-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. +--help display this help and exit. +--version display version info and exit. + +Environment variables override the default commands: + CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG +" + +while test -n "$1"; do + case $1 in + -c) shift + continue;; + + -d) dir_arg=true + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + --help) echo "$usage"; exit $?;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -s) stripcmd=$stripprog + shift + continue;; + + -t) dstarg=$2 + shift + shift + continue;; + + -T) no_target_directory=true + shift + continue;; + + --version) echo "$0 $scriptversion"; exit $?;; + + *) # When -d is used, all remaining arguments are directories to create. + # When -t is used, the destination is already specified. + test -n "$dir_arg$dstarg" && break + # Otherwise, the last argument is the destination. Remove it from $@. + for arg + do + if test -n "$dstarg"; then + # $@ is not empty: it contains at least $arg. + set fnord "$@" "$dstarg" + shift # fnord + fi + shift # arg + dstarg=$arg + done + break;; + esac +done + +if test -z "$1"; 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 + +for src +do + # Protect names starting with `-'. + case $src in + -*) src=./$src ;; + esac + + if test -n "$dir_arg"; then + dst=$src + src= + + if test -d "$dst"; then + mkdircmd=: + chmodcmd= + else + mkdircmd=$mkdirprog + fi + 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 "$dstarg"; then + echo "$0: no destination specified." >&2 + exit 1 + fi + + dst=$dstarg + # Protect names starting with `-'. + case $dst in + -*) dst=./$dst ;; + esac + + # 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: $dstarg: Is a directory" >&2 + exit 1 + fi + dst=$dst/`basename "$src"` + fi + fi + + # This sed command emulates the dirname command. + dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` + + # Make sure that the destination directory exists. + + # Skip lots of stat calls in the usual case. + if test ! -d "$dstdir"; then + defaultIFS=' + ' + IFS="${IFS-$defaultIFS}" + + oIFS=$IFS + # Some sh's can't handle IFS=/ for some reason. + IFS='%' + set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` + shift + IFS=$oIFS + + pathcomp= + + while test $# -ne 0 ; do + pathcomp=$pathcomp$1 + shift + if test ! -d "$pathcomp"; then + $mkdirprog "$pathcomp" + # mkdir can fail with a `File exist' error in case several + # install-sh are creating the directory concurrently. This + # is OK. + test -d "$pathcomp" || exit + fi + pathcomp=$pathcomp/ + done + fi + + if test -n "$dir_arg"; then + $doit $mkdircmd "$dst" \ + && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ + && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ + && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ + && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } + + else + dstfile=`basename "$dst"` + + # 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 + trap '(exit $?); exit' 1 2 13 15 + + # Copy the file name to the temp name. + $doit $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 "$dsttmp"; } && + + # Now rename the file to the real destination. + { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 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. + { + if test -f "$dstdir/$dstfile"; then + $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ + || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ + || { + echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 + (exit 1); exit 1 + } + else + : + fi + } && + + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" + } + } + fi || { (exit 1); exit 1; } +done + +# The final little trick to "correctly" pass the exit status to the exit trap. +{ + (exit 0); 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-end: "$" +# End: diff --git a/license.txt b/license.txt new file mode 100644 index 0000000..d89303f --- /dev/null +++ b/license.txt @@ -0,0 +1,17 @@ +*** License agreement *** + +H5Part Copyright (c) 2006, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy) and the Paul Scherrer Institut (Switzerland). All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +(1) Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +(2) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +(3) Neither the name of the University of California, Lawrence Berkeley National Laboratory, U.S. Dept. of Energy, Paul Scherrer Institut (Switzerland) nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You are under no obligation whatsoever to provide any bug fixes, patches, or upgrades to the features, functionality or performance of the source code ("Enhancements") to anyone; however, if you choose to make your Enhancements available either publicly, or directly to Lawrence Berkeley National Laboratory, without imposing a separate written license agreement for such Enhancements, then you hereby grant the following license: a non-exclusive, royalty-free perpetual license to install, use, modify, prepare derivative works, incorporate into other computer software, distribute, and sublicense such enhancements or derivative works thereof, in binary and source code form. + +***** diff --git a/missing b/missing new file mode 100755 index 0000000..09edd88 --- /dev/null +++ b/missing @@ -0,0 +1,357 @@ +#! /bin/sh +# Common stub for a few missing GNU programs while installing. + +scriptversion=2005-02-08.22 + +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# Originally by Fran,cois Pinard , 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# 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=: + +# 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' + 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 + tar try tar, gnutar, gtar, then tar without non-portable flags + yacc create \`y.tab.[ch]', if possible, from existing .[ch] + +Send bug reports to ." + 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 + +# 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). +case "$1" in + lex|yacc) + # Not GNU programs, they don't have --version. + ;; + + tar) + if test -n "$run"; then + echo 1>&2 "ERROR: \`tar' requires --run" + exit 1 + elif test "x$2" = "x--version" || test "x$2" = "x--help"; then + exit 1 + fi + ;; + + *) + 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 "$1" 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 's/.*--output[ =]*\([^ ]*\).*/\1/p'` + test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` + 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 [ $# -ne 1 ]; then + eval LASTARG="\${$#}" + case "$LASTARG" in + *.y) + SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` + if [ -f "$SRCFILE" ]; then + cp "$SRCFILE" y.tab.c + fi + SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` + if [ -f "$SRCFILE" ]; then + cp "$SRCFILE" y.tab.h + fi + ;; + esac + fi + if [ ! -f y.tab.h ]; then + echo >y.tab.h + fi + if [ ! -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 [ $# -ne 1 ]; then + eval LASTARG="\${$#}" + case "$LASTARG" in + *.l) + SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` + if [ -f "$SRCFILE" ]; then + cp "$SRCFILE" lex.yy.c + fi + ;; + esac + fi + if [ ! -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 's/.*-o \([^ ]*\).*/\1/p'` + if test -z "$file"; then + file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` + fi + if [ -f "$file" ]; then + touch $file + else + test -z "$file" || exec >$file + echo ".ab help2man is required to generate this page" + exit 1 + 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 's/.*-o \([^ ]*\).*/\1/p'` + 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 + touch $file + ;; + + tar) + shift + + # We have already tried tar in the generic part. + # Look for gnutar/gtar before invocation to avoid ugly error + # messages. + if (gnutar --version > /dev/null 2>&1); then + gnutar "$@" && exit 0 + fi + if (gtar --version > /dev/null 2>&1); then + gtar "$@" && exit 0 + fi + firstarg="$1" + if shift; then + case "$firstarg" in + *o*) + firstarg=`echo "$firstarg" | sed s/o//` + tar "$firstarg" "$@" && exit 0 + ;; + esac + case "$firstarg" in + *h*) + firstarg=`echo "$firstarg" | sed s/h//` + tar "$firstarg" "$@" && exit 0 + ;; + esac + fi + + echo 1>&2 "\ +WARNING: I can't seem to be able to run \`tar' with the given arguments. + You may want to install GNU tar or Free paxutils, or check the + command line arguments." + exit 1 + ;; + + *) + 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-end: "$" +# End: diff --git a/rules.make b/rules.make new file mode 100755 index 0000000..1ce27fc --- /dev/null +++ b/rules.make @@ -0,0 +1,52 @@ +# Makefile Rules (used by both GNUMakefile and Makefile) +# now "all" rule is defined in the main makefile +# all: H5PartTest H5PartTest.o H5Part.o + +vtkhdf.o: vtkhdf.cc + $(CXX) $(CFLAGS) -c vtkhdf.cc + +H5PartTest: H5PartTest.o H5Part.o + $(CXX) -o H5PartTest H5Part.o H5PartTest.o $(LDFLAGS) + +Bench: Bench.c H5Part.o + $(CC) $(CFLAGS) -o Bench Bench.c H5Part.o $(LDFLAGS) + +H5PartTest.o: H5PartTest.cc H5Part.hh + $(CXX) $(CFLAGS) -DREGRESSIONTEST -c H5PartTest.cc + +H5PartTestParallel.o: H5PartTestParallel.cc H5Part.hh + $(CXX) $(CFLAGS) -c H5PartTestParallel.cc + +H5PartTestParallel: H5PartTestParallel.o H5Part.o + $(CXX) -o H5PartTestParallel H5Part.o H5PartTestParallel.o $(LDFLAGS) + +H5PartAndreasTest.o: H5PartAndreasTest.cc H5Part.hh + $(CXX) $(CFLAGS) -c H5PartAndreasTest.cc + +H5PartAndreasTest: H5PartAndreasTest.o H5Part.o + $(CXX) -o H5PartAndreasTest H5Part.o H5PartAndreasTest.o $(LDFLAGS) + +H5Part.o: H5Part.c H5Part.h + $(CC) $(CFLAGS) -c H5Part.c + +H5PartF.o: H5PartF.c Underscore.h H5Part.h + $(CC) $(CFLAGS) -w -c H5PartF.c + +H5testF.o: H5testF.f H5Part.inc + $(F90) $(CFLAGS) -c H5testF.f + +H5testF: H5testF.o H5Part.o H5PartF.o + $(F90) $(CFLAGS) -o H5testF H5testF.o H5PartF.o H5Part.o $(LDFLAGS) -lC + +vtkxml.o: vtkxml.cc + $(CXX) $(CFLAGS) -c vtkxml.cc + +Underscore.h: TestUnderscore.f TestUnderscoreC.c + rm -f TestUnderscore.o TestUnderscoreC.o TestUnderscore + $(CC) -c TestUnderscoreC.c + $(F90) -c TestUnderscore.f + $(F90) -o TestUnderscore TestUnderscore.o TestUnderscoreC.o -lC + ./TestUnderscore >& Underscore.h + +clean: + rm -rf *~ *.o H5PartTest diff --git a/src/H5Part++.cc b/src/H5Part++.cc new file mode 100755 index 0000000..821ff11 --- /dev/null +++ b/src/H5Part++.cc @@ -0,0 +1,234 @@ +#include +#include +#include +#include +#include "H5Part++.hh" + +#include +#include +#include +#include +using namespace std; + +#ifdef READTEST + +/* + A simple regression test that shows how you use this API + to write and read multi-timestep files of particle data. +*/ +#ifdef PARALLEL_IO + + +#else + +int main(int argc,char **argv){ + const int sz=5; + double x[sz],y[sz],z[sz]; + long long id[sz]; + char name[64]; + H5PartFile *file; + int i,t,nt,nds,myproc; + int nfattribs,nsattribs; + + const string fn = string(argv[1]); + + cout << "Open " << fn << endl; + + + file= H5PartOpenFile(fn.c_str(),H5PART_READ); + nt=H5PartGetNumSteps(file); /* get number of steps in file */ + H5PartSetStep(file,0); + nds=H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + + + + puts("\n\n==============================="); + for(i=0;ifile); + H5PartSetStep(file,t); /* must set the current timestep in file */ + H5PartSetNumParticles(file,sz); /* then set number of particles to store */ + /* now write different tuples of data into this timestep of the file */ + H5PartWriteDataFloat64(file,"x",x); + H5PartWriteDataFloat64(file,"y",y); + H5PartWriteDataFloat64(file,"z",z); + H5PartWriteDataInt64(file,"id",id); + } + printf("AllDone p[%u]\n",myproc); + H5PartCloseFile(file); + MPI_Barrier(comm); + printf("p[%u:%u] : OK, close file and reopen for reading \n",myproc,nprocs); + if(myproc==0){ /* now only proc 0 reads the file serially */ + file= H5PartOpenFileSerial("parttest.h5",H5PART_READ); + nt=H5PartGetNumSteps(file); /* get number of steps in file */ + H5PartSetStep(file,0); + nds=H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + + puts("\n\n==============================="); + for(i=0;i0){ + char attrname[32]; + H5PartGetStepAttribInfo(file,0,attrname,32,0,0); + printf("First Attrib name is [%s]\n",attrname); + } + H5PartReadParticleStep(file,t,/* do a mongo read of all data this step */ + x,y,z,id); + printf("\tid\t\tx\t\ty\t\tz\n"); + puts("\t----------------------------------------------------"); + for(i=0;i +#endif +} + +/* Add any C++ specific extensions/implementations/wrappers here */ + +/* here is a sample class wrapping of H5Part for C++ usage */ + +class H5ParticleFile { + H5PartFile *file; + long long np; +public: + H5ParticleFile(const char *filename,const int flags):np(0){ + this->file=H5PartOpenFile(filename,flags); + } + + // H5ParticleFile(const std::string fn,const int flags):np(0){ + // this->file=H5PartOpenFile(fn.cstr(),flags); + //} + +#ifdef PARALLEL_IO + H5ParticleFile(const char *filename,const int flags,const MPI_Comm comm):np(0){ + this->file=H5PartOpenFileParallel(filename,flags,comm); + } + // H5ParticleFile(const string fn,const int flags,const MPI_Comm comm):np(0){ + // this->file=H5PartOpenFile(fn.cstr(),flags,comm); + //} +#endif + inline int isValid() { return H5PartFileIsValid(this->file);} + + ~H5ParticleFile(){H5PartCloseFile(this->file);} + + inline void setNumParticles(long long nparticles){ + np=nparticles; + H5PartSetNumParticles(file,nparticles); + } + // get the current step (-1 means step is invalid) + inline int step(){ return file->timestep; } + // set the current step + inline int step(int s){ H5PartSetStep(this->file,s); return file->timestep; } + inline int nSteps(){ return H5PartGetNumSteps(this->file);} + inline int nFields(){ return H5PartGetNumDatasets(file);} + inline int fieldName(int index,char *name,int maxlen){H5PartGetDatasetName(file,index,name,maxlen);} + inline long long nParticles(){return H5PartGetNumParticles(file);} + inline int write(char *name,double *array){ + return H5PartWriteDataFloat64(this->file,name,array); + } + inline int write(char *name,long long *array){ + return H5PartWriteDataInt64(this->file,name,array); + } + inline int read(char *name,double *array){ + return H5PartReadDataFloat64(this->file,name,array); + } + inline int read(char *name,long long *array){ + return H5PartReadDataInt64(this->file,name,array); + } + inline int readStep(int step, + double *x,double *y,double *z, + double *px,double *py,double *pz, + long long *id){ + return H5PartReadParticleStep(file,step, + x,y,z, + px,py,pz, + id); + } + + // Attribute stuff + // Info on attributes + inline int nStepAttribs(){ return H5PartGetNumStepAttribs(file);} + inline void getStepAttribInfo(int idx,char *name,size_t maxsize, + hid_t &type,int &nelem){ + H5PartGetStepAttribInfo(file,idx,name,maxsize,&type,&nelem); + } + inline int nFileAttribs(){ return H5PartGetNumFileAttribs(file);} + inline void getFileAttribInfo(int idx,char *name,size_t maxsize, + hid_t &type,int &nelem){ + H5PartGetFileAttribInfo(file,idx,name,maxsize,&type,&nelem); + } + // step attribs + // int writeStepAttrib(char *key,string *valuestring){ + // return H5PartWriteStepAttribString(file,key,valuestring.c_str()); + //} + inline int writeStepAttrib(char *key,char *valuestring){ + return H5PartWriteStepAttribString(file,key,valuestring); + } + inline int writeStepAttrib(char *key,double *value,int nelem=1){ + return H5PartWriteStepAttrib(file,key,H5T_NATIVE_DOUBLE,value,nelem); + } + inline int writeStepAttrib(char *key,float *value,int nelem=1){ + return H5PartWriteStepAttrib(file,key,H5T_NATIVE_FLOAT,value,nelem);} + inline int writeStepAttrib(char *key,int *value,int nelem=1){ + return H5PartWriteStepAttrib(file,key,H5T_NATIVE_INT,value,nelem);} + inline int writeStepAttrib(char *key,long long *value,int nelem=1){ + return H5PartWriteStepAttrib(file,key,H5T_NATIVE_INT64,value,nelem);} + inline void readStepAttrib(char *key,void *value){ + H5PartReadStepAttrib(file,key,value); + } + // FileAttribs + // Attribute stuff + // int writeFileAttrib(char *key,string *valuestring){ + // return H5PartWriteFileAttribString(file,key,valuestring.c_str()); + //} + inline int writeFileAttrib(char *key,char *valuestring){ + return H5PartWriteFileAttribString(file,key,valuestring); + } + inline int writeFileAttrib(char *key,double *value,int nelem=1){ + return H5PartWriteFileAttrib(file,key,H5T_NATIVE_DOUBLE,value,nelem); + } + inline int writeFileAttrib(char *key,float *value,int nelem=1){ + return H5PartWriteFileAttrib(file,key,H5T_NATIVE_FLOAT,value,nelem);} + inline int writeFileAttrib(char *key,int *value,int nelem=1){ + return H5PartWriteFileAttrib(file,key,H5T_NATIVE_INT,value,nelem);} + inline int writeFileAttrib(char *key,long long *value,int nelem=1){ + return H5PartWriteFileAttrib(file,key,H5T_NATIVE_INT64,value,nelem);} + // read file attribs + inline int readFileAttrib(char *key,void *valuestring){ + H5PartReadFileAttrib(file,key,valuestring); + } +}; + +/* + An even wackier idea + file.datasets[0:ndatasets-1] + file.attributes[0:nfileattribs-1] + file.datasets.attributes[0:ndatasetattribs-1] + file.datasets.size() + + operators + .size() + .name() + [idx] + ["name" or "keyname"] + +*/ +#if 0 + +class H5Dataset { + const hid_t dataset; + char *n; // return as const + int d[5]; // simple start + int nd; +public: + H5Dataset(const hid_t ds_handle):dataset(ds_handle){} + const char *name() {return n;} + int nDims(){ return nd; } + const int *dims(){return d;} +}; + +class H5Attribute{ + char *n; + int sz; +public: + const char *name(){return n;} + int size(){return sz;} +} + + +class H5Group { + hid_t gid; + int sz; +protected: + virtual int computesize(){} + void setGroup(gid_t g){ + if(gid>0) H5close(gid); + gid=g; + // must compute size if available + if(gid>0) computesize(); + else sz=0; + } +public: + // const hid_t gid; + H5Group(hid_t g):gid(g){} + H5Group():gid(-1){} + ~H5Group(){if(gid>0) H5Gclose(gid);} + int size(){return sz;} +}; + +class H5AttribGroup : public H5Group{ + int size; + virtual void computesize(){ + // compute the number of items in this group + } +public: + const H5Attribute &operator[](char *name); + const H5Attribute &operator[](int idx); +}; + +class H5DataGroup : public H5Group { + int size; +public: + const H5Dataset &operator[](int idx); + const H5Dataset &operator[](char *name); + // no name here?? +}; + +class H5FancyParticles { + char *n; + hid_t file; +public: + hid_t mygroup; + const H5AttribGroup attributes; + const H5DataGroup datasets; + H5FancyParticles(char *filename,int readwriteflag); + ~H5FancyParticles(); + // int size();// return the number of datasets in file + // const char *name(); // return the name of the file? + // const H5Dataset &operator[](int idx); // index dataset by integer + // const H5Dataset &operator[](char *n); // index dataset by name +}; + +#endif + +#endif diff --git a/src/H5Part.c b/src/H5Part.c new file mode 100644 index 0000000..fc99a24 --- /dev/null +++ b/src/H5Part.c @@ -0,0 +1,2461 @@ +/** + H5Part C API +*/ +#include +#include +#include /* va_arg - System dependent ?! */ +#include +#include +#include +#include +#include + +#include "H5PartTypes.h" +#include "H5Part.h" +#include "H5PartPrivate.h" + +/********* Private Variable Declarations *************/ + +static unsigned _debug = 0; +static h5part_int64_t _errno = H5PART_SUCCESS; +static h5part_error_handler _err_handler = H5PartDefaultErrorHandler; + +/********** Definitions of Functions ******/ + +/*========== File Opening/Closing ===============*/ +/*! + Opens file with specified filename. + + If you open with flag \c H5PART_WRITE, it will truncate any + file with the specified filename and start writing to it. If + you open with \c H5PART_APPEND, then you can append new timesteps. + If you open with \c H5PART_READ, then it will open the file + readonly. + + The typical extension for these files is \c .h5. + + H5PartFile should be treated as an essentially opaque + datastructure. It acts as the file handle, but internally + it maintains several key state variables associated with + the file. + + \return File handle or \c NULL + */ + +H5PartFile* +H5PartOpenFileParallel ( + const char *filename, /*!< [in] The name of the data file to open. */ + unsigned flags /*!< [in] The access mode for the file. */ +#ifdef PARALLEL_IO + ,MPI_Comm comm /*!< [in] MPI communicator */ +#endif +) { + static char *__funcname = "H5PartOpenFileParallel"; + + if ( _H5Part_init() < 0 ) { + HANDLE_H5PART_INIT_ERR; + return NULL; + } + _errno = H5PART_SUCCESS; + H5PartFile *f = NULL; + + f = (H5PartFile*) malloc( sizeof (H5PartFile) ); + if( f == NULL ) { + HANDLE_H5PART_NOMEM_ERR; + goto error_cleanup; + } + memset (f, 0, sizeof (H5PartFile)); + f->xfer_prop = f->create_prop = f->access_prop = H5P_DEFAULT; + +#ifdef PARALLEL_IO + /* for the SP2... perhaps different for linux */ + MPI_Info info = MPI_INFO_NULL; + + if (MPI_Comm_size (comm, &f->nprocs) != MPI_SUCCESS) { + HANDLE_MPI_COMM_SIZE_ERR; + goto error_cleanup; + } + if (MPI_Comm_rank (comm, &f->myproc) != MPI_SUCCESS) { + HANDLE_MPI_COMM_RANK_ERR; + goto error_cleanup; + } + + f->pnparticles = (h5part_int64_t*) malloc (f->nprocs * sizeof (h5part_int64_t)); + if (f->pnparticles == NULL) { + HANDLE_H5PART_NOMEM_ERR; + goto error_cleanup; + } + + f->access_prop = H5Pcreate (H5P_FILE_ACCESS); + if (f->access_prop < 0) { + HANDLE_H5P_CREATE_ERR; + goto error_cleanup; + } + + if (H5Pset_fapl_mpio (f->access_prop, comm, info) < 0) { + HANDLE_H5P_SET_FAPL_MPIO_ERR; + goto error_cleanup; + } + + /* create_prop: tunable parameters like blocksize and btree sizes */ + /* f->create_prop = H5Pcreate(H5P_FILE_CREATE); */ + f->create_prop = H5P_DEFAULT; + + /* currently create_prop is empty */ + /* xfer_prop: also used for parallel I/O, during actual writes + rather than the access_prop which is for file creation. */ + f->xfer_prop = H5Pcreate (H5P_DATASET_XFER); + if (f->xfer_prop < 0) { + HANDLE_H5P_CREATE_ERR; + goto error_cleanup; + } + + if (H5Pset_dxpl_mpio (f->xfer_prop, H5FD_MPIO_COLLECTIVE) < 0) { + HANDLE_H5P_SET_DXPL_MPIO_ERR; + goto error_cleanup; + } + + f->comm = comm; +#endif + if ( flags == H5PART_READ ) { + f->file = H5Fopen (filename, H5F_ACC_RDONLY, f->access_prop); + } + else if ( flags == H5PART_WRITE ){ + f->file = H5Fcreate (filename, H5F_ACC_TRUNC, f->create_prop, f->access_prop); + } + else if ( flags == H5PART_APPEND ) { + int fd = open (filename, O_RDONLY, 0); + if ( (fd == -1) && (errno == ENOENT) ) { + f->file = H5Fcreate(filename, H5F_ACC_TRUNC, + f->create_prop, f->access_prop); + } + else if (fd != -1) { + close (fd); + f->file = H5Fopen (filename, H5F_ACC_RDWR, f->access_prop); + /* + The following function call returns an error, + if f->file < 0. But we can safely ignore this. + */ + f->timestep = H5PartGetNumSteps (f); + } + } + else { + HANDLE_H5PART_FILE_ACCESS_TYPE_ERR ( flags ); + goto error_cleanup; + } + + if (f->file < 0) { + HANDLE_H5F_OPEN_ERR ( filename, flags ); + goto error_cleanup; + } +#ifdef PARALLEL_IO + else { + print_info ( "H5PartOpenFileParallel: " + "Proc[%d]: Opened file \"%s\" val=%d", + f->myproc, + filename, + f->file ); + } +#endif + f->mode = flags; + f->timegroup = 0; + f->shape = 0; + f->diskshape = H5S_ALL; + f->memshape = H5S_ALL; + f->viewstart = -1; + f->viewend = -1; + + return f; + + error_cleanup: + if (f != NULL ) { + if (f->pnparticles != NULL) { + free (f->pnparticles); + } + free (f); + } + return NULL; +} + +/*! + Opens file with specified filename. + + If you open with flag \c H5PART_WRITE, it will truncate any + file with the specified filename and start writing to it. If + you open with \c H5PART_APPEND, then you can append new timesteps. + If you open with \c H5PART_READ, then it will open the file + readonly. + + The typical extension for these files is \c .h5. + + H5PartFile should be treated as an essentially opaque + datastructure. It acts as the file handle, but internally + it maintains several key state variables associated with + the file. + + \return File handle or \c NULL + */ + +H5PartFile* +H5PartOpenFile ( + const char *filename, /*!< [in] The name of the data file to open. */ + unsigned flags /*!< [in] The access mode for the file. */ + ) { + + static char *__funcname = "H5PartOpenFile"; + if ( _H5Part_init() < 0 ) { + HANDLE_H5PART_INIT_ERR; + return NULL; + } + + _errno = H5PART_SUCCESS; + H5PartFile *f = NULL; + + f = (H5PartFile*) malloc( sizeof (H5PartFile) ); + if( f == NULL ) { + HANDLE_H5PART_NOMEM_ERR; + goto error_cleanup; + } + memset (f, 0, sizeof (H5PartFile)); + f->xfer_prop = f->create_prop = f->access_prop = H5P_DEFAULT; + +#ifdef PARALLEL_IO + f->pnparticles = 0; + f->comm = MPI_COMM_WORLD; + f->nprocs = 1; + f->myproc = 0; +#endif + if (flags == H5PART_READ) { + f->file = H5Fopen (filename, H5F_ACC_RDONLY, f->access_prop); + } + else if (flags == H5PART_WRITE){ + f->file = H5Fcreate (filename, H5F_ACC_TRUNC, f->create_prop, f->access_prop); + } + else if (flags == H5PART_APPEND) { + int fd = open (filename, O_RDONLY, 0); + if ( (fd == -1) && (errno == ENOENT) ) { + f->file = H5Fcreate(filename, H5F_ACC_TRUNC, + f->create_prop, f->access_prop); + } + else if (fd != -1) { + close (fd); + f->file = H5Fopen (filename, H5F_ACC_RDWR, f->access_prop); + /* + The following function call returns an error, + if f->file < 0. But we can safely ignore it + */ + f->timestep = H5PartGetNumSteps (f); + } + } + else { + HANDLE_H5PART_FILE_ACCESS_TYPE_ERR ( flags ); + goto error_cleanup; + } + + if (f->file < 0) { + HANDLE_H5F_OPEN_ERR ( filename, flags ); + goto error_cleanup; + } + + f->mode = flags; + f->timegroup = 0; + f->shape = 0; + f->diskshape = H5S_ALL; + f->memshape = H5S_ALL; + f->viewstart = -1; + f->viewend = -1; + + return f; + + error_cleanup: + if (f != NULL ) { + if (f->pnparticles != NULL) { + free (f->pnparticles); + } + free (f); + } + return NULL; +} + +/*! + Checks if a file was successfully opened. + + \return \c H5PART_SUCCESS or error code + */ +h5part_int64_t +_H5PartFileIsValid ( + H5PartFile *f /*!< filehandle to check validity of */ + ) { + + if( f == NULL ) + return H5PART_ERR_BADFD; + else if(f->file > 0) + return H5PART_SUCCESS; + else + return H5PART_ERR_BADFD; +} + +/*! + Closes an open file. + + \return \c H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartCloseFile ( + H5PartFile *f /*!< [in] filehandle of the file to close */ + ) { + + static char *__funcname = "H5PartCloseFile"; + herr_t r = 0; + _errno = H5PART_SUCCESS; + + CHECK_FILEHANDLE ( f ); + + if( f->shape > 0 ) { + r = H5Sclose( f->shape ); + if ( r < 0 ) HANDLE_H5S_CLOSE_ERR; + f->shape = 0; + } + if( f->timegroup > 0 ) { + r = H5Gclose( f->timegroup ); + if ( r < 0 ) HANDLE_H5G_CLOSE_ERR; + f->timegroup = 0; + } + if( f->diskshape != H5S_ALL ) { + r = H5Sclose( f->diskshape ); + if ( r < 0 ) HANDLE_H5S_CLOSE_ERR; + f->diskshape = 0; + } + if( f->xfer_prop != H5P_DEFAULT ) { + r = H5Pclose( f->xfer_prop ); + if ( r < 0 ) HANDLE_H5P_CLOSE_ERR ( "f->xfer_prop" ); + f->xfer_prop = H5P_DEFAULT; + } + if( f->access_prop != H5P_DEFAULT ) { + r = H5Pclose( f->access_prop ); + if ( r < 0 ) HANDLE_H5P_CLOSE_ERR ( "f->access_prop" ); + f->access_prop = H5P_DEFAULT; + } + if( f->create_prop != H5P_DEFAULT ) { + r = H5Pclose( f->create_prop ); + if ( r < 0 ) HANDLE_H5P_CLOSE_ERR ( "f->create_prop" ); + f->create_prop = H5P_DEFAULT; + } + if ( f->file ) { + r = H5Fclose( f->file ); + if ( r < 0 ) HANDLE_H5F_CLOSE_ERR; + f->file = 0; + } + if( f->pnparticles ) { + free( f->pnparticles ); + } + free( f ); + + return _errno; +} + +/*============== File Writing Functions ==================== */ +/*! + Set number of particles for current time-step. + + This function's sole purpose is to prevent + needless creation of new HDF5 DataSpace handles if the number of + particles is invariant throughout the simulation. That's its only reason + for existence. After you call this subroutine, all subsequent + operations will assume this number of particles will be written. + + + \return \c H5PART_SUCCESS or error code + */ +h5part_int64_t +H5PartSetNumParticles ( + H5PartFile *f, /*!< [in] Handle to open file */ + h5part_int64_t nparticles /*!< [in] Number of particles */ + ) { + + static char *__funcname = "H5PartSetNumParticles"; + int r; +#ifdef PARALLEL_IO +#ifdef HDF5V160 + hssize_t start[1]; +#else + hsize_t start[1]; +#endif + + hsize_t stride[1]; + hsize_t count[1]; + hsize_t total; + hsize_t dmax = H5S_UNLIMITED; + register int i; +#endif + + CHECK_FILEHANDLE( f ); + +#ifndef PARALLEL_IO + /* + if we are not using parallel-IO, there is enough information + to know that we can short circuit this routine. However, + for parallel IO, this is going to cause problems because + we don't know if things have changed globally + */ + if ( f->nparticles == nparticles ) { + return H5PART_SUCCESS; + } +#endif + if ( f->diskshape != H5S_ALL ) { + r = H5Sclose( f->diskshape ); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + f->diskshape = H5S_ALL; + } + if(f->memshape != H5S_ALL) { + r = H5Sclose( f->memshape ); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + f->memshape = H5S_ALL; + } + if( f->shape ) { + r = H5Sclose(f->shape); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + } + f->nparticles =(hsize_t) nparticles; +#ifndef PARALLEL_IO + f->shape = H5Screate_simple (1, + &(f->nparticles), + NULL); + if ( f->shape < 0 ) HANDLE_H5S_CREATE_SIMPLE_ERR ( f->nparticles ); + +#else /* PARALLEL_IO */ + /* + The Gameplan here is to declare the overall size of the on-disk + data structure the same way we do for the serial case. But + then we must have additional "DataSpace" structures to define + our in-memory layout of our domain-decomposed portion of the particle + list as well as a "selection" of a subset of the on-disk + data layout that will be written in parallel to mutually exclusive + regions by all of the processors during a parallel I/O operation. + These are f->shape, f->memshape and f->diskshape respectively. + */ + + /* + acquire the number of particles to be written from each MPI process + */ + r = MPI_Allgather ( + &nparticles, 1, MPI_LONG_LONG, + f->pnparticles, 1, MPI_LONG_LONG, + f->comm); + if ( r != MPI_SUCCESS) { + return HANDLE_MPI_ALLGATHER_ERR; + } + if ( f->myproc == 0 ) { + print_debug ("H5PartSetNumParticels: AllGather: Particle offsets:\n"); + for(i=0;inprocs;i++) + print_debug ( "\tnp=%d\n",(int) f->pnparticles[i] ); + } + /* should I create a selection here? */ + + /* compute start offsets */ + stride[0] = 1; + start[0] = 0; + for (i=0; imyproc; i++) { + start[0] += f->pnparticles[i]; + } + + + + /* compute total nparticles */ + total = 0; + for (i=0; i < f->nprocs; i++) { + total += f->pnparticles[i]; + } + + /* declare overall datasize */ + f->shape = H5Screate_simple (1, &total, &total); + if (f->shape < 0) return HANDLE_H5S_CREATE_SIMPLE_ERR ( total ); + + + /* declare overall data size but then will select a subset */ + f->diskshape = H5Screate_simple (1, &total, &total); + if (f->diskshape < 0) return HANDLE_H5S_CREATE_SIMPLE_ERR ( total ); + + /* declare local memory datasize */ + f->memshape = H5Screate_simple (1, &(f->nparticles), &dmax); + if (f->memshape < 0) return HANDLE_H5S_CREATE_SIMPLE_ERR ( f->nparticles ); + + count[0] = nparticles; /* based on local nparticles (for the selection */ + /* and then set the subset of the data you will write to */ + r = H5Sselect_hyperslab (f->diskshape, H5S_SELECT_SET, start, stride, count, NULL); + if ( r < 0 ) return HANDLE_H5S_SELECT_HYPERSLAB_ERR; + + if ( f->timegroup < 0 ) { + r = H5PartSetStep ( f, 0 ); + if ( r < 0 ) return HANDLE_H5PART_SETSTEP_ERR( r, 0 ); + + } +#endif + return H5PART_SUCCESS; +} + +/*! + Write array of 64 bit floating point data to file. + + After setting the number of particles with \c H5PartSetNumParticles() and + the current timestep using \c H5PartSetStep(), you can start writing datasets + into the file. Each dataset has a name associated with it (chosen by the + user) in order to facilitate later retrieval. The name of the dataset is + specified in the parameter \c name, which must be a null-terminated string. + + There are no restrictions on naming of datasets, but it is useful to arrive + at some common naming convention when sharing data with other groups. + + The writing routines also implicitly store the datatype of the array so that + the array can be reconstructed properly on other systems with incompatible type + representations. + + All data that is written after setting the timestep is associated with that + timestep. While the number of particles can change for each timestep, you + cannot change the number of particles in the middle of a given timestep. + + The data is committed to disk before the routine returns. + + \return \c H5PART_SUCCESS or error code + */ +h5part_int64_t +H5PartWriteDataFloat64 ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name to associate array/dataset with */ + h5part_float64_t *array /*!< [in] Array to commit to disk */ + ) { + + static char *__funcname = "H5PartWriteDataFloat64"; + register int r; + hid_t dataset; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE( f ); + CHECK_TIMEGROUP( f ); + + print_debug ( "H5PartWriteDataFloat64: " + "Create a dataset[%s] mounted on the timegroup %d", + name,f->timestep ); + + dataset = H5Dcreate(f->timegroup,name,H5T_NATIVE_DOUBLE,f->shape,H5P_DEFAULT); + if ( dataset < 0 ) return HANDLE_H5D_CREATE_ERR ( name, f->timestep ); + + r = H5Dwrite(dataset,H5T_NATIVE_DOUBLE,f->memshape,f->diskshape,H5P_DEFAULT,array); + if ( r < 0 ) return HANDLE_H5D_WRITE_ERR ( name, f->timestep ); + + r = H5Dclose(dataset); + if ( r < 0 ) return HANDLE_H5D_CLOSE_ERR; + + return r; +} + +/*! + Write array of 64 bit integer data to file. + + After setting the number of particles with \c H5PartSetNumParticles() and + the current timestep using \c H5PartSetStep(), you can start writing datasets + into the file. Each dataset has a name associated with it (chosen by the + user) in order to facilitate later retrieval. The name of the dataset is + specified in the parameter \c name, which must be a null-terminated string. + + There are no restrictions on naming of datasets, but it is useful to arrive + at some common naming convention when sharing data with other groups. + + The writing routines also implicitly store the datatype of the array so that + the array can be reconstructed properly on other systems with incompatible type + representations. + + All data that is written after setting the timestep is associated with that + timestep. While the number of particles can change for each timestep, you + cannot change the number of particles in the middle of a given timestep. + + The data is committed to disk before the routine returns. + + \return \c H5PART_SUCCESS or error code + */ +h5part_int64_t +H5PartWriteDataInt64 ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name to associate array/dataset with */ + h5part_int64_t *array /*!< [in] Array to commit to disk */ + ) { + + static char *__funcname = "H5PartOpenWriteDataInt64"; + register int r; + hid_t dataset; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE( f ); + CHECK_TIMEGROUP( f ); + + print_debug ( "%s: Create a dataset[%s] mounted on the timegroup %d", + __funcname, name, f->timestep ); + + dataset = H5Dcreate(f->timegroup,name,H5T_NATIVE_INT64,f->shape,H5P_DEFAULT); + if ( dataset < 0 ) return HANDLE_H5D_CREATE_ERR ( name, f->timestep ); + + r = H5Dwrite(dataset,H5T_NATIVE_INT64,f->memshape,f->diskshape,H5P_DEFAULT,array); + if ( r < 0 ) return HANDLE_H5D_WRITE_ERR( name, f->timestep ); + + r = H5Dclose(dataset); + if ( r < 0 ) return HANDLE_H5D_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/*! + Writes a string attribute bound to a file. + + This function creates a new attribute \c name with the string \c value as + content. The attribute is bound to the file associated with the file handle + \c f. + + If the attribute already exists an error will be returned. There + is currently no way to change the content of an existing attribute. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartWriteFileAttribString ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to create */ + char *value /*!< [in] Value of attribute */ + ) { + + static char *__funcname = "H5PartWriteFileAttribString"; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE( f ); + + return H5PartWriteFileAttrib(f,name,H5T_NATIVE_CHAR,value,strlen(value)+1); +} + +/*! + Writes a string attribute bound to the current time-step. + + This function creates a new attribute \c name with the string \c value as + content. The attribute is bound to the current time step in the file given + by the file handle \c f. + + If the attribute already exists an error will be returned. There + is currently no way to change the content of an existing attribute. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartWriteStepAttribString ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to create */ + char *value /*!< [in] Value of attribute */ + ) { + + static char *__funcname = "H5PartWriteStepAttribString"; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE( f ); + + return H5PartWriteStepAttrib(f,name,H5T_NATIVE_CHAR,value,strlen(value)+1); +} + +/*! + Writes a attribute bound to the current time-step. + + This function creates a new attribute \c name with the string \c value as + content. The attribute is bound to the current time step in the file given + by the file handle \c f. + + The value of the attribute is given the parameter \c type, which must be one + of \c H5T_NATIVE_DOUBLE, \c H5T_NATIVE_INT64 of \c H5T_NATIVE_CHAR, the array + \c value and the number of elements \c nelem in the array. + + If the attribute already exists an error will be returned. There + is currently no way to change the content of an existing attribute. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartWriteStepAttrib ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to create */ + hid_t type, /*!< [in] Type of value: On of H5T_NATIVE_DOUBLE, + H5T_NATIVE_INT64, H5T_NATIVE_CHAR. */ + void *value, /*!< [in] Value of attribute */ + int nelem /*!< [in] Number of elements of type \c type */ + ){ + + static char *__funcname = "H5PartWriteStepAttrib"; + register int r; + hid_t attrib; + hid_t space; + hsize_t len; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE( f ); + CHECK_TIMEGROUP( f ); + + print_debug ( "H5PartWriteStepAttrib: " + "Create an attribute[%s] mounted on the timegroup %d", + name, f->timestep ); + + len = nelem; + space = H5Screate_simple (1, &len, NULL); + if ( space < 0 ) return HANDLE_H5S_CREATE_SIMPLE_ERR ( len ); + + attrib = H5Acreate(f->timegroup,name,type,space,H5P_DEFAULT); + if ( attrib < 0 ) return HANDLE_H5A_CREATE_ERR ( name ); + + r = H5Awrite(attrib,type,value); + if ( r < 0 ) return HANDLE_H5A_WRITE_ERR ( name ); + + r = H5Aclose(attrib); + if ( r < 0 ) return HANDLE_H5A_CLOSE_ERR; + + r = H5Sclose(space); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + + return r; +} + +/*! + Writes a attribute bound to the current time-step. + + This function creates a new attribute \c name with the string \c value as + content. The attribute is bound to the current time step in the file given + by the file handle \c f. + + The value of the attribute is given the parameter \c type, which must be one + of \c H5T_NATIVE_DOUBLE, \c H5T_NATIVE_INT64 of \c H5T_NATIVE_CHAR, the array + \c value and the number of elements \c nelem in the array. + + If the attribute already exists an error will be returned. There + is currently no way to change the content of an existing attribute. + + \note This call has been superseeded by \c H5PartWriteStepAttrib. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartWriteAttrib ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to create */ + hid_t type, /*!< [in] Type of value: On of \c H5T_NATIVE_DOUBLE, + \c H5T_NATIVE_INT64, \c H5T_NATIVE_CHAR. */ + void *value, /*!< [in] Value of attribute */ + int nelem /*!< [in] Number of elements of type \c type */ + ) { + + static char *__funcname = "H5PartWriteAttrib"; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE ( f ); + + return H5PartWriteStepAttrib(f,name,type,value,nelem); +} + +/*! + Writes a attribute bound to a file. + + This function creates a new attribute \c name with the string \c value as + content. The attribute is bound to the file file given by the file handle + \c f. + + The value of the attribute is given the parameter \c type, which must be one + of H5T_NATIVE_DOUBLE, H5T_NATIVE_INT64 of H5T_NATIVE_CHAR, the array \c value + and the number of elements \c nelem in the array. + + If the attribute already exists an error will be returned. There + is currently no way to change the content of an existing attribute. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartWriteFileAttrib ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to create */ + hid_t type, /*!< [in] Type of value: On of H5T_NATIVE_DOUBLE, + H5T_NATIVE_INT64, H5T_NATIVE_CHAR. */ + void *value, /*!< [in] Value of attribute */ + int nelem /*!< [in] Number of elements of type \c type */ + ) { + + static char *__funcname = "H5PartWriteFileAttrib"; + register int r; + hid_t attrib,rootgroup; + hid_t space; + hsize_t len; + + CHECK_FILEHANDLE ( f ); + CHECK_WRITABLE_MODE ( f ); + + print_debug ( "%s: Create a file attribute[%s] spep=%d", + __funcname, name, f->timestep ); + len = nelem; + space = H5Screate_simple ( 1, &len, NULL ) + ; if ( space <= 0 ) return HANDLE_H5S_CREATE_SIMPLE_ERR( len ); + + rootgroup = H5Gopen(f->file,"/") + ; if ( rootgroup < 0 ) return HANDLE_H5G_OPEN_ERR( "/" ); + + attrib = H5Acreate(rootgroup,name,type,space,H5P_DEFAULT) + ; if ( attrib < 0 ) return HANDLE_H5A_CREATE_ERR( name ); + + + r = H5Gclose(rootgroup); if ( r < 0 ) return HANDLE_H5G_CLOSE_ERR; + r = H5Awrite(attrib,type,value);if ( r < 0 ) return HANDLE_H5A_WRITE_ERR ( name ); + r = H5Aclose(attrib); if ( r < 0 ) return HANDLE_H5A_CLOSE_ERR; + r = H5Sclose(space); if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + return H5PART_SUCCESS; +} + + +/*! + Gets the number of attributes bound to the current step. + + \return Number of attributes bound to current time step or error code. +*/ +h5part_int64_t +H5PartGetNumStepAttribs ( + H5PartFile *f /*!< [in] Handle to open file */ + ) { + + static char *__funcname = "H5PartGetNumStepAttribs"; + int r; + + CHECK_FILEHANDLE ( f ); + + r = H5Aget_num_attrs(f->timegroup); + if ( r < 0 ) HANDLE_H5A_GET_NUM_ATTRS_ERR; + + return r; +} + +/*! + Gets the number of attributes bound to the file. + + \return Number of attributes bound to file \c f or error code. +*/ +h5part_int64_t +H5PartGetNumFileAttribs ( + H5PartFile *f /*!< [in] Handle to open file */ + ) { + + static char *__funcname = "H5PartGetNumFileAttribs"; + int r; + int nattribs; + + CHECK_FILEHANDLE ( f ); + + /* open / for the file? + or is there a problem with + file attributes? */ + hid_t rootgroup = H5Gopen ( f->file,"/" ); + if ( rootgroup < 0 ) HANDLE_H5G_OPEN_ERR ( "/" ); + + nattribs = H5Aget_num_attrs(rootgroup); + if ( nattribs < 0 ) HANDLE_H5A_GET_NUM_ATTRS_ERR; + + r = H5Gclose ( rootgroup ); + if ( r < 0 ) HANDLE_H5G_CLOSE_ERR; + return nattribs; +} + +/** + H5PartNormType: Private +*/ +static hid_t +_H5PartNormType ( + hid_t type + ) { + H5T_class_t tclass = H5Tget_class(type); + int size = H5Tget_size(type); + + switch(tclass){ + case H5T_INTEGER: + if(size==8) { + return H5T_NATIVE_INT64; + } + else if(size==1) { + return H5T_NATIVE_CHAR; + } + break; + case H5T_FLOAT: + return H5T_NATIVE_DOUBLE; + default: + ; /* NOP */ + } + print_warn ( "_H5PartNormType: Unknown type %d", (int)type ); + + return -1; +} + +/*! + Gets the name, type and number of elements of the step attribute + specified by its index. + + This function can be used to retrieve all attributes bound to the + current time-step by looping from \c 0 to the number of attribute + minus one. The number of attributes bound to the current + time-step can be queried by calling the function + \c H5PartGetNumStepAttribs(). + + \return \c H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartGetStepAttribInfo ( + H5PartFile *f, /*!< [in] Handle to open file */ + int idx, /*!< [in] Index of attribute to get infos about */ + char *name, /*!< [out] Name of attribute */ + size_t maxname, /*!< [in] length of buffer \c name */ + hid_t *type, /*!< [out] Type of value: On of H5T_NATIVE_DOUBLE, + H5T_NATIVE_INT64, H5T_NATIVE_CHAR. */ + int *nelem /*!< [out] Number of elements of type \c type */ + ) { + + static char *__funcname = "H5PartGetStepAttribInfo"; + hid_t attrib; + hid_t mytype; + hid_t space; + int r; + + CHECK_FILEHANDLE( f ); + + attrib = H5Aopen_idx(f->timegroup,idx); + if ( attrib < 0 ) return HANDLE_H5A_OPEN_IDX_ERR ( idx ); + + mytype = H5Aget_type(attrib); + if ( attrib < 0 ) return HANDLE_H5A_GET_TYPE_ERR; + + space = H5Aget_space(attrib); + if ( attrib < 0 ) return HANDLE_H5A_GET_SPACE_ERR; + + if ( nelem ) { + *nelem=H5Sget_simple_extent_npoints(space); + if ( *nelem < 0 ) return HANDLE_H5S_GET_SIMPLE_EXTENT_NPOINTS_ERR; + } + if ( name ) { + r = H5Aget_name(attrib,maxname,name); + if ( r < 0 ) return HANDLE_H5A_GET_NAME_ERR; + } + if ( type ) { + *type = _H5PartNormType ( mytype ); + } + r = H5Sclose(space); if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + r = H5Tclose(mytype); if ( r < 0 ) return HANDLE_H5T_CLOSE_ERR; + r = H5Aclose(attrib); if ( r < 0 ) return HANDLE_H5A_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/*! + Gets the name, type and number of elements of the file attribute + specified by its index. + + This function can be used to retrieve all attributes bound to the + file \c f by looping from \c 0 to the number of attribute minus + one. The number of attributes bound to file \c f can be queried + by calling the function \c H5PartGetNumFileAttribs(). + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartGetFileAttribInfo ( + H5PartFile *f, /*!< [in] Handle to open file */ + int idx, /*!< [in] Index of attribute to get infos about */ + char *name, /*!< [out] Name of attribute */ + size_t maxname, /*!< [in] length of buffer \c name */ + hid_t *type, /*!< [out] Type of value: On of H5T_NATIVE_DOUBLE, + H5T_NATIVE_INT64, H5T_NATIVE_CHAR. */ + int *nelem /*!< [out] Number of elements of type \c type */ + ) { + + static char *__funcname = "H5PartGetFileAttribInfo"; + hid_t rootgroup; + hid_t attrib; + hid_t mytype; + hid_t space; + int r; + + CHECK_FILEHANDLE( f ); + + rootgroup = H5Gopen(f->file,"/"); + if ( rootgroup < 0 ) return HANDLE_H5G_OPEN_ERR( "/" ); + attrib = H5Aopen_idx(rootgroup,idx); + if ( attrib < 0 ) return HANDLE_H5A_OPEN_IDX_ERR( idx ); + mytype = H5Aget_type(attrib); + if ( mytype < 0 ) return HANDLE_H5A_GET_TYPE_ERR; + space = H5Aget_space(attrib); + if ( space < 0 ) return HANDLE_H5A_GET_SPACE_ERR; + + if ( nelem ) { + *nelem=H5Sget_simple_extent_npoints(space); + if ( *nelem < 0 ) return HANDLE_H5S_GET_SIMPLE_EXTENT_NPOINTS_ERR; + } + if ( name ) { + r = H5Aget_name(attrib,maxname,name); + if ( r < 0 ) return HANDLE_H5A_GET_NAME_ERR; + + } + if ( type ) { + *type = _H5PartNormType ( mytype ); + } + r = H5Sclose(space); if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + r = H5Tclose(mytype); if ( r < 0 ) return HANDLE_H5T_CLOSE_ERR; + r = H5Aclose(attrib); if ( r < 0 ) return HANDLE_H5A_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/*! + Reads an attribute bound to current time-step. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartReadStepAttrib ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to read */ + void *value /*!< [out] Value of attribute */ + ) { + + static char *__funcname = "H5PartReadStepAttrib"; + + /* use the open attribute by name mode of operation */ + hid_t attrib = H5Aopen_name(f->timegroup,name); + hid_t mytype; + hid_t space; + hsize_t nelem; + hid_t type; + hid_t r; + + CHECK_FILEHANDLE( f ); + + if ( attrib <= 0 ) return HANDLE_H5A_OPEN_NAME_ERR( name ); + + mytype = H5Aget_type(attrib); + if ( mytype < 0 ) return HANDLE_H5A_GET_TYPE_ERR; + + space = H5Aget_space(attrib); + if ( space < 0 ) return HANDLE_H5A_GET_SPACE_ERR; + + nelem = H5Sget_simple_extent_npoints(space); + if ( nelem < 0 ) return HANDLE_H5S_GET_SIMPLE_EXTENT_NPOINTS_ERR; + + type = _H5PartNormType ( mytype ); + + r = H5Aread(attrib,type,value); if ( r < 0 ) return HANDLE_H5A_READ_ERR; + + r = H5Sclose(space); if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + r = H5Tclose(mytype); if ( r < 0 ) return HANDLE_H5T_CLOSE_ERR; + r = H5Aclose(attrib); if ( r < 0 ) return HANDLE_H5A_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/*! + Reads an attribute bound to current time-step. + + \return \c H5PART_SUCCESS or error code + + \note + This function has been superseeded by \c H5PartReadStepAttrib(). + +*/ +h5part_int64_t +H5PartReadAttrib ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name of attribute to read */ + void *value /*!< [out] Value of attribute */ + ) { + + static char *__funcname = "H5PartReadAttrib"; + + CHECK_FILEHANDLE( f ); + + /* use the open attribute by name mode of operation */ + return H5PartReadStepAttrib(f,name,value); +} + +/*! + Reads an attribute bound to file \c f. + + \return \c H5PART_SUCCESS or error code +*/ + + +h5part_int64_t +H5PartReadFileAttrib ( + H5PartFile *f, + char *name, + void *value + ) { + + static char *__funcname = "H5PartReadFileAttrib"; + + hid_t rootgroup; + hid_t attrib; + hid_t mytype; + hid_t space; + hsize_t nelem; + hid_t type; + hid_t r; + + CHECK_FILEHANDLE( f ); + + rootgroup = H5Gopen(f->file,"/") + ; if ( rootgroup < 0 ) return HANDLE_H5G_OPEN_ERR( "/" ); + + attrib = H5Aopen_name(rootgroup,name) + ; if ( attrib <= 0 ) return HANDLE_H5A_OPEN_NAME_ERR( name ); + + mytype = H5Aget_type(attrib); if ( mytype < 0 ) return HANDLE_H5A_GET_TYPE_ERR; + + space = H5Aget_space(attrib); if ( space < 0 ) return HANDLE_H5A_GET_SPACE_ERR; + + nelem = H5Sget_simple_extent_npoints(space) + ; if ( nelem < 0 ) return HANDLE_H5S_GET_SIMPLE_EXTENT_NPOINTS_ERR; + + type = _H5PartNormType ( mytype ); + + r = H5Aread(attrib,type,value); if ( r < 0 ) return HANDLE_H5A_READ_ERR; + + r = H5Sclose(space); if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + r = H5Tclose(mytype); if ( r < 0 ) return HANDLE_H5T_CLOSE_ERR; + r = H5Aclose(attrib); if ( r < 0 ) return HANDLE_H5A_CLOSE_ERR; + + return H5PART_SUCCESS; +} + + +/*================== File Reading Routines =================*/ +/* + H5PartSetStep: + + + So you use this to random-access the file for a particular timestep. + Failure to explicitly set the timestep on each read will leave you + stuck on the same timestep for *all* of your reads. That is to say + the writes auto-advance the file pointer, but the reads do not + (they require explicit advancing by selecting a particular timestep). +*/ + +/*! + Set the current time-step. + + When writing data to a file the current time step must be set first + (even if there is only one). In write-mode this function creates a new + time-step! You are not allowed to step to an already existing time-step. + This prevents you from overwriting existing data. Another consequence is, + that you \b must write all data before going to the next time-step. + + In read-mode you can use this function to random-access the file for a + particular timestep. + + \return \c H5PART_SUCCESS or error code +*/ + +h5part_int64_t +H5PartSetStep ( + H5PartFile *f, /*!< [in] Handle to open file */ + h5part_int64_t step /*!< [in] Time-step to set. */ + ) { + + static char *__funcname = "H5PartSetStep"; + herr_t r; + + char name[128]; + + CHECK_FILEHANDLE ( f ); + + print_info ( "%s: Proc[%d]: Set step to #%d for file %d\n", + __funcname, f->myproc, step, (int) f->file ); + + sprintf ( name, "Particles#%ld", step ); + r = H5Gget_objinfo( f->file, name, 1, NULL ); + if ( ( (f->mode == H5PART_APPEND) || (f->mode == H5PART_WRITE) ) + && ( r >= 0 ) ) { + return HANDLE_H5PART_STEP_EXISTS_ERR ( step ); + } + + if(f->timegroup>0) { + r = H5Gclose(f->timegroup); if ( r < 0 ) HANDLE_H5G_CLOSE_ERR; + } + f->timegroup = -1; + f->timestep = step; + + if(f->mode==H5PART_READ) { + f->timegroup = H5Gopen(f->file,name); + if ( f->timegroup < 0 ) return HANDLE_H5G_OPEN_ERR( name ); + } + else { + print_debug ( "%s: Proc[%d]: create step #%d", + __funcname, f->myproc, step ); + + f->timegroup = H5Gcreate(f->file,name,0); + if ( f->timegroup < 0 ) return HANDLE_H5G_CREATE_ERR ( name ); + } +#if 0 +#ifdef PARALLEL_IO + H5PartWriteStepAttrib(f,"pnparticles",H5T_NATIVE_INT64,f->pnparticles,f->nprocs); +#endif +#endif + return H5PART_SUCCESS; +} + +/*! + \internal + + This is an entirely internal callback function + which is used in conjunction with HDF5 iterators. The HDF5 Group + iterator will call this repeatedly in order to count how many + timesteps of data have been stored in a particular file. + This is used by H5PartGetNumSteps(). + + \result Allways \c 0 +*/ +static herr_t +_H5PartIOcounter ( + hid_t group_id, /*!< [in] group id */ + const char *member_name, /*!< [in] group name */ + void *operator_data /*!< [in,out] data passed to the iterator */ + ) { + + int *count = (int*)operator_data; + + /* only count the particle groups... ignore all others */ + if(!strncmp(member_name,"Particles",9)) (*count)++; + + return 0; +} + +/*! + \internal + + Same as \c _H5PartIOcounter but to count the datasets in the current + time-step + + \result Allways \c 0 +*/ +static herr_t +_H5PartDScounter ( + hid_t group_id, /*!< [in] group id */ + const char *member_name, /*!< [in] group name */ + void *operator_data /*!< [in,out] data passed to the iterator */ + ) { + + int *count = (int*)operator_data; + H5G_stat_t objinfo; + /* only count the datasets... ignore all others */ + if(H5Gget_objinfo(group_id, + member_name, + 1 /* follow links */, + &objinfo)<0) { + return 0; /* error (probably bad symlink) */ + } + if(objinfo.type==H5G_DATASET) (*count)++; + + return 0; +} + +/** + H5IO_getname_t: Private +*/ +typedef struct H5IO_getname_t { + int indx; + int count; + char *name; +} H5IO_getname_t; + +/*! + \internal + + Operator for \c H5Giterate(). + + \result 1 if we reached searched dataset + 0 if we have to iterate further + < 0 on errors +*/ +static herr_t +_H5IOgetname ( + hid_t group_id, /*!< [in] group id */ + const char *member_name, /*!< [in] group name */ + void *operator_data /*!< [in,out] data passed to the iterator */ + ) { + + static char *__funcname = "_H5IOgetname"; + herr_t r; + + + H5IO_getname_t *getn = (H5IO_getname_t*)operator_data; + H5G_stat_t objinfo; + + /* request info about the type of objects in root group, follow links */ + r = H5Gget_objinfo ( group_id, member_name, 1, &objinfo ); + if ( r < 0 ) return HANDLE_H5G_GET_OBJINFO_ERR ( member_name ); + + /* only count objects that are datasets (not subgroups) */ + if ( objinfo.type != H5G_DATASET ) + return 0; /* do not increment count if it isn't a dataset. */ + + if ( getn->indx == getn->count ){ + strcpy(getn->name, member_name); + return 1; + } + getn->count++; + return 0; +} + +/*! + Get the number of time-steps that are currently stored in the file + \c f. + + It works for both reading and writing of files, but is probably + only typically used when you are reading. + + \return number of time-steps or error code + + \note + There are two bugs in this function. + + \par + There is no code to check whether the dataset name fits into the buffer \c name or not. + The parameter \c maxlen is not used. + + \par + There is no error handling and the iteration will continue endless, if there one. +*/ +h5part_int64_t +H5PartGetNumSteps ( + H5PartFile *f /*!< [in] Handle to open file */ + ) { + + static char *__funcname = "H5PartGetNumSteps"; + int count=0; + int idx=0; + + CHECK_FILEHANDLE( f ); + + /* iterate to get numsteps */ + while ( H5Giterate ( f->file, "/", &idx, _H5PartIOcounter, &count) < 0) {} + + return count; +} + +/*! + Get the number of datasets that are stored at the current time-step. + + \return number of datasets in current timestep or error code + + \note + There are two bugs in this function. + + \par + There is no code to check whether the dataset name fits into the buffer \c name or not. + The parameter \c maxlen is not used. + + \par + There is no error handling and the iteration will continue endless, if there one. +*/ + +h5part_int64_t +H5PartGetNumDatasets ( + H5PartFile *f /*!< [in] Handle to open file */ + ) { + + static char *__funcname = "H5PartGetNumDatasets"; + int count=0; + int idx=0; + char name[128]; + + CHECK_FILEHANDLE( f ); + + /* we need to have scanned file to get min timestep + before we call this ??? */ + sprintf ( name, "Particles#%d", f->timestep ); + + while ( H5Giterate(f->file, name, &idx, _H5PartDScounter, &count) < 0 ) {} + + return count; +} + +/*! + This reads the name of a dataset specified by it's index in the current time-step. + + If the number of datasets is \c n, the range of \c _index is \c 0 to \c n-1. + + \note + There is currently no error handling! + + \result \c H5PART_SUCCESS + + \note + There are two bugs in this function. + + \par + There is no code to check whether the dataset name fits into the buffer \c name or not. + The parameter \c maxlen is not used. + + \par + There is no error handling and the iteration will continue endless, if there one. +*/ +h5part_int64_t +H5PartGetDatasetName ( + H5PartFile *f, /*!< [in] Handle to open file */ + int _index, /*!< [in] Index of the dataset */ + char *name, /*!< [out] Name of dataset */ + size_t maxlen /*!< [in] Size of buffer \c name */ + ) { + + static char *__funcname = "H5PartGetDatasetName"; + H5IO_getname_t getn; + int idx = _index; + char gname[128]; + sprintf(gname,"Particles#%d",f->timestep); + getn.indx = _index; + getn.name = name; + getn.count = _index; + + CHECK_FILEHANDLE( f ); + + /* if an error occures, we are sitting in an endless loop ... */ + while( H5Giterate( + f->file, + gname, + &idx, + _H5IOgetname, + &getn) < 0 ){} + return H5PART_SUCCESS; +} + +/*! + Gets the name, type and number of elements of a dataset specified by it's index + in the current time-step. + + Type is one of \c H5T_NATIVE_DOUBLE or \c H5T_NATIVE_INT64. + + \return \c H5PART_SUCCESS + + \note + There are two bugs in this function. + + \par + There is no code to check whether the dataset name fits into the buffer \c name or not. + The parameter \c maxlen is not used. + + \par + There is no error handling and the iteration will continue endless, if there one. +*/ +h5part_int64_t +H5PartGetDatasetInfo ( + H5PartFile *f, /*!< [in] Handle to open file */ + int _index, /*!< [in] Index of the dataset */ + char *name, /*!< [out] Name of dataset */ + size_t maxlen, /*!< [in] Size of buffer \c name */ + hid_t *type, /*!< [out] Type of data in dataset */ + h5part_int64_t *nelem /*!< [out] Number of elements of type \c type */ + ) { + + static char *__funcname = "H5PartGetDatasetInfo"; + herr_t r; + + H5IO_getname_t getn; + int idx=_index; + char gname[128]; + hid_t dataset_id; + hid_t mytype; + + CHECK_FILEHANDLE( f ); + + sprintf(gname,"Particles#%d", f->timestep); + getn.indx = _index; + getn.name = name; + getn.count=_index; + + while( H5Giterate( + f->file, + gname, + &idx, + _H5IOgetname, + &getn ) < 0 ){} + + *nelem = H5PartGetNumParticles(f); + + if(!f->timegroup) { + r = H5PartSetStep(f,f->timestep); /* choose current step */ + if ( r < 0 ) return HANDLE_H5PART_SETSTEP_ERR ( r, f->timestep ); + } + dataset_id = H5Dopen ( f->timegroup, name ); + if ( dataset_id < 0 ) HANDLE_H5D_OPEN_ERR ( name ); + + mytype = H5Dget_type (dataset_id); + if ( mytype < 0 ) HANDLE_H5D_GET_TYPE_ERR; + + if(type) + *type = _H5PartNormType ( mytype ); + + r = H5Tclose(mytype); if ( r < 0 ) HANDLE_H5T_CLOSE_ERR; + r = H5Dclose(dataset_id); if ( r < 0 ) HANDLE_H5D_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/*! + \intenal + +*/ +static hid_t +_H5PartGetDiskShape ( + H5PartFile *f, + hid_t dataset + ) { + + static char *__funcname = "_H5PartGetDiskShape"; + herr_t r; + + CHECK_FILEHANDLE( f ); + + hid_t space = H5Dget_space(dataset); + if ( space < 0 ) return HANDLE_H5D_GET_SPACE_ERR; + + if ( H5PartHasView(f) ){ + hsize_t stride; + hsize_t count; +#ifdef HDF5V160 + hssize_t range[2]; +#else + hsize_t range[2]; +#endif + print_debug ( "%s: Selection is available", __funcname ); + + /* so, is this selection inclusive or exclusive? */ + range[0]=f->viewstart; + range[1]=f->viewend; + count = range[1]-range[0]; /* to be inclusive */ + stride=1; + + /* now we select a subset */ + if(f->diskshape>0) { + r = H5Sselect_hyperslab(f->diskshape,H5S_SELECT_SET, + range /* only using first element */, + &stride,&count,NULL); + if ( r < 0 ) return HANDLE_H5S_SELECT_HYPERSLAB_ERR; + } + /* now we select a subset */ + r = H5Sselect_hyperslab(space,H5S_SELECT_SET, + range,&stride,&count,NULL); + if ( r < 0 ) return HANDLE_H5S_SELECT_HYPERSLAB_ERR; + + print_debug ( "%s: Selection: range=%d:%d, npoints=%d s=%d\n", + __funcname, + (int)range[0],(int)range[1], + (int)H5Sget_simple_extent_npoints(space), + (int)H5Sget_select_npoints(space) ); + } + else { + print_debug ( "%s: Selection", __funcname ); + } + return space; +} + +static hid_t +_H5PartGetMemShape ( + H5PartFile *f, + hid_t dataset + ) { + + static char *__funcname = "_H5PartGetMemShape"; + hid_t r; + + CHECK_FILEHANDLE( f ); + + print_debug ( "%s: ", __funcname ); + + if(H5PartHasView(f)) { + hsize_t dmax=H5S_UNLIMITED; + hsize_t len = f->viewend - f->viewstart; + r = H5Screate_simple(1,&len,&dmax); + if ( r < 0 ) return HANDLE_H5S_CREATE_SIMPLE_ERR ( len ); + return r; + } + else { + return H5S_ALL; + } +} + +/*! + H5PartGetFirstDS: Private +*/ +static herr_t +_H5PartGetFirstDS ( + hid_t group_id, + const char *member_name, + void *operator_data + ) { + + static char *__funcname = "_H5PartGetFirstDS"; + + hid_t *dataset = (hid_t*)operator_data; + H5G_stat_t objinfo; + /* only count the particle groups... ignore all others */ + if(H5Gget_objinfo(group_id, + member_name, + 1 /* follow links */, + &objinfo)<0) { + return 0; /* error (probably bad symlink) */ + } + if(objinfo.type==H5G_DATASET){ + (*dataset) = H5Dopen(group_id,member_name); + if ( *dataset < 0 ) return HANDLE_H5D_OPEN_ERR ( member_name ); + return 1; /* all done: return success */ + } + return 0; /* causes iterator to continue to next item */ +} + +/*! + This gets the number of particles stored in the current timestep. + It will arbitrarily select a time-step if you haven't already set + the timestep with \c H5PartSetStep(). + + \return number of particles in current timestep or an error + code. + */ +h5part_int64_t +H5PartGetNumParticles ( + H5PartFile *f /*!< [in] Handle to open file */ + ) { + + static char *__funcname = "H5PartGetNumParticles"; + hid_t r; + + hid_t space,dataset; + hsize_t nparticles; + int idx=0; + char name[128]; + + CHECK_FILEHANDLE( f ); + + if(f->timegroup<0) { + int step = (f->timestep<0 ? 0 : f->timestep ); + h5part_int64_t rc = H5PartSetStep ( f, step ); + if ( rc < 0 ) return HANDLE_H5PART_SETSTEP_ERR ( rc, step ); + } + + /* Get first dataset in current time-step */ + sprintf(name,"Particles#%d",f->timestep); + while ( H5Giterate(f->file, + name, + &idx, + _H5PartGetFirstDS, + &dataset) < 0 ) {} + + /* need to use H5PartGetDiskShape for any changes to f->diskshape */ + space = _H5PartGetDiskShape(f,dataset); + if ( space < 0 ) return HANDLE_H5PART_GET_DISKSHAPE_ERR ( space ); + + + if ( H5PartHasView ( f ) ) { + print_debug ( "%s: H5Sget_select_npoints"); + nparticles = H5Sget_select_npoints(space); + if ( nparticles < 0 ) return HANDLE_H5S_GET_SELECT_NPOINTS_ERR; + } + else { + print_debug ( "%s: H5Sget_simple_extent_npoints"); + nparticles = H5Sget_simple_extent_npoints(space); + if ( nparticles < 0 ) return HANDLE_H5S_GET_SIMPLE_EXTENT_NPOINTS_ERR; + } + if ( space != H5S_ALL ) { + r = H5Sclose(space); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + } + r = H5Dclose(dataset); + if ( r < 0 ) return HANDLE_H5D_CLOSE_ERR; + + return (h5part_int64_t) nparticles; +} + + +/*! + For parallel I/O or for subsetting operations on the datafile, the + \c H5PartSetView() function allows you to define a subset of the total particle + dataset to read. The concept of "view" works for both serial and for + parallel I/O. The "view" will remain in effect until a new view is set, + or the number of particles in a dataset changes, or the view is "unset" + by calling \c H5PartSetView(file,-1,-1); + + Before you set a view, the \c H5PartGetNumParticles() will return the + total number of particles in the current time-step (even for the parallel + reads). However, after you set a view, it will return the number of + particles contained in the view. + + The range is inclusive (the start and the end index). + + \return \c H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartSetView ( + H5PartFile *f, /*!< [in] Handle to open file */ + h5part_int64_t start, /*!< [in] Start particle */ + h5part_int64_t end /*!< [in] End particle */ + ) { + + static char *__funcname = "H5PartSetView"; + + h5part_int64_t total; + hsize_t stride; + hsize_t dmax=H5S_UNLIMITED; + +#ifdef HDF5V160 + hssize_t range[2]; +#else + hsize_t range[2]; +#endif + int r; + + CHECK_FILEHANDLE( f ); + + if(f->mode==H5PART_WRITE || f->mode==H5PART_APPEND) + return HANDLE_H5PART_SET_VIEW_FILE_ACCESS_TYPE_ERR; + + print_debug ( "%s: Set view (%d,%d).", __funcname, (int)start,(int)end); + + /* if there is already a view selected, lets destroy it */ + f->viewstart = -1; + f->viewend = -1; + if ( f->shape != 0 ){ + r = H5Sclose(f->shape); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + f->shape=0; + } + if(f->diskshape!=0 && f->diskshape!=H5S_ALL){ + r = H5Sclose(f->diskshape); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + f->diskshape=H5S_ALL; + } + f->diskshape = H5S_ALL; + if(f->memshape!=0 && f->memshape!=H5S_ALL){ + H5Sclose(f->memshape); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + f->memshape=H5S_ALL; + } + if(start==-1 && end==-1) { + print_debug( "%s: Early Termination: Unsetting View", __funcname ); + return H5PART_SUCCESS; /* all done */ + } + /* for now, we interpret start=-1 to mean 0 and + end==-1 to mean end of file */ + total = H5PartGetNumParticles(f); + if ( total < 0 ) return HANDLE_H5PART_GET_NUM_PARTICLES_ERR ( total ); + + print_debug ( "%s: Total nparticles=%d", __funcname, (int)total ); + if(start==-1) start=0; + if(end==-1) end=total; /* can we trust nparticles (no)? + fortunately, view has been reset + so H5PartGetNumParticles will tell + us the total number of particles. */ + + /* so, is this selection inclusive or exclusive? + it appears to be inclusive for both ends of the range. + */ + if(endviewstart=range[0]; /* inclusive start */ + f->viewend=range[1]; /* inclusive end */ + f->nparticles=range[1]-range[0]; + print_debug ( "%s: Range is now %d:%d\n", __funcname, (int)range[0], (int)range[1]); + /* OK, now we must create a selection from this */ + + /* declare overall datasize */ + f->shape = H5Screate_simple(1,(hsize_t*)&total, (hsize_t*)&total); + if ( f->shape < 0 ) return HANDLE_H5S_CREATE_SIMPLE_ERR ( (hsize_t)total ); + + /* declare overall data size but then will select a subset */ + f->diskshape= H5Screate_simple(1, (hsize_t*)&total, (hsize_t*)&total); + if ( f->diskshape < 0 ) return HANDLE_H5S_CREATE_SIMPLE_ERR ( (hsize_t) total ); + + /* declare local memory datasize */ + f->memshape = H5Screate_simple(1,&(f->nparticles),&dmax); + if ( f->diskshape < 0 ) return HANDLE_H5S_CREATE_SIMPLE_ERR ( f->nparticles );; + + stride=1; + r = H5Sselect_hyperslab(f->diskshape,H5S_SELECT_SET,range,&stride, (hsize_t*)&total,NULL); + if ( r < 0 ) return HANDLE_H5S_SELECT_HYPERSLAB_ERR; + + /* OK, now we have selected a reasonable hyperslab (all done) */ + return H5PART_SUCCESS; +} + +/*! + Allows you to query the current view. Start and End + will be \c -1 if there is no current view established. + Use \c H5PartHasView() to see if the view is smaller than the + total dataset. + + \return the number of elements in the view +*/ +h5part_int64_t +H5PartGetView ( + H5PartFile *f, /*!< [in] Handle to open file */ + h5part_int64_t *start, /*!< [out] Start particle */ + h5part_int64_t *end /*!< [out] End particle */ + ) { + + static char *__funcname = "H5PartGetView"; + + h5part_int64_t range[2]; + h5part_int64_t viewend; + + CHECK_FILEHANDLE( f ); + + range[0] = (f->viewstart>=0) ? f->viewstart : 0; + + if ( f->viewend >= 0 ) { + viewend = f->viewend; + } + else { + viewend = H5PartGetNumParticles(f); + if ( viewend < 0 ) return HANDLE_H5PART_GET_NUM_PARTICLES_ERR ( viewend ); + } + + range[1] = viewend; + if(start) { + *start=range[0]; + } + if(end) { + *end=range[1]; + } + /* we could return the number of elements in the View as a convenience */ + return range[1]-range[0]; +} + +/*! + If it is too tedious to manually set the start and end coordinates + for a view, the \c H5SetCanonicalView() will automatically select an + appropriate domain decomposition of the data arrays for the degree + of parallelism and set the "view" accordingly. + + \return H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartSetCanonicalView ( + H5PartFile *f /*!< [in] Handle to open file */ + ) { + + static char *__funcname = "H5PartSetCanonicalView"; + + h5part_int64_t r; + + CHECK_FILEHANDLE( f ); + + if(f->mode==H5PART_WRITE || f->mode==H5PART_APPEND) + return HANDLE_H5PART_SET_VIEW_FILE_ACCESS_TYPE_ERR; + + /* if a read_only file, search for on-disk canonical view */ + /* if this view does not exist, then if MPI, subdivide by numprocs */ + /* else, "unset" any existing View */ + + /* unset the view */ + r = H5PartSetView(f,-1,-1); + if ( r < 0 ) return HANDLE_H5PART_SET_VIEW_ERR( r, -1, -1 ); +#ifdef PARALLEL_IO + { + h5part_int64_t start = 0; + h5part_int64_t end = 0; + h5part_int64_t n = 0; + int i = 0; + + if ( f->timegroup < 0 ) { + /* set to first step in file */ + r = H5PartSetStep(f,0); + if ( r < 0 ) return HANDLE_H5PART_SETSTEP_ERR ( r, 0 ); + } + n = H5PartGetNumParticles(f); + if ( n < 0 ) return HANDLE_H5PART_GET_NUM_PARTICLES_ERR ( n ); + /* + now lets query the attributes for this group to see if there + is a 'pnparticles' group that contains the offsets for the + processors. + */ + /* try to read pnparticles right off of the disk */ + if(H5PartReadStepAttrib(f,"pnparticles",f->pnparticles) < 0) { + /* + automatically subdivide the view into NP mostly + equal pieces + */ + + n /= f->nprocs; + for ( i=0; inprocs; i++ ) { + f->pnparticles[i] = n; + } + } + + /* now we set the view for this processor */ + for ( i = 0; i < f->myproc; i++ ){ + start += f->pnparticles[i]; + } + end = start + f->pnparticles[f->myproc] - 1; + r = H5PartSetView ( f, start, end ); + if ( r < 0 ) return HANDLE_H5PART_SET_VIEW_ERR ( r, start, end ); + } +#endif + /* the canonical view is to see everything if this is serial + so there is nothing left to do */ + return H5PART_SUCCESS; +} + +/*! + Read array of 64 bit floating point data from file. + + When retrieving datasets from disk, you ask for them + by name. There are no restrictions on naming of arrays, + but it is useful to arrive at some common naming + convention when sharing data with other groups. + + \return \c H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartReadDataFloat64 ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name to associate array/dataset with */ + h5part_float64_t *array /*!< [out] Array for data */ + ) { + + static char *__funcname = "H5PartReadDataFloat64"; + h5part_int64_t r; + + hid_t space; + hid_t memspace; + hid_t dataset; + + CHECK_FILEHANDLE( f ); + + if(!f->timegroup) { + r = H5PartSetStep(f,f->timestep); + if ( r < 0 ) return HANDLE_H5PART_SETSTEP_ERR ( r, f->timestep ); + } + dataset = H5Dopen(f->timegroup,name); + if ( dataset < 0 ) return HANDLE_H5D_OPEN_ERR ( name ); + /* gets space with selection if view is set */ + space = _H5PartGetDiskShape(f,dataset); + if ( space < 0 ) return HANDLE_H5PART_GET_DISKSHAPE_ERR ( space ); + + memspace = _H5PartGetMemShape(f,dataset); + if ( memspace < 0 ) return HANDLE_H5PART_GET_MEMSHAPE_ERR ( memspace ); + + /* datatype=H5Dget_type(dataset); */ + r = (h5part_int64_t)H5Dread( + dataset, /* handle for the dataset */ + H5T_NATIVE_DOUBLE, /* the datatype we use in memory + you can change it to FLOAT if you + want */ + memspace, /* shape/size of data in memory (the + complement to disk hyperslab) */ + space, /* shape/size of data on disk + (get hyperslab if needed) */ + H5P_DEFAULT, /* ignore... its for parallel reads */ + array ); /* the data array we are reading into */ + if ( r < 0 ) return HANDLE_H5D_READ_ERR ( name, f->timestep ); + if(space!=H5S_ALL) { + r = H5Sclose(space); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + } + if(memspace!=H5S_ALL) + r = H5Sclose(memspace); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + r = H5Dclose(dataset); + if ( r < 0 ) return HANDLE_H5D_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/** + Read array of 64 bit floating point data from file. + + When retrieving datasets from disk, you ask for them + by name. There are no restrictions on naming of arrays, + but it is useful to arrive at some common naming + convention when sharing data with other groups. + + \return \c H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartReadDataInt64 ( + H5PartFile *f, /*!< [in] Handle to open file */ + char *name, /*!< [in] Name to associate array/dataset with */ + h5part_int64_t *array /*!< [out] Array for data */ + ) { + hid_t space; + hid_t memspace; + hid_t dataset; + + static char *__funcname = "H5PartReadDataInt64"; + h5part_int64_t r; + + CHECK_FILEHANDLE( f ); + + if(!f->timegroup) { + r = H5PartSetStep(f,f->timestep); + if ( r < 0 ) return HANDLE_H5PART_SETSTEP_ERR ( r, f->timestep ); + } + dataset = H5Dopen(f->timegroup,name); + if ( dataset < 0 ) return HANDLE_H5D_OPEN_ERR ( name ); + /* gets space with selection if view is set */ + space = _H5PartGetDiskShape(f,dataset); + if ( space < 0 ) return HANDLE_H5PART_GET_DISKSHAPE_ERR ( space ); + + memspace = _H5PartGetMemShape(f,dataset); + if ( memspace < 0 ) return HANDLE_H5PART_GET_MEMSHAPE_ERR ( memspace ); + + r = (h5part_int64_t)H5Dread( dataset, + H5T_NATIVE_INT64, + memspace, + space, + H5P_DEFAULT, + array); + if ( r < 0 ) return HANDLE_H5D_READ_ERR ( name, f->timestep ); + if(space!=H5S_ALL) { + r = H5Sclose(space); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + } + if(memspace!=H5S_ALL) + r = H5Sclose(memspace); + if ( r < 0 ) return HANDLE_H5S_CLOSE_ERR; + r = H5Dclose(dataset); + if ( r < 0 ) return HANDLE_H5D_CLOSE_ERR; + + return H5PART_SUCCESS; +} + +/*! + This is the mongo read function that pulls in all of the data for a + given timestep in one shot. It also takes the timestep as an argument + and will call \c H5PartSetStep() internally so that you don't have to + make that call separately. + + \note + See also \c H5PartReadDataInt64() and \c H5PartReadDataFloat64() if you want + to just read in one of the many datasets. + + \return \c H5PART_SUCCESS or error code +*/ +h5part_int64_t +H5PartReadParticleStep ( + H5PartFile *f, /*!< [in] Handle to open file */ + h5part_int64_t step, /*!< [in] Step to read */ + h5part_float64_t *x, /*!< [out] Buffer for dataset named "x" */ + h5part_float64_t *y, /*!< [out] Buffer for dataset named "y" */ + h5part_float64_t *z, /*!< [out] Buffer for dataset named "z" */ + h5part_float64_t *px, /*!< [out] Buffer for dataset named "px" */ + h5part_float64_t *py, /*!< [out] Buffer for dataset named "py" */ + h5part_float64_t *pz, /*!< [out] Buffer for dataset named "pz" */ + h5part_int64_t *id /*!< [out] Buffer for dataset named "id" */ + ) { + + static char *__funcname = "H5PartReadParticleStep"; + h5part_int64_t r; + + CHECK_FILEHANDLE( f ); + + r = H5PartSetStep(f,step); + if ( r < 0 ) return HANDLE_H5PART_SETSTEP_ERR ( r, step ); + + r = H5PartReadDataFloat64(f,"x",x); + if ( r < 0 ) return HANDLE_H5PART_READDATAFLOAT64_ERR ( r, "x", step ); + r = H5PartReadDataFloat64(f,"y",y); + if ( r < 0 ) return HANDLE_H5PART_READDATAFLOAT64_ERR ( r, "y", step ); + r = H5PartReadDataFloat64(f,"z",z); + if ( r < 0 ) return HANDLE_H5PART_READDATAFLOAT64_ERR ( r, "z", step ); + r = H5PartReadDataFloat64(f,"px",px); + if ( r < 0 ) return HANDLE_H5PART_READDATAFLOAT64_ERR ( r, "px", step ); + r = H5PartReadDataFloat64(f,"py",py); + if ( r < 0 ) return HANDLE_H5PART_READDATAFLOAT64_ERR ( r, "py", step ); + r = H5PartReadDataFloat64(f,"pz",pz); + if ( r < 0 ) return HANDLE_H5PART_READDATAFLOAT64_ERR ( r, "pz", step ); + r = H5PartReadDataInt64(f,"id",id); + if ( r < 0 ) return HANDLE_H5PART_READDATAINT64_ERR ( r, "id", step ); + + return H5PART_SUCCESS; +} + +/**************** File Stashing Interfaces *************************/ +/** + H5NameExists: Private +*/ + +static herr_t +_H5NameExists ( + hid_t group_id, + const char *member_name, + void *v + ) { + + if(!strcmp(member_name,(char*)v)) + return 1; + else + return 0; +} + +/** + H5PartFileHasName: Private +*/ +static h5part_int64_t +_H5PartFileHasName ( + H5PartFile *f, + char *dir, + char *name + ) { + if(H5Giterate(f->file, + dir, + NULL, + _H5NameExists, + (void*)name) < 0 ) + return 1; + else + return 0; +} + +/** + NOTE: it's missing the read! + H5PartStashFile: stash a file in the hdf5 file. If it does not exists a UserData + and a Files group will be created. + /param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). + /param filename A null-terminated string for the name of the filename. + /return 1 on succes, 0 on failure. + +*/ +h5part_int64_t +H5PartStashFile ( + H5PartFile *f, + char *filename + ) { + + hid_t udata=0,files=0,rgroup=0; + FILE *file; + int returnvalue=0; + + rgroup = H5Gopen(f->file,"/"); + if(_H5PartFileHasName(f,"/","UserData")) { + udata = H5Gopen(rgroup,"UserData"); + if(_H5PartFileHasName(f,"UserData","Files")){ + files=H5Gopen(udata,"Files"); + } + else { + files = H5Gcreate(udata,"Files",0); + } + } + else { + /* must create the UserData group */ + udata = H5Gcreate(rgroup,"UserData",0); + files = H5Gcreate(udata,"Files",0); + } + if(rgroup) H5Gclose(rgroup); rgroup=0; + if(udata) H5Gclose(udata); udata=0; + /* now we stash the file into the files subdir */ + /* first make sure there isn't a file with the same + name already there? */ + file = fopen(filename,"r"); + if(file){ + hsize_t sz; + char *buffer,*dsname,*dsbuffer; + hid_t fspace,fdata; + fseek(file,0,SEEK_END); + sz = ftell(file); + buffer=(char*)malloc(sz); + fspace=H5Screate_simple(1,&sz,0); + /* need to strip off the /'s from the filename before creating dataset */ + dsbuffer = (char*)malloc(strlen(filename)); + strcpy(dsbuffer,filename); + dsname = strrchr(dsbuffer,'/'); + if(!dsname) dsname=dsbuffer; + fdata=H5Dcreate(files,dsname,H5T_NATIVE_CHAR,fspace,H5P_DEFAULT); + H5Dwrite(fdata,H5T_NATIVE_CHAR,H5S_ALL,H5S_ALL,H5P_DEFAULT,buffer); + H5Dclose(fdata); + H5Sclose(fspace); + fclose(file); + free(buffer); free(dsbuffer); + returnvalue = 1; /* success */ + } + H5Gclose(files); + return returnvalue; +} + +/** + H5PartUnstashFile: unstash a file in the hdf5 file. + + /param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). + + /param filename A null-terminated string for the name of the filename. + + /param The path to the directory to create the file. + + /return 1 on succes, 0 on failure. + +*/ + +h5part_int64_t +H5PartUnstashFile ( + H5PartFile *f, + char *filename, + char *outputpath + ) { + + if( _H5PartFileHasName(f,"/","UserData") + && _H5PartFileHasName(f,"/UserData","Files") + && _H5PartFileHasName(f,"/UserData/Files",filename)) { + /* extract the datafile from the HDF5 file */ + hid_t fdata,fspace,fgroup; + hsize_t sz; + char *buffer,*outname; + FILE *file; + fgroup = H5Gopen(f->file,"/UserData/Files"); + fdata = H5Dopen(fgroup,filename); + fspace = H5Dget_space(fdata); + sz = H5Sget_simple_extent_npoints(fspace); + buffer = (char*)malloc(sz); + H5Dread(fdata,H5T_NATIVE_CHAR,H5S_ALL,H5S_ALL,H5P_DEFAULT,buffer); + outname = (char*)malloc(strlen(filename) + 8 + outputpath?strlen(outputpath):0); + if(outputpath && strlen(outputpath)>0){ + if(outputpath[strlen(outputpath)-1]!='/') sprintf(outname,"%s/%s",outputpath,filename); + else sprintf(outname,"%s%s",outputpath,filename); + } + else { + strcpy(outname,filename); + } + file = fopen(outname,"w"); + fwrite(buffer,1,sz,file); + fclose(file); + free(buffer); + free(outname); + H5Sclose(fspace); + H5Dclose(fdata); + H5Gclose(fgroup); + return 1; + } + return 0; +} + +/** + H5PartGetNumStashFiles: returns the number of stashed files. + + \param f A FileHandle opened by H5PartOpenFile() or H5PartOpenFileParallel(). + + \return Number of stashed files. +*/ + +h5part_int64_t +H5PartGetNumStashFiles ( + H5PartFile *f + ) { + + hsize_t retval; + if(_H5PartFileHasName(f,"/","UserData") + && _H5PartFileHasName(f,"/UserData","Files")){ + hid_t fgroup; + /* we will use an iterator for this to count stash files */ + fgroup = H5Gopen(f->file,"/UserData/Files"); + H5Gget_num_objs(fgroup,&retval); + return retval; + } + else return 0; +} + +h5part_int64_t +H5PartFileGetStashFileName ( + H5PartFile *f, + int nameindex, + char *filename, + int maxnamelen ) { + + return 1; +} + +/****************** error handling ******************/ + +h5part_int64_t +H5PartSetVerbosityLevel ( + unsigned int level + ) { + + _debug = level; + return H5PART_SUCCESS; +} + +h5part_int64_t +H5PartSetErrorHandler ( + h5part_error_handler handler + ) { + _err_handler = handler; + return H5PART_SUCCESS; +} + +h5part_int64_t +H5PartGetErrno ( + void + ) { + return _errno; +} + +h5part_int64_t +H5PartDefaultErrorHandler ( + const char *funcname, + const h5part_int64_t eno, + const char *fmt, + ... + ) { + + _errno = eno; + if ( _debug > 0 ) { + va_list ap; + va_start ( ap, fmt ); + fprintf ( stderr, "%s: ", funcname ); + vfprintf ( stderr, fmt, ap ); + fprintf ( stderr, "\n" ); + } + return _errno; +} + +h5part_int64_t +H5PartAbortErrorHandler ( + const char *funcname, + const h5part_int64_t eno, + const char *fmt, + ... + ) { + + _errno = eno; + if ( _debug > 0 ) { + va_list ap; + va_start ( ap, fmt ); + fprintf ( stderr, "%s: ", funcname ); + vfprintf ( stderr, fmt, ap ); + fprintf ( stderr, "\n" ); + } + exit (-_errno); +} + +/********* More Private Function Definitions *************/ + +static h5part_int64_t +_H5Part_init ( void ) { + static int __init = 0; + + herr_t r5; + if ( ! __init ) { + r5 = H5Eset_auto ( _H5Part_h5_error_handler, NULL ); + if ( r5 < 0 ) return H5PART_ERR_INIT; + } + __init = 1; + return H5PART_SUCCESS; +} + +static herr_t +_H5Part_h5_error_handler ( void* unused ) { + + if ( _debug >= 5 ) { + H5Eprint (stderr); + } + return 0; +} + +void +vprint_error ( + const char *fmt, + va_list ap + ) { + + if ( _debug < 1 ) return; + vfprintf ( stderr, fmt, ap ); + fprintf ( stderr, "\n" ); +} + +void +print_error ( + const char *fmt, + ... + ) { + + va_list ap; + va_start ( ap, fmt ); + vprint_error ( fmt, ap ); + va_end ( ap ); +} + +void +vprint_warn ( + const char *fmt, + va_list ap + ) { + + if ( _debug < 2 ) return; + vfprintf ( stderr, fmt, ap ); + fprintf ( stderr, "\n" ); +} + +void +print_warn ( + const char *fmt, + ... + ) { + + va_list ap; + va_start ( ap, fmt ); + vprint_warn ( fmt, ap ); + va_end ( ap ); +} + +void +vprint_info ( + const char *fmt, + va_list ap + ) { + + if ( _debug < 3 ) return; + vfprintf ( stdout, fmt, ap ); + fprintf ( stdout, "\n" ); +} + +void +print_info ( + const char *fmt, + ... + ) { + + va_list ap; + va_start ( ap, fmt ); + vprint_info ( fmt, ap ); + va_end ( ap ); +} + +void +vprint_debug ( + const char *fmt, + va_list ap + ) { + + if ( _debug < 4 ) return; + vfprintf ( stdout, fmt, ap ); + fprintf ( stdout, "\n" ); +} + +void +print_debug ( + const char *fmt, + ... + ) { + + va_list ap; + va_start ( ap, fmt ); + vprint_debug ( fmt, ap ); + va_end ( ap ); +} diff --git a/src/H5Part.cc b/src/H5Part.cc new file mode 100755 index 0000000..5f91914 --- /dev/null +++ b/src/H5Part.cc @@ -0,0 +1,234 @@ +#include +#include +#include +#include +#include "H5Part.hh" + +#include +#include +#include +#include +using namespace std; + +#ifdef READTEST + +/* + A simple regression test that shows how you use this API + to write and read multi-timestep files of particle data. +*/ +#ifdef PARALLEL_IO + + +#else + +int main(int argc,char **argv){ + const int sz=5; + double x[sz],y[sz],z[sz]; + long long id[sz]; + char name[64]; + H5PartFile *file; + int i,t,nt,nds,myproc; + int nfattribs,nsattribs; + + const string fn = string(argv[1]); + + cout << "Open " << fn << endl; + + + file= H5PartOpenFile(fn.c_str(),H5PART_READ); + nt=H5PartGetNumSteps(file); /* get number of steps in file */ + H5PartSetStep(file,0); + nds=H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + + + + puts("\n\n==============================="); + for(i=0;ifile); + H5PartSetStep(file,t); /* must set the current timestep in file */ + H5PartSetNumParticles(file,sz); /* then set number of particles to store */ + /* now write different tuples of data into this timestep of the file */ + H5PartWriteDataFloat64(file,"x",x); + H5PartWriteDataFloat64(file,"y",y); + H5PartWriteDataFloat64(file,"z",z); + H5PartWriteDataInt64(file,"id",id); + } + printf("AllDone p[%u]\n",myproc); + H5PartCloseFile(file); + MPI_Barrier(comm); + printf("p[%u:%u] : OK, close file and reopen for reading \n",myproc,nprocs); + if(myproc==0){ /* now only proc 0 reads the file serially */ + file= H5PartOpenFileSerial("parttest.h5",H5PART_READ); + nt=H5PartGetNumSteps(file); /* get number of steps in file */ + H5PartSetStep(file,0); + nds=H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + + puts("\n\n==============================="); + for(i=0;i0){ + char attrname[32]; + H5PartGetStepAttribInfo(file,0,attrname,32,0,0); + printf("First Attrib name is [%s]\n",attrname); + } + H5PartReadParticleStep(file,t,/* do a mongo read of all data this step */ + x,y,z,x,y,z,id); + printf("\tid\t\tx\t\ty\t\tz\n"); + puts("\t----------------------------------------------------"); + for(i=0;i +#include +#include +#ifdef PARALLEL_IO +#include +#endif +#include "H5PartTypes.h" + + +#define H5PART_SUCCESS 0 +#define H5PART_ERR_NOMEM -12 +#define H5PART_ERR_INVAL -22 +#define H5PART_ERR_BADFD -77 + +#define H5PART_ERR_INIT -200 + +#define H5PART_ERR_MPI -201 +#define H5PART_ERR_HDF5 -202 + + +#define H5PART_READ 0x01 +#define H5PART_WRITE 0x02 +#define H5PART_APPEND 0x03 + +/*========== File Opening/Closing ===============*/ +H5PartFile* +H5PartOpenFile( + const char *filename, + unsigned flags + ); + +#define H5PartOpenFileSerial(x,y) H5PartOpenFile(x,y) + +#ifdef PARALLEL_IO +H5PartFile* +H5PartOpenFileParallel ( + const char *filename, + unsigned flags, + MPI_Comm communicator + ); +#endif + + +h5part_int64_t +H5PartCloseFile ( + H5PartFile *f + ); + + +/*============== File Writing Functions ==================== */ +h5part_int64_t +H5PartSetNumParticles ( + H5PartFile *f, + h5part_int64_t nparticles + ); + +h5part_int64_t +H5PartWriteDataFloat64 ( + H5PartFile *f, + char *name, + h5part_float64_t *array + ); + +h5part_int64_t +H5PartWriteDataInt64 ( + H5PartFile *f, + char *name, + h5part_int64_t *array + ); + +/*================== File Reading Routines =================*/ +h5part_int64_t +H5PartSetStep ( + H5PartFile *f, + h5part_int64_t step + ); + +h5part_int64_t +H5PartGetNumSteps ( + H5PartFile *f + ); + +h5part_int64_t +H5PartGetNumDatasets ( + H5PartFile *f + ); + +h5part_int64_t +H5PartGetDatasetName ( + H5PartFile *f, + int indx, + char *name, + size_t maxlen + ); + +h5part_int64_t +H5PartGetDatasetInfo ( + H5PartFile *f, + int idx, + char *name, + size_t maxlen, + hid_t *type, + h5part_int64_t *nelem); + + +h5part_int64_t +H5PartGetNumParticles ( + H5PartFile *f + ); + +h5part_int64_t +H5PartSetView ( + H5PartFile *f, + h5part_int64_t start, + h5part_int64_t end + ); + +#define H5PartResetView(f) H5PartSetView(f,-1,-1) +#define H5PartHasView(f) ((f->viewstart<0||f->viewend<0)?0:1) + +h5part_int64_t +H5PartGetView ( + H5PartFile *f, + h5part_int64_t *start, + h5part_int64_t *end + ); + +h5part_int64_t +H5PartSetCanonicalView ( + H5PartFile *f + ); + +h5part_int64_t +H5PartReadDataFloat64( + H5PartFile *f, + char *name, + h5part_float64_t *array + ); + +h5part_int64_t +H5PartReadDataInt64 ( + H5PartFile *f, + char *name, + h5part_int64_t *array + ); + +/* the following is a back-door for extensions to the data writing */ +#if 0 +h5part_int64_t +H5PartReadData ( + H5PartFile *f, + char *name, + void *array, + hid_t type + ); +h5part_int64_t +H5PartWriteData ( + H5PartFile *f, + char *name, + void *array, + hid_t type + ); +#endif + +h5part_int64_t +H5PartReadParticleStep ( + H5PartFile *f, + h5part_int64_t step, + h5part_float64_t *x, /* particle positions */ + h5part_float64_t *y, + h5part_float64_t *z, + h5part_float64_t *px, /* particle momenta */ + h5part_float64_t *py, + h5part_float64_t *pz, + h5part_int64_t *id /* and phase */ + ); + +/**********==============Attributes Interface============***************/ +/* currently there is file attributes: Attributes bound to the file + and step attributes which are bound to the current timestep. You + must set the timestep explicitly before writing the attributes (just + as you must do when you write a new dataset. Currently there are no + attributes that are bound to a particular data array, but this could + easily be done if required. +*/ +h5part_int64_t +H5PartWriteStepAttrib ( + H5PartFile *f, + char *name, + hid_t type, + void *attrib, + int nelem + ); + +h5part_int64_t +H5PartWriteFileAttrib ( + H5PartFile *f, + char *name, + hid_t type, + void *attrib, + int nelem + ); + +h5part_int64_t +H5PartWriteAttrib ( + H5PartFile *f, + char *name, + hid_t type, + void *attrib, + int nelem /* this should be deprecated ??? */ + ); + +h5part_int64_t +H5PartWriteFileAttribString ( + H5PartFile *f, + char *name, + char *attrib + ); + +h5part_int64_t +H5PartWriteStepAttribString ( + H5PartFile *f, + char *name, + char *attrib + ); + +h5part_int64_t +H5PartGetNumStepAttribs ( /* for current filestep */ + H5PartFile *f + ); + +h5part_int64_t +H5PartGetNumFileAttribs ( + H5PartFile *f + ); + +h5part_int64_t +H5PartGetStepAttribInfo ( + H5PartFile *f, + int idx, + char *name, + size_t maxnamelen, /* ??? */ + hid_t *type, + int *nelem + ); + +h5part_int64_t +H5PartGetFileAttribInfo ( + H5PartFile *f, + int idx, + char *name, + size_t maxnamelen, + hid_t *type, + int *nelem + ); + +h5part_int64_t +H5PartReadStepAttrib ( + H5PartFile *f, + char *name, + void *data + ); + +h5part_int64_t +H5PartReadAttrib ( + H5PartFile *f, + char *name, + void *data + ); + +h5part_int64_t +H5PartReadFileAttrib ( + H5PartFile *f, + char *name, + void *data + ); + +/**************** File Stashing Interfaces *************************/ +h5part_int64_t +H5PartStashFile ( + H5PartFile *f, + char *filename + ); + +h5part_int64_t +H5PartUnstashFile ( + H5PartFile *f, + char *filename, + char *outputpath /* outputpath can be null for cwd */ + ); + +h5part_int64_t +H5PartGetNumStashFiles ( + H5PartFile *f + ); + +h5part_int64_t +_H5PartFileGetStashFileName ( + H5PartFile *f, + int nameindex, + char *filename, + int maxlen + ); + +h5part_int64_t +H5PartSetVerbosityLevel ( + unsigned int + ); + +h5part_int64_t +H5PartSetErrorHandler ( + h5part_error_handler handler + ); + +h5part_int64_t +H5PartGetErrno ( + void + ); + +h5part_int64_t +H5PartDefaultErrorHandler ( + const char *funcname, + const h5part_int64_t eno, + const char *fmt, + ... + ); + +h5part_int64_t +H5PartAbortErrorHandler ( + const char *funcname, + const h5part_int64_t eno, + const char *fmt, + ... + ); + +void vprint_error ( const char *fmt, va_list ap ); +void print_error ( const char *fmt, ... ); +void vprint_warn ( const char *fmt, va_list ap ); +void print_warn ( const char *fmt, ... ); +void vprint_info ( const char *fmt, va_list ap ); +void print_info ( const char *fmt, ... ); +void vprint_debug ( const char *fmt, va_list ap ); +void print_debug ( const char *fmt, ... ); + +#endif diff --git a/src/H5Part.hh b/src/H5Part.hh new file mode 100755 index 0000000..ccc8592 --- /dev/null +++ b/src/H5Part.hh @@ -0,0 +1,11 @@ +#ifndef _H5Part_HH_ +#define _H5Part_HH_ + +extern "C" { +#include "H5PartTypes.h" +#include "H5Part.h" +} + +/* Add any C++ specific extensions/implementations/wrappers here */ + +#endif diff --git a/src/H5Part.inc b/src/H5Part.inc new file mode 100644 index 0000000..89da1e0 --- /dev/null +++ b/src/H5Part.inc @@ -0,0 +1,208 @@ +! Declaration of subroutines for Fortran Bindings +! open/close interface + INTEGER*8 h5pt_openr +! FUNCTION h5pt_openr (file) +! in CHARACTER file(*) : the filename to open for reading + + INTEGER*8 h5pt_openw +! FUNCTION h5pt_openw(file) +! in CHARACTER file(*) : the filename to open for writing + + INTEGER*8 h5pt_openr_par +! FUNCTION h5pt_openr_par(file,mpi_communicator) +! in CHARACTER file(*) : the filename to open for writing +! in INTEGER mpi_communicator : the MPI_Communicator used by the program +! returns INTEGER*8 : and open filehandle for parallel reads + + INTEGER*8 h5pt_openw_par +! FUNCTION h5pt_openw_par(file,mpi_communicator) +! in CHARACTER file(*) +! in INTEGER mpi_communicator +! returns INTEGER*8 : an open filehandle for parallel writes + + INTEGER*8 h5pt_close +! FUNCTION h5pt_close(filehandle) +! in INTEGER*8 filehandle : close this open filehandle + +!==============Writing and Setting Dataset info======== +! c h5pt_readstep(in INTEGER*8 filehandle,INTEGER step, +! REAL*8 x(*),REAL*8 y(*),REAL*8 z(*), +! REAL*8 px(*),REAL*8 py(*),REAL*8 pz(*), +! INTEGER*8 id(*)) + + INTEGER*8 h5pt_setnpoints +! SUBROUTINE h5pt_setnpoints(filehandle,npoints) +! in INTEGER*8 filehandle +! in INTEGER*8 npoints : The number of particles on *this* processor + + INTEGER*8 h5pt_setstep +! FUNCTION h5pt_setstep(filehandle,step) +! in INTEGER*8 filehandle +! in INTEGER*8 step : Set the current timestep in the file to this + + INTEGER*8 h5pt_writedata_r8 +! SUBROUTINE h5pt_writedata_r8(filehandle,name,data) +! in INTEGER*8 filehandle +! in CHARACTER name(*) : The name of the data we are writing +! eg. "X" or "Y" or "PX" etc... +! in REAL*8 data(*) : The dataarray to write. The number of +! elements is presumably set earlier with +! h5pt_setnpoints(f,npoints) + + INTEGER*8 h5pt_writedata_i8 +! SUBROUTINE h5pt_writedata_i8(filehandle,name,data) +! in INTEGER*8 filehandle +! in CHARACTER name(*) +! in INTEGER*8 data(*) +!==============Reading Data Characteristics============ + + INTEGER*8 h5pt_getnsteps +! FUNCTION h5pt_getnsteps(filehandle) +! in INTEGER*8 filehandle +! returns INTEGER : number of timesteps stored in the file + + INTEGER*8 h5pt_getndatasets +! FUNCTION h5pt_getndatasets(filehandle) +! in INTEGER*8 filehandle +! returns INTEGER*8 : number of datasets stored per timestep + + INTEGER*8 h5pt_getnpoints +! FUNCTION h5pt_getnpoints(filehandle) +! in INTEGER*8 filehandle +! returns INTEGER*8 : total number of points in this timestep +! If a "view" has been set using h5pt_setview() +! then it returns the number of points that are +! in the current view. + +! probably should get index from name + INTEGER*8 h5pt_getdatasetname +! FUNCTION h5pt_getdatasetname(filehandle,index,name) +! in INTEGER*8 filehandle +! in INTEGER index : Index for a given dataset name +! out CHARACTER name(*) returns the name of the dataset at that index + +!=============Setting and getting views================ + INTEGER*8 h5pt_setview +! SUBROUTINE h5pt_setview(filehandle,start,end) +! in INTEGER*8 filehandle +! in INTEGER*8 start : offset of the first particle in the view +! in INTEGER*8 end : offset of the first particle after the end of the view + + INTEGER*8 h5pt_resetview +! SUBROUTINE h5pt_resetview(filehandle) +! in INTEGER*8 filehandle : reset the view on this filehandle to default + + INTEGER*8 h5pt_hasview +! FUNCTION h5pt_hasview(filehandle) +! in INTEGER*8 filehandle +! returns INTEGER : 1 if a view is in place and 0 if the view is default + + INTEGER*8 h5pt_getview +! FUNCTION h5pt_getview(filehandle,start,end) +! in INTEGER*8 filehandle +! out INTEGER*8 start : offset of first particle in the view +! out INTEGER*8 end : offset of first particle beyond the current view + +!==============Reading Data========================= + INTEGER*8 h5pt_readdata_r8 +! FUNCTION h5pt_readdata_r8(filehandle,name,data) +! in INTEGER*8 filehandle +! in CHARACTER name(*) : The name of the data we are writing +! eg. "X" or "Y" or "PX" etc... +! out REAL*8 data(*) : The dataarray to read. Number of points +! read is either the number within the view set +! by h5pt_setview() or the default (the total +! number of particles in the file. +! returns INTEGER : 1 for success, 0 for failure + INTEGER*8 h5pt_readdata_i8 +! FUNCTION h5pt_readdata_i8(filehandle,name,data) +! in INTEGER*8 filehandle +! in CHARACTER name(*) : The name of the data we are writing +! eg. "X" or "Y" or "PX" etc... +! out REAL*8 data(*) : The dataarray to read. Number of points +! read is either the number within the view set +! by h5pt_setview() or the default (the total +! number of particles in the file. +! returns INTEGER : 1 for success, 0 for failure +! =================== Attributes ================ + +! Attributes +! writing + INTEGER*8 h5pt_writefileattrib_r8 +! FUNCTION h5pt_writefileattrib_r8(filehandle,name,attrib,nelem) +! in INTEGER*8 filehandle : The filehandle +! in CHARACTER name(*) : The name of the attribute +! in REAL*8 attrib(*) : The array of data to write into the attribute +! in INTEGER nelem : Number of elements in the attrib array + + INTEGER*8 h5pt_writefileattrib_i8 +! FUNCTION h5pt_writefileattrib_i8(filehandle,name,attrib,nelem) +! in INTEGER*8 filehandle : The filehandle +! in CHARACTER name(*) : The name of the attribute +! in INTEGER*8 attrib(*) : The array of data to write into the attribute +! in INTEGER nelem : Number of elements in the attrib array + + INTEGER*8 h5pt_writefileattrib_string +! FUNCTION h5pt_writefileattrib_string(filehandle,name,string) +! in INTEGER*8 filehandle : The filehandle +! in CHARACTER name(*) : The name of the attribute +! in CHARACTER*8 attrib(*) : The array of data to write into the attribute + + INTEGER*8 h5pt_writestepattrib_r8 +! FUNCTION h5pt_writestepattrib_r8(filehandle,name,attrib,nelem) +! in INTEGER*8 filehandle : The filehandle +! in CHARACTER name(*) : The name of the attribute +! in INTEGER*8 attrib(*) : The array of data to write into the attribute +! in INTEGER nelem : Number of elements in the attrib array + + INTEGER*8 h5pt_writestepattrib_i8 +! FUNCTION h5pt_writestepattrib_i8(filehandle,name,attrib,nelem) +! in INTEGER*8 filehandle : The filehandle +! in CHARACTER name(*) : The name of the attribute +! in INTEGER*8 attrib(*) : The array of data to write into the attribute +! in INTEGER nelem : Number of elements in the attrib array + + INTEGER*8 h5pt_writestepattrib_string +! FUNCTION h5pt_writestepattrib_string(filehandle,name,string) +! in INTEGER*8 filehandle : The filehandle +! in CHARACTER name(*) : The name of the attribute +! in CHARACTER*8 attrib(*) : The array of data to write into the attribute + +! reading attributes ************************* + INTEGER*8 h5pt_getnstepattribs +! FUNCTION h5pt_getnstepattribs(filehandle) +! in INTEGER*8 filehandle : The filehandle +! returns INTEGER : number of attributes bound to this particular step + + INTEGER*8 h5pt_getnfileattribs +! FUNCTION h5pt_getnfileattribs(filehandle) +! in INTEGER*8 filehandle : The filehandle +! returns INTEGER : number of attributes bound to the file + + INTEGER*8 h5pt_getstepattribinfo +! FUNCTION h5pt_getstepattribinfo(filehandle,idx,attribname,nelem) +! in INTEGER*8 filehandle : The filehandle +! in INTEGER idx : index of the attribute being queried +! out CHARACTER name(*) : The name of the attribute +! out INTEGER nelem : Number of elements in the attrib array + + + INTEGER*8 h5pt_getfileattribinfo +! FUNCTION h5pt_getfileattribinfo(filehandle,idx,attribname,nelem) +! in INTEGER*8 filehandle : The filehandle +! in INTEGER idx : index of the attribute being queried +! out CHARACTER name(*) : The name of the attribute +! out INTEGER nelem : Number of elements in the attrib array + + INTEGER*8 h5pt_readstepattrib +! FUNCTION h5pt_readstepattrib(filehandle,name,data) +! in INTEGER*8 filehandle +! in CHARACTER attributename(*) : name of the attribute to read +! out data(*) : the attribute data will be read into this array + + INTEGER*8 h5pt_readfileattrib +! FUNCTION h5pt_readfileattrib(filehandle,name,data) +! in INTEGER*8 filehandle +! in CHARACTER attributename(*) : name of the attribute to read +! out data(*) : the attribute data will be read into this array + diff --git a/src/H5PartF.c b/src/H5PartF.c new file mode 100755 index 0000000..8647bf6 --- /dev/null +++ b/src/H5PartF.c @@ -0,0 +1,561 @@ +#include "H5Part.h" +#include "Underscore.h" +#include +/* + +********* Perhaps call this pfile ********** + +Determine underscores using perl and then send through one stage of preprocessing +to get the F77NAME fixed up. Otherwise, must include correct flag each time. + +Or just don't declare F77NAME in the header (only in source as symbols). + + +All pointers are cast to haddr_t (a unint64_t) within the C/C++ code +In fortran, these pointers (handles) are carried as INTEGER*8 + +*/ + +#ifdef F77_SINGLE_UNDERSCORE +#define F77NAME(a,b,c) a +#elif defined(F77_NO_UNDERSCORE) +#define F77NAME(a,b,c) b +#elif defined(F77_CRAY_UNDERSCORE) +#define F77NAME(a,b,c) c +#else +#error Error, no way to determine how to construct fortran bindings +#endif + +#if 0 +#define f_h5pt_openr F77NAME(h5prt_openr_,h5prt_openr,H5PRT_OPENR) +#define f_h5pt_openw F77NAME(h5prt_openw_,h5prt_openw,H5PRT_OPENW) +#define f_h5pt_close F77NAME(h5prt_close_,h5prt_close,H5PRT_CLOSE) +#define f_h5pt_npoints F77NAME(h5prt_npoints_,h5prt_npoints,H5PRT_NPOINTS) +#define f_h5pt_ndata F77NAME(h5prt_ndata_,h5prt_ndata,H5PRT_NDATA) +#define f_h5pt_nstep F77NAME(h5prt_nstep_,h5prt_nstep,H5PRT_NSTEP) +#define f_h5pt_readstep F77NAME(h5prt_readstep_,h5prt_readstep,H5PRT_READSTEP) +#define f_h5pt_step F77NAME(h5prt_step_,h5prt_step,H5PRT_STEP) +#define f_h5pt_wreal8 F77NAME(h5prt_wreal8_,h5prt_wreal8,H5PRT_WREAL8) +#define f_h5pt_wint8 F77NAME(h5prt_wint8_,h5prt_wint8,H5PRT_WINT8) +#endif + +/* open/close interface */ +#define f_h5pt_openr F77NAME(h5pt_openr_,h5pt_openr,H5PT_OPENR) /* func returns INT8 */ +#define f_h5pt_openw F77NAME(h5pt_openw_,h5pt_openw,H5PT_OPENW) /* func returns INT8 */ + +#define f_h5pt_openr_par F77NAME(h5pt_openr_par_,h5pt_openr_par,H5PT_OPENR_PAR) /* func returns INT8 */ +#define f_h5pt_openw_par F77NAME(h5pt_openw_par_,h5pt_openw_par,H5PT_OPENW_PAR) /* func returns INT8 */ +#define f_h5pt_close F77NAME(h5pt_close_,h5pt_close,H5PT_CLOSE) + +/* writing interface */ +#define f_h5pt_setnpoints F77NAME(h5pt_setnpoints_,h5pt_setnpoints,H5PT_SETNPOINTS) +#define f_h5pt_setstep F77NAME(h5pt_setstep_,h5pt_setstep,H5PT_SETSTEP) +#define f_h5pt_writedata_r8 F77NAME(h5pt_writedata_r8_,h5pt_writedata_r8,H5PT_WRITEDATA_R8) +#define f_h5pt_writedata_i8 F77NAME(h5pt_writedata_i8_,h5pt_writedata_i8,H5PT_WRITEDATA_I8) + +/* Reading interface (define dataset, step, particles, attributes) */ +#define f_h5pt_getnsteps F77NAME(h5pt_getnsteps_,h5pt_getnsteps,H5PT_GETNSTEPS) +#define f_h5pt_getndatasets F77NAME(h5pt_getndatasets_,h5pt_getndatasets,H5PT_GETNDATASETS) +#define f_h5pt_getnpoints F77NAME(h5pt_getnpoints_,h5pt_getnpoints,H5PT_GETNPOINTS) +#define f_h5pt_getdatasetname F77NAME(h5pt_getdatasetname_,h5pt_getdatasetname,H5PT_GETDATASETNAME) +#define f_h5pt_getnumpoints F77NAME(h5pt_getnumpoints_,h5pt_getnumpoints,H5PT_GETNUMPOINTS) + +/* Views and parallelism */ +#define f_h5pt_setview F77NAME(h5pt_setview_,h5pt_setview,H5PT_SETVIEW) +#define f_h5pt_resetview F77NAME(h5pt_resetview_,h5pt_resetview,H5PT_RESETVIEW) +#define f_h5pt_hasview F77NAME(h5pt_hasview_,h5pt_hasview,H5PT_HASVIEW) +#define f_h5pt_getview F77NAME(h5pt_getview_,h5pt_getview,H5PT_GETVIEW) + +/* Reading data */ +#define f_h5pt_readdata_r8 F77NAME(h5pt_readdata_r8_,h5pt_readdata_r8,H5PT_READDATA_R8) +#define f_h5pt_readdata_i8 F77NAME(h5pt_readdata_i8_,h5pt_readdata_i8,H5PT_READDATA_I8) +#define f_h5pt_readdata F77NAME(h5pt_readdata_,h5pt_readdata,H5PT_READDATA) + +/* Attributes */ +/* writing */ +#define f_h5pt_writefileattrib_r8 F77NAME(h5pt_writefileattrib_r8_,h5pt_writefileattrib_r8,H5PT_WRITEFILEATTRIB_R8) +#define f_h5pt_writefileattrib_i8 F77NAME(h5pt_writefileattrib_i8_,h5pt_writefileattrib_i8,H5PT_WRITEFILEATTRIB_I8) +#define f_h5pt_writefileattrib_string F77NAME(h5pt_writefileattrib_string_,h5pt_writefileattrib_string,H5PT_writefileattrib_string) +#define f_h5pt_writestepattrib_r8 F77NAME(h5pt_writestepattrib_r8_,h5pt_writestepattrib_r8,H5PT_WRITESTEPATTRIB_R8) +#define f_h5pt_writestepattrib_i8 F77NAME(h5pt_writestepattrib_i8_,h5pt_writestepattrib_i8,H5PT_WRITESTEPATTRIB_I8) +#define f_h5pt_writestepattrib_string F77NAME(h5pt_writestepattrib_string_,h5pt_writestepattrib_string,H5PT_WRITESTEPATTRIB_STRING) +/* reading */ +#define f_h5pt_getnstepattribs F77NAME(h5pt_getnstepattribs_,h5pt_getnstepattribs,H5PT_GETNSTEPATTRIBS) +#define f_h5pt_getnfileattribs F77NAME(h5pt_getnfileattribs_,h5pt_getnfileattribs,H5PT_GETNFILEATTRIBS) +#define f_h5pt_getstepattribinfo F77NAME(h5pt_getstepattribinfo_,h5pt_getstepattribinfo,H5PT_GETSTEPATTRIBINFO) +#define f_h5pt_getfileattribinfo F77NAME(h5pt_getfileattribinfo_,h5pt_getfileattribinfo,H5PT_GETFILEATTRIBINFO) +#define f_h5pt_readstepattrib F77NAME(h5pt_readstepattrib_,h5pt_readstepattrib,H5PT_READSTEPATTRIB) +#define f_h5pt_readfileattrib F77NAME(h5pt_readfileattrib_,h5pt_readfileattrib,H5PT_READFILEATTRIB) + + +/* open/close interface */ +haddr_t +f_h5pt_openr ( + char *file, + int flen + ) { /* func returns INT8 */ + + haddr_t fh; + H5PartFile* f; + char *newname = (char*)malloc(flen+1); /* be safe? */ + strncpy(newname,file,flen); + newname[flen]='\0'; + f = (H5PartOpenFile(newname,H5PART_READ)); + /* printf("openr file=[%s] flen=%u haddr=%u\n",file,flen,f); */ + fh = (haddr_t)f; + /* printf("FileHandle=%llu\n",fh); */ + + return fh; +} + +haddr_t +f_h5pt_openw ( + char *file, + int flen) { /* func returns INT8 */ + + haddr_t fh; + H5PartFile* f; + char *newname = (char*)malloc(flen+1); /* be safe? */ + strncpy(newname,file,flen); + newname[flen]='\0'; + f = (H5PartOpenFile(newname,H5PART_WRITE)); + /* printf("openr file=[%s] flen=%u haddr=%u\n",file,flen,f); */ + fh = (haddr_t)f; + /* printf("FileHandle=%llu\n",fh); */ + + return fh; +} + +#ifdef PARALLEL_IO +haddr_t +f_h5pt_openr_par ( + char *file, + MPI_Comm *c, + int flen ) { /* func returns INT8 */ + + haddr_t fh; + H5PartFile* f; + char *newname = (char*)malloc(flen+1); /* be safe? */ + strncpy(newname,file,flen); + newname[flen]='\0'; + f = H5PartOpenFileParallel(newname,H5PART_READ,*((MPI_Comm*)c)); + /* printf("openr file=[%s] flen=%u haddr=%u\n",file,flen,f); */ + fh = (haddr_t)f; + /* printf("FileHandle=%llu\n",fh); */ + + return fh; +} + +haddr_t +f_h5pt_openw_par ( + char *file, + MPI_Comm *c, + int flen ) { /* func returns INT8 */ + + haddr_t fh; + H5PartFile* f; + char *newname = (char*)malloc(flen+1); /* be safe? */ + strncpy(newname,file,flen); + newname[flen]='\0'; + f = H5PartOpenFileParallel(newname,H5PART_WRITE,*((MPI_Comm*)c)); + /* printf("openr file=[%s] flen=%u haddr=%u\n",file,flen,f); */ + fh = (haddr_t)f; + /* printf("FileHandle=%llu\n",fh); */ + + return fh; +} +#endif + +h5part_int64_t +f_h5pt_close ( + haddr_t *file + ) { + return H5PartCloseFile((H5PartFile*)*file); +} + +/*==============Writing and Setting Dataset info========*/ +#if 0 +h5part_int64_t +f_h5pt_readstep ( + haddr_t *file, + h5part_int64_t *step, + h5part_float64_t *x, + h5part_float64_t *y, + h5part_float64_t *z, + h5part_float64_t *px, + h5part_float64_t *py, + h5part_float64_t *pz, + h5part_int64_t *id + ) { + + return H5PartReadParticleStep((H5PartFile*)*file,(*step)-1,x,y,z,px,py,pz,id); +} +#endif + +h5part_int64_t +f_h5pt_setnpoints ( + haddr_t *file, + h5part_int64_t *np + ) { + + return H5PartSetNumParticles((H5PartFile*)*file,*np); +} + +h5part_int64_t +f_h5pt_setstep ( + haddr_t *file, + h5part_int64_t *step ) { + + return H5PartSetStep((H5PartFile*)*file,(*step)-1); +} + +h5part_int64_t +f_h5pt_writedata_r8 ( + haddr_t *file, + char *name, + h5part_float64_t *data, + int flen ) { + + h5part_int64_t rc; + + char *newname = (char*)malloc(flen+1); /* be safe? */ + strncpy(newname,name,flen); + newname[flen]='\0'; + rc = H5PartWriteDataFloat64((H5PartFile*)*file,newname, data); + free(newname); + + return rc; +} + +h5part_int64_t +f_h5pt_writedata_i8 ( + haddr_t *file, + char *name, + h5part_int64_t *data, + int flen ) { + + h5part_int64_t rc; + + char *newname = (char*)malloc(flen+1); /* be safe? */ + strncpy(newname,name,flen); + newname[flen]='\0'; + rc = H5PartWriteDataInt64((H5PartFile*)*file,newname,data); + free(newname); + + return rc; +} + +/*==============Reading Data Characteristics============*/ + +h5part_int64_t +f_h5pt_getnsteps ( + haddr_t *file + ) { + + /* printf("nstep Haddr=%llu\n",file); */ + return H5PartGetNumSteps((H5PartFile*)*file); +} + +h5part_int64_t +f_h5pt_getndatasets ( + haddr_t *file + ) { + /* printf("ndata Haddr=%llu\n",file); */ + return H5PartGetNumDatasets((H5PartFile*)*file); +} + +h5part_int64_t +f_h5pt_getnpoints ( + haddr_t *file + ) { + /* printf("nprt Haddr=%llu\n",file); */ + return H5PartGetNumParticles((H5PartFile*)*file); +} + +/* probably should get index from name */ +h5part_int64_t +f_h5pt_getdatasetname ( + haddr_t *file, + int *index, + char *name, + int namelen){ + + return H5PartGetDatasetName((H5PartFile *)*file,*index,name,namelen); +} + +h5part_int64_t +f_h5pt_getnumpoints ( + haddr_t *file) { + + return H5PartGetNumParticles((H5PartFile*)*file); +} + +/*=============Setting and getting views================*/ + +h5part_int64_t +f_h5pt_setview ( + haddr_t *file, + h5part_int64_t *start, + h5part_int64_t *end ) { + + return H5PartSetView((H5PartFile*)*file,*start,*end); +} + +h5part_int64_t +f_h5pt_resetview ( + haddr_t *file + ) { + + return H5PartResetView((H5PartFile*)*file); +} + +h5part_int64_t +f_h5pt_hasview ( + haddr_t *file + ) { + + return H5PartHasView(((H5PartFile*)*file)); +} + +h5part_int64_t +f_h5pt_getview ( + haddr_t *file, + h5part_int64_t *start, + h5part_int64_t *end + ) { + + return H5PartGetView((H5PartFile*)*file, start, end); +} +/*==================Reading data ============*/ +h5part_int64_t +f_h5pt_readdata_r8 ( + haddr_t *file, + char *name, + h5part_float64_t *array, + int namelen + ) { + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartReadDataFloat64((H5PartFile*)*file,newname, array); + free(newname); + return rc; +} +h5part_int64_t +f_h5pt_readdata_i8 ( + haddr_t *file, + char *name, + h5part_int64_t *array, + int namelen ) { + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartReadDataInt64((H5PartFile*)*file,newname, array); + free(newname); + return rc; +} + +/*=================== Attributes ================*/ + +/* Attributes */ +/* writing */ +h5part_int64_t +f_h5pt_writefileattrib_r8 ( + haddr_t *f, + char *name, + void *attrib, + int *nelem, + int namelen ) { + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartWriteFileAttrib((H5PartFile *)*f,newname, + H5T_NATIVE_DOUBLE,attrib,*nelem); + free(newname); + return rc; +} + +h5part_int64_t +f_h5pt_writefileattrib_i8 ( + haddr_t *f, + char *name, + void *attrib, + int *nelem, + int namelen + ) { + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartWriteFileAttrib((H5PartFile *)*f,newname, + H5T_NATIVE_INT64,attrib,*nelem); + free(newname); + return rc; +} + +h5part_int64_t +f_h5pt_writefileattrib_string ( + haddr_t *f, + char *name, + char *attrib, + int namelen, + int attriblen + ) { + + h5part_int64_t rc; + char *newattrib; + char *newname; + newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + newattrib = (char*)malloc(attriblen+1); /* be safe? */ + strncpy(newattrib,attrib,attriblen); + newattrib[attriblen]='\0'; + rc = H5PartWriteFileAttribString((H5PartFile *)*f,newname,newattrib); + free(newname); + free(newattrib); + return rc; +} + +h5part_int64_t +f_h5pt_writestepattrib_r8 ( + haddr_t *f, + char *name, + void *attrib, + int *nelem, + int namelen){ + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartWriteStepAttrib((H5PartFile *)*f,newname, + H5T_NATIVE_DOUBLE,attrib,*nelem); + free(newname); + return rc; +} + +h5part_int64_t +f_h5pt_writestepattrib_i8 ( + haddr_t *f, + char *name, + void *attrib, + int *nelem, + int namelen + ) { + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartWriteStepAttrib((H5PartFile *)*f,newname, + H5T_NATIVE_INT64,attrib,*nelem); + free(newname); + return rc; +} + +h5part_int64_t +f_h5pt_writestepattrib_string ( + haddr_t *f, + char *name, + char *attrib, + int namelen, + int attriblen ) { + + h5part_int64_t rc; + char *newattrib; + char *newname; + newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + newattrib = (char*)malloc(attriblen+1); /* be safe? */ + strncpy(newattrib,attrib,attriblen); + newattrib[attriblen]='\0'; + rc = H5PartWriteStepAttribString((H5PartFile *)*f,newname,newattrib); + free(newname); + free(newattrib); + return rc; +} + +/* reading attributes ************************* */ +h5part_int64_t +f_h5pt_getnstepattribs ( + haddr_t *f + ) { + + return H5PartGetNumStepAttribs((H5PartFile*)*f); +} + +h5part_int64_t +f_h5pt_getnfileattribs ( + haddr_t *f + ) { + + return H5PartGetNumFileAttribs((H5PartFile*)*f); +} + +h5part_int64_t +f_h5pt_getstepattribinfo ( + haddr_t *f, + int *idx, + char *name, + int *nelem, + int maxnamelen + ) { + + hid_t type; + return H5PartGetStepAttribInfo((H5PartFile*)*f,*idx,name,maxnamelen,&type,nelem); +} + +h5part_int64_t +f_h5pt_getfileattribinfo ( + haddr_t *f, + int *idx, + char *name, + int *nelem, + int maxnamelen ) { + + hid_t type; + return H5PartGetFileAttribInfo((H5PartFile*)*f,*idx,name,maxnamelen,&type,nelem); +} + +h5part_int64_t +f_h5pt_readstepattrib ( + haddr_t *f, + char *name, + void *data, + int namelen + ) { + + h5part_int64_t rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartReadStepAttrib((H5PartFile*)*f,newname,data); + free( newname ); + return rc; +} + +h5part_int64_t +f_h5pt_readfileattrib ( + haddr_t *f, + char *name, + void *data, + int namelen + ) { + + int rc; + char *newname = (char*)malloc(namelen+1); /* be safe? */ + strncpy(newname,name,namelen); + newname[namelen]='\0'; + rc = H5PartReadFileAttrib((H5PartFile*)*f,newname,data); + free( newname ); + return rc; +} diff --git a/src/H5PartPrivate.h b/src/H5PartPrivate.h new file mode 100644 index 0000000..d1b8a74 --- /dev/null +++ b/src/H5PartPrivate.h @@ -0,0 +1,365 @@ +#ifndef _H5PARTPRIVATE_H_ +#define _H5PARTPRIVATE_H_ + +/********** static function declarations **********/ + +static h5part_int64_t +_H5Part_init( void ); + +static h5part_int64_t +_H5PartFileIsValid ( + H5PartFile *f + ); + + +static herr_t +_H5PartIOcounter ( + hid_t group_id, + const char *member_name, + void *operator_data + ); + +static hid_t +_H5PartNormType ( + hid_t type + ); + +static herr_t +_H5Part_h5_error_handler ( + void * + ); + + +/***************** Error Handling ***************/ + +#define CHECK_FILEHANDLE( f ) \ + if ( _H5PartFileIsValid ( f ) != H5PART_SUCCESS ) \ + return (*_err_handler)( \ + __funcname, \ + H5PART_ERR_BADFD, \ + "Called with bad filehandle." ); + +#define CHECK_WRITABLE_MODE( f ) \ + if ( f->mode==H5PART_READ ) \ + return (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_INVAL, \ + "Attempting to write to read-only file" ); + +#define CHECK_TIMEGROUP( f ) \ + if ( f->timegroup <= 0 ) \ + return (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_INVAL, \ + "Timegroup <= 0."); + +/**************** H5Part *********************/ + +#define HANDLE_H5PART_INIT_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_INIT, \ + "Cannot initialize H5Part." ); + +#define HANDLE_H5PART_NOMEM_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_NOMEM, \ + "Out of memory." ); + +#define HANDLE_H5PART_READDATAFLOAT64_ERR( rc, name, step ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannont read dataset \"%s\" in time-step %d.", name, step ); + +#define HANDLE_H5PART_READDATAINT64_ERR( rc, name, step ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannont read dataset \"%s\" in time-step %d.", name, step ); + +#define HANDLE_H5PART_SETSTEP_ERR( rc, step ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannont set time-step to %d.", step ); + +#define HANDLE_H5PART_FILE_ACCESS_TYPE_ERR( flags ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_INVAL, \ + "Invalid file access type \"%d\".", flags); + +#define HANDLE_H5PART_STEP_EXISTS_ERR( step ) \ + (*_err_handler)( \ + __funcname, \ + H5PART_ERR_INVAL, \ + "Step #%d already exists, step cannot be set to an existing step in write and append mode", step ); + +#define HANDLE_H5PART_GET_DISKSHAPE_ERR( rc ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannont get diskshape."); + +#define HANDLE_H5PART_GET_MEMSHAPE_ERR( rc ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannont get memshape."); + + +#define HANDLE_H5PART_SET_VIEW_FILE_ACCESS_TYPE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_INVAL, \ + "Set view does not make sense for write-only files." \ + "It is meant to be used for read-only files. " \ + "(maybe later this will change)" ); + +#define HANDLE_H5PART_SET_VIEW_ERR( rc, start, end ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannot set view to (%d, %d).", start, end ); + +#define HANDLE_H5PART_GET_NUM_PARTICLES_ERR( rc ) \ + (*_err_handler) ( \ + __funcname, \ + rc, \ + "Cannot get number of particles." ); + +/**************** HDF5 *********************/ +/* H5A: Attribute */ +#define HANDLE_H5A_CLOSE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot terminate access to attribute." ); + +#define HANDLE_H5A_CREATE_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot create attribute \"%s\".", s ); + +#define HANDLE_H5A_GET_NAME_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot get attribute name." ); + +#define HANDLE_H5A_GET_NUM_ATTRS_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot get number of attributes." ); + +#define HANDLE_H5A_GET_SPACE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot get a copy of dataspace for attribute." ); + +#define HANDLE_H5A_GET_TYPE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot get attribute datatype." ); + +#define HANDLE_H5A_OPEN_IDX_ERR( n ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot open attribute specified by index \"%d\".", n ); + +#define HANDLE_H5A_OPEN_NAME_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot open attribute specified by name \"%d\".", s ); + +#define HANDLE_H5A_READ_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot read attribute" ); + +#define HANDLE_H5A_WRITE_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot write attribute \"%s\".", s ); + +/* H5D: Dataset */ +#define HANDLE_H5D_CLOSE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Close of dataset failed." ); + +#define HANDLE_H5D_CREATE_ERR( s, n ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot create dataset for name \"%s\", step \"%d\".", s, n ); + +#define HANDLE_H5D_GET_SPACE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot get dataspace identifier."); + +#define HANDLE_H5D_GET_TYPE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot determine dataset type."); + +#define HANDLE_H5D_OPEN_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot open dataset \"%s\".", s ); + +#define HANDLE_H5D_READ_ERR( s, n ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Read from dataset \"%s\" failed, step \"%d\".", s, n ); + +#define HANDLE_H5D_WRITE_ERR( s, n ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Write to dataset \"%s\" failed, step \"%d\".", s, n ); + +/* H5F: file */ +#define HANDLE_H5F_CLOSE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot terminate access to file." ); + +#define HANDLE_H5F_OPEN_ERR( filename, flags ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot open file \"%s\" with mode \"%d\"", filename, flags ); + + + +/* H5G: group */ +#define HANDLE_H5G_CLOSE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot terminate access to datagroup." ); + +#define HANDLE_H5G_CREATE_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot create datagroup \"%s\".", s ); + +#define HANDLE_H5G_GET_OBJINFO_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot get information about object \"%s\".", s ); + +#define HANDLE_H5G_OPEN_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot open group \"%s\".", s ); + + +/* H5P: property */ +#define HANDLE_H5P_CLOSE_ERR( s ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot terminate access to property list \"%s\".", s ); + +#define HANDLE_H5P_CREATE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot create property list." ); + +#define HANDLE_H5P_SET_DXPL_MPIO_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "MPI: Cannot set data transfer mode." ); + + +#define HANDLE_H5P_SET_FAPL_MPIO_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot store IO communicator information to the " \ + "file access property list."); + +/* H5S: dataspace */ +#define HANDLE_H5S_CREATE_SIMPLE_ERR( n ) \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot create dataspace with len \"%d\".", n ); + +#define HANDLE_H5S_CLOSE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot terminate access to dataspace." ); + +#define HANDLE_H5S_GET_SELECT_NPOINTS_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot determine the number of elements in dataspace selection." ); + +#define HANDLE_H5S_GET_SIMPLE_EXTENT_NPOINTS_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot determine number of elements in dataspace." ); + +#define HANDLE_H5S_SELECT_HYPERSLAB_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot set select hyperslap region or add the specified region" ); + +/* H5T: type */ +#define HANDLE_H5T_CLOSE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_HDF5, \ + "Cannot release datatype." ); + + +/* MPI */ +#define HANDLE_MPI_ALLGATHER_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_MPI, \ + "Cannot gather data." ); + +#define HANDLE_MPI_COMM_SIZE_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_MPI, \ + "Cannot get number of processes in my group." ); + +#define HANDLE_MPI_COMM_RANK_ERR \ + (*_err_handler) ( \ + __funcname, \ + H5PART_ERR_MPI, \ + "Cannot get rank of the calling process in my group." ); + +#endif + diff --git a/src/H5PartTypes.h b/src/H5PartTypes.h new file mode 100644 index 0000000..483ace8 --- /dev/null +++ b/src/H5PartTypes.h @@ -0,0 +1,76 @@ +/* + System dependend definitions +*/ + +#ifndef _H5PARTTYPES_H_ +#define _H5PARTTYPES_H_ + + +typedef int64_t h5part_int64_t; +typedef double h5part_float64_t; +typedef h5part_int64_t (*h5part_error_handler)( const char*, const h5part_int64_t, const char*,...); + +struct H5BlockFile; + +/** + \struct H5PartFile + + This is an essentially opaque datastructure that + acts as the filehandle for all practical purposes. + It is created by H5PartOpenFile() and destroyed by + H5PartCloseFile(). +*/ +struct H5PartFile { + hid_t file; + int timestep; + hsize_t nparticles; + + hid_t timegroup; + hid_t shape; + unsigned mode; + hid_t xfer_prop; + hid_t create_prop; + hid_t access_prop; + hid_t diskshape; + hid_t memshape; /* for parallel I/O (this is on-disk) H5S_ALL + if serial I/O */ + h5part_int64_t viewstart; /* -1 if no view is available: A "view" looks */ + h5part_int64_t viewend; /* at a subset of the data. */ + + /** + the number of particles in each processor. + With respect to the "VIEW", these numbers + can be regarded as non-overlapping subsections + of the particle array stored in the file. + So they can be used to compute the offset of + the view for each processor + */ + h5part_int64_t *pnparticles; + + /** + Number of processors + */ + int nprocs; + + /** + The index of the processor this process is running on. + */ + int myproc; +#ifdef PARALLEL_IO + /** + MPI comnunicator + */ + MPI_Comm comm; +#endif + struct H5BlockFile *block; +}; + +typedef struct H5PartFile H5PartFile; + +#ifdef IPL_XT3 +# define SEEK_END 2 +#endif + + + +#endif diff --git a/src/Makefile.am b/src/Makefile.am new file mode 100644 index 0000000..7f1129c --- /dev/null +++ b/src/Makefile.am @@ -0,0 +1,101 @@ +# src level Makefile.am + +# PATH SETTING (IMPORTED FROM CONFIGURE) +HDF5ROOT = @HDF5ROOT@ +PHDF5ROOT = @PHDF5ROOT@ + +# COMPILERS +CC = @CC@ +MPICC = @MPICC@ + +# COMPILER FLAGS +CFLAGS = @CFLAGS@ +PCFLAGS = $(CFLAGS) -DPARALLEL_IO -DH5_HAVE_PARALLEL -DMPICH_IGNORE_CXX_SEEK + +#INCLUDES +HDFINC = -I$(HDF5ROOT)/include +PHDFINC = -I$(PHDF5ROOT)/include +PINC = $(PHDFINC) $(MPIINC) +INC = $(HDFINC) +MPIINC = @MPIINC@ + +# H5Part header file location +H5PINC = -I@prefix@/include + +# H5Part compiled library location +H5PLIB = -L@prefix@/lib + +# HDF5 LIBRARY +HDFLIB = -L$(HDF5ROOT)/lib -lhdf5 -lz $(SZLIB) @LDFLAGS@ + +# SZ LIBRARY +SZLIB = @SZLIB@ + +# Extra files that I wish to include in the dist tar ball. +EXTRA_DIST = H5Part.cc H5Part++.cc H5Part++.hh TestUnderscoreC.c TestUnderscore.f COPYRIGHT + +# Files that I don't want to include in the dist tar ball +nodist_include_HEADERS = @UNDERSCORE_H@ + +# What to build... Will be determined by configure script. +lib_LIBRARIES = @MTARGET@ + +# Listing of all possible targets that I may build. +EXTRA_LIBRARIES = libH5Part.a libH5PartF.a libpH5Part.a libpH5PartF.a + +# Header files that I wish to install in $(prefix)/include +include_HEADERS = H5Part.inc H5Part.h H5Part.hh @UNDERSCORE_H@ + +# Listing of all possible headers that I may include +EXTRA_HEADERS = H5Part.inc H5Part.h H5Part.hh Underscore.h + +# Listing of sources +libH5Part_a_SOURCES = H5Part.c + +libH5PartF_a_SOURCES = H5Part.c H5PartF.c + +libpH5Part_a_SOURCES = H5Part.c + +libpH5PartF_a_SOURCES = H5Part.c H5PartF.c + +# Specific building instruction (What compilers to use...) +# ------------ Serial Lib build commands ------------ +libH5Part.a: H5Part.o + ar rucs libH5Part.a H5Part.o + +libH5PartF.a: H5Part.o H5PartF.o + ar rucs libH5PartF.a H5Part.o H5PartF.o + +H5Part.o: H5Part.c H5Part.h + $(CC) $(CFLAGS) $(INC) -c H5Part.c + +H5PartF.o: H5PartF.c Underscore.h H5Part.h + $(CC) $(CFLAGS) $(INC) -w -c H5PartF.c + + +# ----------- Build Parallel H5Part Stuff ------------ + +libpH5Part.a: pH5Part.o + ar rucs libpH5Part.a pH5Part.o + +libpH5PartF.a: pH5Part.o pH5PartF.o + ar rucs libpH5PartF.a pH5Part.o pH5PartF.o + +pH5Part.o: H5Part.c H5Part.h + $(MPICC) $(PCFLAGS) $(PINC) -c H5Part.c -o pH5Part.o + +pH5PartF.o: H5PartF.c Underscore.h H5Part.h + $(MPICC) $(PCFLAGS) $(PINC) -w -c H5PartF.c -o pH5PartF.o + + +clean: + rm -f *~ *.o *.a *.so + +distclean: clean + rm -f *.a + rm -rf .deps + rm -rf .libs + rm -f Underscore.h + rm -f H5Part_py_wrap.c + rm -f H5Part.py + rm -f Makefile diff --git a/src/TestUnderscore.f b/src/TestUnderscore.f new file mode 100755 index 0000000..4de2c6e --- /dev/null +++ b/src/TestUnderscore.f @@ -0,0 +1,12 @@ +c ============== +c +c Simple Fortran program works in conjunction with C program +c to determine how many underscores are generated +c by the fortran compiler +c +c ============== + + program TestUnderscoreF + implicit none + call FindUnderscores + end diff --git a/src/TestUnderscoreC.c b/src/TestUnderscoreC.c new file mode 100755 index 0000000..0beafb7 --- /dev/null +++ b/src/TestUnderscoreC.c @@ -0,0 +1,36 @@ +#include + +void findunderscores(void){ + printf("#ifndef F77_NO_UNDERSCORE\n"); + printf("#define F77_NO_UNDERSCORE\n"); + printf("#endif\n"); + printf("#ifndef F77_NO_CAPS\n"); + printf("#define F77_NO_CAPS\n"); + printf("#endif\n"); +} + +void FindUnderscores(void){ + printf("#ifndef F77_NO_UNDERSCORE\n"); + printf("#define F77_NO_UNDERSCORE\n"); + printf("#endif\n"); +} + +void FindUnderscores_(void){ + printf("#ifndef F77_SINGLE_UNDERSCORE\n"); + printf("#define F77_SINGLE_UNDERSCORE\n"); + printf("#endif\n"); +} + +void findunderscores_(void){ + printf("#ifndef F77_SINGLE_UNDERSCORE\n"); + printf("#define F77_SINGLE_UNDERSCORE\n"); + printf("#endif\n"); + printf("#ifndef F77_NO_CAPS\n"); + printf("#define F77_NO_CAPS\n"); + printf("#endif\n"); +} +void FINDUNDERSCORES(void){ + printf("#ifndef F77_CRAY_UNDERSCORE\n"); + printf("#define F77_CRAY_UNDERSCORE\n"); + printf("#endif\n"); +} diff --git a/src/addToDoxygenMainPage.h b/src/addToDoxygenMainPage.h new file mode 100644 index 0000000..c397880 --- /dev/null +++ b/src/addToDoxygenMainPage.h @@ -0,0 +1,24 @@ +/*! \mainpage +

    H5Part: a Portable High Performance Parallel Data Interface to HDF5 +

    +

    + +Particle based simulations of accelerator beam-lines, especially in six dimensional phase space, generate vast amounts of data. +Even though a subset of statistical information regarding phase space or analysis needs to be preserved, reading and writing such enormous restart +files on massively parallel supercomputing systems remains challenging. +

    +H5Part consists of Particles, Block structured Fields and unstructured data (Topo).

    +Developed by . + +

    +For further information contact: xxxxxx - +xxxx xxxxx, (xxx) xxx. +

    +Last modified on xxx xx, 2006. +

    +Papers: +

    +LBNL Vis Group
    +*/ + + diff --git a/test/Bench.c b/test/Bench.c new file mode 100644 index 0000000..a73af78 --- /dev/null +++ b/test/Bench.c @@ -0,0 +1,235 @@ +#include +#include +#include +#include +/* #include */ +#include +#include +#ifndef PARALLEL_IO +#define PARALLEL_IO +#endif + +#ifndef DISABLE_H5PART +#include "H5Part.h" +#endif + +#define FILENAME "testio" +/* normally 64 steps for real benchmark */ +#define NSTEPS 5 +/* normally 51e6 for real benchmark */ +#define NPARTICLES 51e4 +#define NTRIALS 3 + +/* + + bench + + +*/ + + +int main(int argc,char *argv[]){ + MPI_Info info; + int npdims=1; + int nprocs,rank; + int trial; + int i,j,n; /* iteration variables */ + double starttime,curtime, endtime; + + int nparticles = atoi(argv[1]); + + double *x,*y,*z,*px,*py,*pz; + typedef double *ddouble; + ddouble data[6]; + int64_t *id; + MPI_Datatype chunktype; + int offset; + int localnp; + int err1,err2; + char filename[128]; /*= FILENAME; */ +#ifndef DISABLE_H5PART + H5PartFile *f; +#endif + char newfilename[128]; + FILE *fd; + MPI_File file; + MPI_Info bogusinfo; + MPI_Offset foffset; + + MPI_Comm comm,dcomm = MPI_COMM_WORLD; + + MPI_Init(&argc,&argv); + MPI_Comm_rank(dcomm,&rank); + MPI_Comm_size(dcomm,&nprocs); + + localnp=nparticles/(int64_t)nprocs; + for(offset=0,i=0;i +#include +#include +#include +#include "H5Part.hh" + +#ifdef READTEST + +#endif + +#ifdef REGRESSIONTEST + +/* + A simple regression test that shows how you use this API + to write and read multi-timestep files of particle data. +*/ +#ifdef PARALLEL_IO + +int main(int argc,char *argv[]){ + int sz=5; + double *x,*y,*z; + h5part_int64_t *id; + char name[64]; + H5PartFile *file; + int i,t,nt,nds; + int nprocs,myproc; + hid_t gid; + MPI_Comm comm=MPI_COMM_WORLD; + + MPI_Init(&argc,&argv); + MPI_Comm_size(comm,&nprocs); + MPI_Comm_rank(comm,&myproc); + + x=(double*)malloc(sz*nprocs*sizeof(double)); + y=(double*)malloc(sz*nprocs*sizeof(double)); + z=(double*)malloc(sz*nprocs*sizeof(double)); + id=(h5part_int64_t*)malloc(sz*nprocs*sizeof(h5part_int64_t)); + /* parallel file creation */ + file=H5PartOpenFileParallel("parttest.h5",H5PART_WRITE,comm); + if(!file) { + perror("File open failed: exiting!"); + exit(0); + } + + for(t=0;t<5;t++){ + MPI_Barrier(comm); + for(i=0;ifile); + H5PartSetStep(file,t); /* must set the current timestep in file */ + H5PartSetNumParticles(file,sz); /* then set number of particles to store */ + /* now write different tuples of data into this timestep of the file */ + H5PartWriteDataFloat64(file,"x",x); + H5PartWriteDataFloat64(file,"y",y); + H5PartWriteDataFloat64(file,"z",z); + + H5PartWriteDataFloat64(file,"px",x); + H5PartWriteDataFloat64(file,"py",y); + H5PartWriteDataFloat64(file,"pz",z); + + H5PartWriteDataInt64(file,"id",id); + } + + unsigned int idStart = 0+sz*myproc; + unsigned int idEnd = (sz-1)+sz*myproc; + + printf("AllDone p[%u]\n",myproc); + H5PartCloseFile(file); + MPI_Barrier(comm); + + printf("p[%u:%u] : OK, close file and reopen for reading idStart %u idEnd %u \n",myproc,nprocs,idStart,idEnd); + + file=H5PartOpenFileParallel("parttest.h5",H5PART_READ,comm); + H5PartSetStep(file,0); + unsigned int np = 0; + // unsigned int np = (int)H5PartGetNumParticles(file); + // nt=H5PartGetNumSteps(file); /* get number of steps in file */ + + //nds=H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + MPI_Barrier(comm); + + // H5PartSetView(file,idStart,idEnd); + + printf("steps= %u datasets= %u particles= %u\n",nt,nds,np); + + if(x) + free(x); + if(y) + free(y); + if(z) + free(z); + if(id) + free(id); + + H5PartCloseFile(file); + MPI_Barrier(comm); + fprintf(stderr,"proc[%u]: done\n",myproc); + return MPI_Finalize(); +} + +#else + +#endif + +#endif + + diff --git a/test/H5PartAndreasTest.cc b/test/H5PartAndreasTest.cc new file mode 100755 index 0000000..8913e2e --- /dev/null +++ b/test/H5PartAndreasTest.cc @@ -0,0 +1,121 @@ +#include +#include +#include +#include +#include +#include "H5Part.hh" + + +/* + A simple regression test that shows how you use this API + to write and read multi-timestep files of particle data. +*/ +#ifdef PARALLEL_IO + +int main(int argc,char *argv[]){ + int N = 10; + int sz=0; + double *x,*y,*z; + h5part_int64_t *id; + char name[64]; + H5PartFile *file; + int i,t,nt,nds; + int nprocs,myproc; + hid_t gid; + + unsigned int np = 0; + + MPI_Comm comm=MPI_COMM_WORLD; + + MPI_Init(&argc,&argv); + MPI_Comm_size(comm,&nprocs); + MPI_Comm_rank(comm,&myproc); + + /* parallel file creation */ + file=H5PartOpenFileParallel("parttest.h5",H5PART_WRITE,comm); + if(!file) { + perror("File open failed: exiting!"); + exit(0); + } + + for(t=0;t<5;t++){ + + MPI_Barrier(comm); + + sz = myproc*N; + // proc[0] sz = 10, (next step N=10), sz=10 + // proc[1] sz = 20, (next step N=20), sz=40 + fprintf(stderr,"proc[%u] sz=%u\n",myproc,(unsigned)sz); + x =(double*)malloc(1+sz*sizeof(double)); + y =(double*)malloc(1+sz*sizeof(double)); + z =(double*)malloc(1+sz*sizeof(double)); + id=(h5part_int64_t*)malloc(1+sz*sizeof(h5part_int64_t)); + + for(i=0;i +#include +#include +#include +#include "H5Part.hh" + +/* + A simple regression test that shows how you use this API + to write and read multi-timestep files of particle data. +*/ +#ifdef PARALLEL_IO + +int main(int argc,char *argv[]){ + int sz=5; + double *x,*y,*z; + h5part_int64_t *id; + char name[64]; + H5PartFile *file; + int i,t,nt,nds; + int nprocs,myproc; + hid_t gid; + MPI_Comm comm=MPI_COMM_WORLD; + + MPI_Init(&argc,&argv); + MPI_Comm_size(comm,&nprocs); + MPI_Comm_rank(comm,&myproc); + + x=(double*)malloc(sz*nprocs*sizeof(double)); + y=(double*)malloc(sz*nprocs*sizeof(double)); + z=(double*)malloc(sz*nprocs*sizeof(double)); + id=(h5part_int64_t*)malloc(sz*nprocs*sizeof(h5part_int64_t)); + /* parallel file creation */ + file=H5PartOpenFileParallel("parttest.h5",H5PART_WRITE,comm); + if(!file) { + perror("File open failed: exiting!"); + exit(0); + } + + for(t=0;t<5;t++){ + MPI_Barrier(comm); + for(i=0;ifile); + H5PartSetStep(file,t); /* must set the current timestep in file */ + H5PartSetNumParticles(file,sz); /* then set number of particles to store */ + /* now write different tuples of data into this timestep of the file */ + H5PartWriteDataFloat64(file,"x",x); + H5PartWriteDataFloat64(file,"y",y); + H5PartWriteDataFloat64(file,"z",z); + + H5PartWriteDataFloat64(file,"px",x); + H5PartWriteDataFloat64(file,"py",y); + H5PartWriteDataFloat64(file,"pz",z); + + H5PartWriteDataInt64(file,"id",id); + } + + unsigned int idStart = 0+sz*myproc; + unsigned int idEnd = (sz-1)+sz*myproc; + + printf("AllDone p[%u]\n",myproc); + H5PartCloseFile(file); + fprintf(stderr,"Closed files p[%u]\n",myproc); + MPI_Barrier(comm); + + fprintf(stderr,"p[%u:%u] : OK, close file and reopen for reading idStart %u idEnd %u \n",myproc,nprocs,idStart,idEnd); + + file=H5PartOpenFileParallel("parttest.h5",H5PART_READ,comm); + H5PartSetStep(file,0); + // unsigned int np = 0; + unsigned int np = (int)H5PartGetNumParticles(file); + nt=H5PartGetNumSteps(file); /* get number of steps in file */ + nds=H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + + MPI_Barrier(comm); + + H5PartSetView(file,idStart,idEnd); + + np = (int)H5PartGetNumParticles(file); + printf("After SetView(%d,%d): steps= %u datasets= %u particles= %u\n", + (int)idStart,(int)idEnd, + nt,nds,np); + + if(x) + free(x); + if(y) + free(y); + if(z) + free(z); + if(id) + free(id); + + H5PartCloseFile(file); + MPI_Barrier(comm); + fprintf(stderr,"proc[%u]: done\n",myproc); + return MPI_Finalize(); +} + +#else +int main(int argc,char *argv[]){ + int sz=10; + double *x,*y,*z; + h5part_int64_t *id; + char name[64]; + H5PartFile *file; + int i,t,nt,nds,np; + hid_t gid; + h5part_int64_t idStart = 0; + h5part_int64_t idEnd = 0; + + + x=(double*)malloc(sz*sizeof(double)); + y=(double*)malloc(sz*sizeof(double)); + z=(double*)malloc(sz*sizeof(double)); + id=(h5part_int64_t*)malloc(sz*sizeof(h5part_int64_t)); + /* parallel file creation */ + file=H5PartOpenFile("parttest.h5",H5PART_WRITE); + if(!file) { + perror("File open failed: exiting!"); + exit(0); + } + + H5PartWriteFileAttribString(file,"File Description", "This file is created by H5PartTest.cc. Simple H5Part file for testing purpose..."); + char* FileAttrib = "Created by H5PartTest.cc"; + H5PartWriteFileAttrib(file, "Origin", H5T_NATIVE_CHAR, FileAttrib ,strlen(FileAttrib)); + + for(t=0;t<5;t++){ + fprintf(stdout,"Writing timestep %u\n",t); + for(i=0;i>1); + printf("Set new view = %d:%d\n",(int)idStart,(int)(idEnd>>1)); + H5PartGetView(file,&idStart,&idEnd); + np=H5PartGetNumParticles(file); + printf("steps= %u datasets= %u particles= %d with view %d:%d\n", + nt,nds,(int)np,(int)idStart,(int)idEnd); + H5PartSetStep(file,nt-1); // set to last step + printf("Setting to last step = %u\n",nt-1); + for(i=0;i<10;i++){ x[i]=y[i]=z[i]=0.0; id[i]=0; } /* clear the arrays */ + H5PartReadDataFloat64(file,"x",x); + H5PartReadDataFloat64(file,"y",y); + H5PartReadDataFloat64(file,"z",z); + H5PartReadDataInt64(file,"id",id); + + for(i=0;i>1,(int)idEnd); + H5PartSetView(file,(idEnd>>1),idEnd); + np=H5PartGetNumParticles(file); + printf("Now particles in selection are %d\n",np); + printf("doubleCheck=%d\n",H5PartGetView(file,0,0)); + + for(i=0;i<10;i++){ x[i]=y[i]=z[i]=0.0; id[i]=0; } /* clear the arrays */ + + H5PartReadDataFloat64(file,"x",x); + H5PartReadDataFloat64(file,"y",y); + H5PartReadDataFloat64(file,"z",z); + H5PartReadDataInt64(file,"id",id); + for(i=0;i +#include +#include +#include +#include "H5Part.hh" + +#ifdef PARALLEL_IO + +/* + This regression test is used to ensure parallel I/O is + working correctly and that Views are working for + parallel reads. + */ +int main(int argc,char *argv[]){ + const int sz=5000; + double *x,*y,*z; + h5part_int64_t *id; + char name[64]; + H5PartFile *file; + int i,t,nt,nds; + int nprocs,myproc; + hid_t gid; + MPI_Comm comm=MPI_COMM_WORLD; + + MPI_Init(&argc,&argv); + MPI_Comm_size(comm,&nprocs); + MPI_Comm_rank(comm,&myproc); + + x=(double*)malloc(sz*nprocs*sizeof(double)); + y=(double*)malloc(sz*nprocs*sizeof(double)); + z=(double*)malloc(sz*nprocs*sizeof(double)); + id=(h5part_int64_t*)malloc(sz*nprocs*sizeof(h5part_int64_t)); + /* parallel file creation */ + file=H5PartOpenFileParallel("parttest.h5",H5PART_WRITE,comm); + if(!file) { + perror("File open failed: exiting!"); + exit(0); + } + + for(t=0;t<5;t++){ + MPI_Barrier(comm); + for(i=0;i void DataSink::savePhaseSpaceData() +{ + T *x=(double*)malloc(beam_m->getLocalNum()*sizeof(double)); + T *y=(double*)malloc(beam_m->getLocalNum()*sizeof(double)); + T *z=(double*)malloc(beam_m->getLocalNum()*sizeof(double)); + T *px=(double*)malloc(beam_m->getLocalNum()*sizeof(double)); + T *py=(double*)malloc(beam_m->getLocalNum()*sizeof(double)); + T *pz=(double*)malloc(beam_m->getLocalNum()*sizeof(double)); + h5part_int64_t int *id=(h5part_int64_t int*)malloc(beam_m->getLocalNum()*sizeof(h5part_int64_t)); + + double actPos = beam_m->getActSPos(); + double structLenght = beam_m->getMaxZ(); + Vector_t org = beam_m->getOrigin(); + Vector_t maxX = beam_m->getRmax(); + Vector_t minX = beam_m->getRmin(); + Vector_t maxP = beam_m->getPmax(); + Vector_t minP = beam_m->getPmin(); + unsigned long protons = beam_m->getNumberOfProtons(); + unsigned long electrons = beam_m->getNumberOfElectrons(); + Vector_t centroid = beam_m->getCentroid(); + unsigned nTot = beam_m->getTotalNum(); + for (h5part_int64_t i=0; igetLocalNum();i++) { + x[i] = beam_m->R[i](0); + y[i] = beam_m->R[i](1); + z[i] = beam_m->R[i](2); + px[i] = beam_m->P[i](0); + py[i] = beam_m->P[i](1); + pz[i] = beam_m->P[i](2); + if (i< (electrons-1)) + id[i] = beam_m->ID[i]; else + id[i] = -1*(long int)beam_m->ID[i]; + } + H5PartSetStep(file_m,idx_m); /* must set the current timestep in file */ + H5PartSetNumParticles(file_m,beam_m->getLocalNum()); /* then set number of particles to store */ + /* now write different tuples of data into this timestep of the file */ + H5PartWriteDataFloat64(file_m,"x",x); + H5PartWriteDataFloat64(file_m,"y",y); + H5PartWriteDataFloat64(file_m,"z",z); + H5PartWriteDataFloat64(file_m,"px",px); + H5PartWriteDataFloat64(file_m,"py",py); + H5PartWriteDataFloat64(file_m,"pz",pz); + H5PartWriteDataInt64(file_m,"id",id); + h5part_int64_t step = idx_m; + H5PartWriteStepAttrib(file_m,"Step",H5T_NATIVE_INT64,&step,1); + + + /* write scalar data i.e the header */ + H5PartWriteAttrib(file_m,"Spos",H5T_NATIVE_DOUBLE,&actPos,1); + H5PartWriteAttrib(file_m,"structLen",H5T_NATIVE_DOUBLE,&structLenght,1); + + H5PartWriteAttrib(file_m,"org",H5T_NATIVE_DOUBLE,&org,3); + H5PartWriteAttrib(file_m,"maxX",H5T_NATIVE_DOUBLE,&maxX,3); + H5PartWriteAttrib(file_m,"minX",H5T_NATIVE_DOUBLE,&minX,3); + H5PartWriteAttrib(file_m,"maxP",H5T_NATIVE_DOUBLE,&maxP,3); + H5PartWriteAttrib(file_m,"minP",H5T_NATIVE_DOUBLE,&minP,3); + H5PartWriteAttrib(file_m,"centroid",H5T_NATIVE_DOUBLE,¢roid,3); + delete x; + delete y; + delete z; + delete id; + idx_m++; +} diff --git a/test/H5test.cc b/test/H5test.cc new file mode 100755 index 0000000..ea66f0e --- /dev/null +++ b/test/H5test.cc @@ -0,0 +1,155 @@ +#include +#include +#include +#include "H5Part.hh" + +#include +#include +#include +#include +using namespace std; + + +/* + A simple regression test that shows how you use this API + to write and read multi-timestep files of particle data. +*/ +#ifdef PARALLEL_IO + + +#else + +int ReadFile(const string fn){ + char name[64]; + H5PartFile *file; + int i,t,nt,nds,myproc; + int nfattribs,nsattribs; + cout << "Open " << fn << endl; + + file= H5PartOpenFile(fn.c_str(),H5PART_READ); + + nt=H5PartGetNumSteps(file); + H5PartSetStep(file,0); + nds=H5PartGetNumDatasets(file); + + cout << "Timesteps = " << nt << " dataSets per timestep = " << nds << endl; + + cout << endl << endl << "===============================" << endl; + for(i=0;i1) str=argv[1]; + else str=dstr; + const string fn = string(str); + /* f=fopen(fn.c_str(),"r"); + if(f!=NULL) { a poor-man's stat() + fclose(f); + */ + if(!WriteFile(fn)){ + cerr << "Failed to write file " << fn << endl; + exit(0); + } + /* + } + else { + cout << "File " << fn << " already exists, so we will proceed to reading" << endl; + } */ + if(!ReadFile(fn)){ + cerr << "Failed to read file " << fn << endl; + } +} +#endif diff --git a/test/H5testF.f b/test/H5testF.f new file mode 100644 index 0000000..db78530 --- /dev/null +++ b/test/H5testF.f @@ -0,0 +1,107 @@ +c ============== +c +c Sample Fortran program that uses HDF5 bindings +c +c ============== + + program H5testF + implicit none + include 'H5Part.inc' + INTEGER*8 file + INTEGER*8 nstep,ndata + INTEGER*8 npoints + INTEGER*8 step + INTEGER*8 err + INTEGER*8 I,J + REAL*8,ALLOCATABLE:: X(:),Y(:),Z(:),PX(:),PY(:),PZ(:) + INTEGER*8,ALLOCATABLE:: ID(:) + REAL*8 REALTIME + file = h5pt_openw("testfilef.h5") + print *,"Opened file testfilef.h5 for writing" + npoints = 1024 + nstep = 10 + ALLOCATE(X(npoints),Y(npoints),Z(npoints)) + ALLOCATE(PX(npoints),PY(npoints),PZ(npoints)) + ALLOCATE(ID(npoints)) + print *," Npoints=",npoints," nsteps=",nstep + print *," writing X,Y,Z,PX,PY,PZ,ID" + print *," ... initialize the data arrays" + do I=1,npoints + X(I)=0.0 + Y(I)=1.0+I + Z(I)=100.0+I*2.0 + ID(I)=I + enddo + print *,"Tell h5pt how many particles are stored in the file" +c set the number of points + err = h5pt_setnpoints(file,npoints) + print *,"write an attribute string" +c write an annotation to the file + err=h5pt_writefileattrib_string(file,"Annotation","Testing 1 2 3") + print *,"and now write the steps" + do I=1,nstep +c Set the step number + print *,"Write Step ",I + err = h5pt_setstep(file,I) +c Now start writing the data arrays for this step + err = h5pt_writedata_r8(file,"x",X) + err = h5pt_writedata_r8(file,"y",Y) + err = h5pt_writedata_r8(file,"z",Z) + err = h5pt_writedata_r8(file,"px",PX) + err = h5pt_writedata_r8(file,"py",PY) + err = h5pt_writedata_r8(file,"pz",PZ) + err = h5pt_writedata_i8(file,"id",ID) + do J=1,npoints + ID(J)=ID(J)+10 + enddo +c And write a simple floatingpoint attribute associated with this timestep + REALTIME = I*0.1 + err=h5pt_writestepattrib_r8(file,"RealTime",REALTIME,1) + enddo + print *,"Done writing, now close the file" + err = h5pt_close(file) + +c **************** Clean out some variables *************** + nstep=0 +c npoints=0 + do I=1,npoints + X(I)=-1.0 + Y(I)=-1.0 + Z(I)=-1.0 + ID(I)=0 + enddo + +c *****************Now Reopen for Reading ****************** + + + print *,"Open file for reading" + file = h5pt_openr("testfilef.h5") + print *," Opened testfilef.h5" + nstep = h5pt_getnsteps(file) + print *," Nsteps = ",nstep + err = h5pt_setstep(file,1_8) + print *,"now get the number of datasets" + ndata = h5pt_getndatasets(file) + print *," Ndata=",ndata + npoints = h5pt_getnpoints(file) + print *," NP=",npoints + + + + do step=1,nstep + print *,"Read step ",step +c set the current step + err = h5pt_setstep(file,step) + err=h5pt_readdata_i8(file,"id",ID) +c read the Z data from the current step +c err = h5prt_readdata(file,step,X,Y,Z,PX,PY,PZ,ID) + do J=1,10 + print *," ID(",J,")==",ID(J) + enddo + enddo + + err = h5pt_close(file) + print *,"done" + + end + diff --git a/test/H5testFpar.f b/test/H5testFpar.f new file mode 100644 index 0000000..5634c9e --- /dev/null +++ b/test/H5testFpar.f @@ -0,0 +1,125 @@ +c ============== +c +c Sample Fortran program that uses HDF5 bindings +c +c ============== + + program H5testFpar + implicit none + include 'mpif.h' + include 'H5Part.inc' + INTEGER*8 file + INTEGER*8 nstep + INTEGER*8 ndata + INTEGER*8 npoints,pointoffset + INTEGER*8 step + INTEGER*8 err + INTEGER*8 I + INTEGER*8 J + REAL*8,ALLOCATABLE:: X(:),Y(:),Z(:),PX(:),PY(:),PZ(:) + INTEGER*8,ALLOCATABLE:: ID(:) + REAL*8 REALTIME + INTEGER myproc,nprocs + INTEGER ierr + INTEGER:: comm + INTEGER*8 rc + + call MPI_Init(ierr) + comm = MPI_COMM_WORLD + call MPI_Comm_rank(comm,myproc,ierr) + call MPI_Comm_size(comm,nprocs,ierr) + + file = h5pt_openw_par("testfilef.h5",comm) + print *,"Opened file testfilef.h5 for writing" + npoints = 1024 + nstep = 10 + ALLOCATE(X(npoints),Y(npoints),Z(npoints)) + ALLOCATE(PX(npoints),PY(npoints),PZ(npoints)) + ALLOCATE(ID(npoints)) + print *," Npoints=",npoints," nsteps=",nstep + print *," writing X,Y,Z,PX,PY,PZ,ID" + print *," ... initialize the data arrays" + do I=1,npoints + X(I)=0.0 + Y(I)=1.0+I + Z(I)=100.0+I*2.0 + ID(I)=I + enddo + print *,"Tell h5pt how many particles are stored in the file" +c set the number of points + rc = h5pt_setnpoints(file,npoints) + print *,"write an attribute string" +c write an annotation to the file + err=h5pt_writefileattrib_string(file,"Annotation","Testing 1 2 3") + print *,"and now write the steps" + do I=1,nstep +c Set the step number + print *,"Write Step ",I + rc = h5pt_setstep(file,I) +c Now start writing the data arrays for this step + rc = h5pt_writedata_r8(file,"x",X) + rc = h5pt_writedata_r8(file,"y",Y) + rc = h5pt_writedata_r8(file,"z",Z) + rc = h5pt_writedata_r8(file,"px",PX) + rc = h5pt_writedata_r8(file,"py",PY) + rc = h5pt_writedata_r8(file,"pz",PZ) + rc = h5pt_writedata_i8(file,"id",ID) + do J=1,npoints + ID(J)=ID(J)+10 + enddo +c And write a simple floatingpoint attribute associated with this timestep + REALTIME = I*0.1 + err=h5pt_writestepattrib_r8(file,"RealTime",REALTIME,1) + enddo + print *,"Done writing, now close the file" + rc = h5pt_close(file) + +c **************** Clean out some variables *************** + nstep=0 +c npoints=0 + do I=1,npoints + X(I)=-1.0 + Y(I)=-1.0 + Z(I)=-1.0 + ID(I)=0 + enddo + +c *****************Now Reopen for Reading ****************** + + + print *,"Open file for reading" + file = h5pt_openr_par("testfilef.h5",comm) + print *," Opened testfilef.h5" + nstep = h5pt_getnsteps(file) + print *," Nsteps = ",nstep + rc = h5pt_setstep(file,1_8) + print *,"now get the number of datasets" + ndata = h5pt_getndatasets(file) + print *," Ndata=",ndata + npoints = h5pt_getnpoints(file) + print *," Total NP=",npoints + npoints = npoints/nprocs + pointoffset = npoints*myproc; + rc = h5pt_setview(file,pointoffset,pointoffset+npoints) + print *," Pointoffset=",pointoffset," Local NP=",npoints +c Now we need to set our view to read correct points + + + do step=1,nstep + print *,"Read step ",step +c set the current step + rc = h5pt_setstep(file,step) + err=h5pt_readdata_i8(file,"id",ID) +c read the Z data from the current step +c rc = h5prt_readdata(file,step,X,Y,Z,PX,PY,PZ,ID) + do J=1,10 + print *," ID(",J,")==",ID(J) + enddo + enddo + + rc = h5pt_close(file) + print *,"done" + call MPI_Finalize() + + end + diff --git a/test/Makefile.am b/test/Makefile.am new file mode 100644 index 0000000..94ac3b2 --- /dev/null +++ b/test/Makefile.am @@ -0,0 +1,149 @@ +# test level Makefile.am + +# PATH SETTING +HDF5ROOT = @HDF5ROOT@ +PHDF5ROOT = @PHDF5ROOT@ + +# COMPILER SETTING +CXX = @CXX@ +FC = @FC@ +MPIFC = @MPIFC@ +MPICXX = @MPICXX@ +MPICC = @MPICC@ + +# COMPILER FLAG SETTING +CFLAGS = @CFLAGS@ +PCFLAGS = $(CFLAGS) -DPARALLEL_IO -DH5_HAVE_PARALLEL -DMPICH_IGNORE_CXX_SEEK +ADDFLAGS = @ADDFLAGS@ +FFLAGS = @FFLAGS@ $(ADDFLAGS) +PFFLAGS = @FFLAGS@ $(CFLAGS) + +# LIBRARIES +SZLIB = @SZLIB@ +HDFLIB = -L$(HDF5ROOT)/lib -lhdf5 -lz $(SZLIB) @LDFLAGS@ +PHDFLIB = -L$(PHDF5ROOT)/lib -lhdf5 -lz $(SZLIB) @LDFLAGS@ +MPILIB = @MPILIB@ +LIBS = $(HDFLIB) -lm @STDCXX@ +PLIBS = $(PHDFLIB) $(MPILIB) -lm @STDCXX@ + +# H5Part compiled library location +# H5PLIB = -L@prefix@/lib +H5PLIB = -L@H5P_LIB_LOC@ + +# INCLUDES +HDFINC = -I$(HDF5ROOT)/include +PHDFINC = -I$(PHDF5ROOT)/include +MPIINC = @MPIINC@ +PINC = $(PHDFINC) $(MPIINC) $(H5PINC) +INC = $(HDFINC) $(H5PINC) + +# H5Part header file location +# H5PINC = -I@prefix@/include +H5PINC = -I@H5P_LIB_LOC@ + +# What to build... make install will place these files in the $(prefix)/bin directory. +bin_PROGRAMS = @TTARGET@ + +# Some useful scripts that I wish to place in the $(prefix)/bin directory. +bin_SCRIPTS = +#bin_SCRIPTS = JAC_H5PartTestP_script.scr JAC_H5testFpar_script.scr JAC_RUN_ALL_script.scr + +# Listing of all programs that maybe built. (Has to know statically...) +EXTRA_PROGRAMS = Bench H5PartTest H5testF H5PartTestP H5PartAndreasTest H5testFpar H5PartTestParallel H5test + +# Extra files that I wish to include in the dist tar ball. +EXTRA_DIST = Bench.c H5ecloudExample.cc H5ParallelTest.cc H5test.cc $(bin_SCRIPTS)## TO BE TAILORED LATER... + +# Listing of sources +Bench_SOURCES = Bench.c + +H5PartAndreasTest_SOURCES = H5PartAndreasTest.cc + +H5PartTest_SOURCES = H5PartTest.cc + +H5PartTestP_SOURCES = H5PartTest.cc + +H5testF_SOURCES = H5testF.f + +H5testFpar_SOURCES = H5testFpar.f + +H5PartTestParallel_SOURCES = H5PartTestParallel.cc + +H5test_SOURCES = H5test.cc + +# Specific building instruction (What compilers to use...) +# ------------ Build Tests ------------ + +Bench: Bench.c + $(MPICC) $(PCFLAGS) $(PINC) -o Bench Bench.c $(H5PLIB) -lpH5Part $(PLIBS) + +##################################################################################################################### + +H5PartTest: H5PartTest.o + $(CXX) -o H5PartTest H5PartTest.o $(H5PLIB) -lH5Part $(LIBS) + +H5PartTest.o: H5PartTest.cc + $(CXX) $(CFLAGS) $(INC) -DREGRESSIONTEST -g -c H5PartTest.cc + +##################################################################################################################### + +H5PartTestP: H5PartTestP.o + $(MPICXX) $(PINC) -o H5PartTestP H5PartTestP.o $(H5PLIB) -lpH5Part $(PLIBS) + +H5PartTestP.o: H5PartTest.cc + $(MPICXX) $(PCFLAGS) $(PINC) -DREGRESSIONTEST -c H5PartTest.cc -o H5PartTestP.o + +##################################################################################################################### + +H5PartTestParallel: H5PartTestParallel.o + $(MPICXX) -o H5PartTestParallel H5PartTestParallel.o $(H5PLIB) -lpH5Part $(PLIBS) + +H5PartTestParallel.o: H5PartTestParallel.cc + $(MPICXX) $(PCFLAGS) $(PINC) -c H5PartTestParallel.cc + +##################################################################################################################### + +H5PartAndreasTest: H5PartAndreasTest.o + $(MPICXX) -o H5PartAndreasTest H5PartAndreasTest.o $(H5PLIB) -lpH5Part $(PLIBS) + +H5PartAndreasTest.o: H5PartAndreasTest.cc + $(MPICXX) $(PCFLAGS) $(PINC) -c H5PartAndreasTest.cc + +##################################################################################################################### + +H5testF: H5testF.o + $(FC) -o H5testF H5testF.o $(H5PLIB) -lH5PartF -lH5Part $(LIBS) + +H5testF.o: H5testF.f + $(FC) $(FFLAGS) -c $(H5PINC) H5testF.f + +##################################################################################################################### + +H5testFpar: H5testFpar.o + $(MPIFC) -o H5testFpar H5testFpar.o $(H5PLIB) -lpH5PartF -lpH5Part $(PLIBS) + +H5testFpar.o: H5testFpar.f + $(MPIFC) $(PFFLAGS) -c $(H5PINC) H5testFpar.f + +##################################################################################################################### + +H5test: H5test.o + $(CXX) -o H5test H5test.o $(H5PLIB) -lH5Part $(LIBS) + +H5test.o: H5test.cc + $(CXX) $(CFLAGS) $(INC) -DREGRESSIONTEST -g -c H5test.cc + +##################################################################################################################### + +clean: + rm -f *~ *.o *.o H5testF H5PartTest H5PartTestP H5PartAndreasTest H5PartTestParallel H5testFpar Bench + +distclean: clean + rm -fr H5testF H5PartTest H5PartTestP H5PartAndreasTest H5PartTestParallel H5test + rm -rf .deps + rm -rf .libs + rm -f parttest.h5 + rm -rf config.status config.log config.h Makefile + + +##################################################################################################################### diff --git a/tools/Makefile.am b/tools/Makefile.am new file mode 100644 index 0000000..d207773 --- /dev/null +++ b/tools/Makefile.am @@ -0,0 +1,74 @@ +# tools level Makefile.am + +# PATH SETTING +HDF5ROOT = @HDF5ROOT@ + +# COMPILER SETTING +CXX = @CXX@ +TOOLS_CXX = @TOOLS_CXX@ + +# COMPILER FLAG SETTING +CFLAGS = @CFLAGS@ + +# # -L$(HDF5ROOT)/lib -lhdf5 + +# LIBRARIES +SZLIB = @SZLIB@ +HDFLIB = @TOOLS_HDFLIB@ -lz $(SZLIB) +LIBS = $(HDFLIB) $(MPILIB) -lm @STDCXX@ @LDFLAGS@ + +# H5Part compiled library location +# H5PLIB = -L@prefix@/lib +H5PLIB = -L@H5P_LIB_LOC@ @TOOLS_H5PART_LIB@ + +# INCLUDES +HDFINC = -I$(HDF5ROOT)/include +INC = $(HDFINC) $(H5PINC) + +# H5Part header file location +# H5PINC = -I@prefix@/include +H5PINC = -I@H5P_LIB_LOC@ + +# What to build... make install will place these files in the $(prefix)/bin directory. +bin_PROGRAMS = @BUILD_TOOLS@ + +# Listing of all programs that maybe built. (Has to know statically...) +EXTRA_PROGRAMS = h5pAttrib h5pToGNUplot + +# Extra files that I wish to include in the dist tar ball. +EXTRA_DIST = h5pAttrib.cc h5pToGNUplot.cc## TO BE TAILORED LATER... + +# Listing of sources +h5pAttrib_SOURCES = h5pAttrib.cc + +h5pToGNUplot_SOURCES = h5pToGNUplot.cc + +# Specific building instruction (What compilers to use...) +# ------------ Build Tools ------------ + +h5pAttrib: h5pAttrib.o + $(TOOLS_CXX) -o h5pAttrib h5pAttrib.o $(H5PLIB) $(LIBS) + +h5pAttrib.o: h5pAttrib.cc + $(TOOLS_CXX) $(CFLAGS) $(INC) -g -c h5pAttrib.cc + + +h5pToGNUplot: h5pToGNUplot.o + $(TOOLS_CXX) -o h5pToGNUplot h5pToGNUplot.o $(H5PLIB) $(LIBS) + +h5pToGNUplot.o: h5pToGNUplot.cc + $(TOOLS_CXX) $(CFLAGS) $(INC) -g -c h5pToGNUplot.cc + +clean: + rm -f *~ *.o h5pAttrib h5pToGNUplot + +distclean: clean + rm -rf .deps + rm -rf Makefile + + +# # bash-3.00$ /usr/bin/mpcc_r -g -O2 -I/scratch/scratchdirs/cristina/hdf5/hdf5_par/include -I/u2/antino/trunk/src -c h5pAttrib.cc +# # bash-3.00$ /usr/bin/mpcc_r -o h5pAttrib h5pAttrib.o -L/u2/antino/trunk/src -lpH5Part -L/scratch/scratchdirs/cristina/hdf5/hdf5_par/lib -lhdf5 -lz -lm + + +##################################################################################################################### diff --git a/tools/README b/tools/README new file mode 100644 index 0000000..03d4d7a --- /dev/null +++ b/tools/README @@ -0,0 +1,356 @@ +TABLE OF CONTENTS +-------------------- + +[1] Quick Guide + +--- For h5pAttrib +[2] To see number of timesteps in a h5part file +[3] To see file attributes in a h5part file +[4] To see step attributes in a h5part file +[5] To see dataset in a h5part file +[6] Providing more than one flag at once for h5pAttrib + +--- For h5pToGNUplot +[7] What parameters to provide +[8] How to create an input file to GNUplot + + +************************************************************************************************ + + +[1] Quick Guide +------------------ + +--> -h option will display a concise help page. + +$>> ./h5pAttrib -h + +usage: h5pAttrib [OPTIONS] file + + OPTIONS + -h, --help Print help page + -n, --nstep Print number of steps + -A, --fileA Print file attributes + -a, --stepA Print step attributes & values for time step n + -d, --dataset Print data sets names & values for time step n + -H, --header Print shorter version without the values + + Examples: + + 1) Show file attribute names & values of sample.h5part + + h5pAttrib -A sample.h5part + + 2) Show step attribute names for time step 5 of sample.h5part + + h5pAttrib -a 5 -H sample.h5part + + + +$>> ./h5pToGNUplot -h + +usage: h5pToGNUplot -t TIMESTEP -1 VARIABLE#1 -2 VARIABLE#2 -i INPUTFILE [OPTIONAL_FLAGS] + + FLAGS + -h, --help Print help page + -1, --1var (REQUIRED) Takes first variable parameter + -2, --2var (REQUIRED) Takes second variable parameter + -i, --input (REQUIRED) Takes input file name + -t, --timestep (REQUIRED) Sets the timestep (Value -1 will result in dumping values of all timesteps.) + -o, --output (OPTIONAL) Takes output file name (without this flag, the program will print to stdout) + -n, --number (OPTIONAL) Sets number of output points + -s, --start (OPTIONAL) Sets the starting particle index + + Examples: + + 1) Create GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54 + + h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt + + 2) Create GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54 + using 1200 points from particle index 76 + + h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt -s 76 -n 1200 + +************************************************************************************************ +--- For h5pAttrib +************************************************************************************************ + +[2] To see number of timesteps in a h5part file +-------------------------------------------------- + +EXAMPLE>> + +$>> ./h5pAttrib -n sample.h5part + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Printing number of timesteps for: sample.h5part ... + +There are total 252 number of timesteps. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +done + + +[3] To see file attributes in a h5part file +---------------------------------------------- + +EXAMPLE>> + +$>> ./h5pAttrib -A sample.h5part + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Printing file attributes for: sample.h5part ... + +The number of file attributes for file sample.h5part is 0 ... +There are no file attributes. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +done + + +NOTE: -H option will omit the list of values of file attributes. + + +[4] To see step attributes in a h5part file +---------------------------------------------- + +EXAMPLE>> + +$>> ./h5pAttrib -a 2 sample.h5part + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Printing step attributes for: sample.h5part ... + +The number of step attributes for timestep #2 is 10 ... + +Attribute #0 = Step +There are 1 elements in the attribute +Attribute Type is H5T_NATIVE_INT64 +Printing 1 element value(s): +COUNT[0]: 2 + +Attribute #1 = Spos +There are 1 elements in the attribute +Attribute Type is H5T_NATIVE_DOUBLE +Printing 1 element value(s): +COUNT[0]: 0.143580 + +Attribute #2 = structLen +There are 1 elements in the attribute +Attribute Type is H5T_NATIVE_DOUBLE +Printing 1 element value(s): +COUNT[0]: 2.393000 + +. +. +. + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +done + + +NOTE: -H option will omit the list of values of step attributes. + + +[5] To see dataset in a h5part file +-------------------------------------- + +EXAMPLE>> + +$>> ./h5pAttrib -d 2 -H sample.h5part + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Printing names of datasets for: sample.h5part ... + +The number of datasets for timestep #2 is 7 ... + +Dataset Name #0 = id +Dataset Type is H5T_NATIVE_INT64 +Number of elements: 67587 + +Dataset Name #1 = px +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 67587 + +Dataset Name #2 = py +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 67587 + +Dataset Name #3 = pz +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 67587 + +Dataset Name #4 = x +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 67587 + +Dataset Name #5 = y +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 67587 + +Dataset Name #6 = z +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 67587 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +done + + +NOTE: -H option will omit the list of values of dataset attributes. + +[6] Providing more than one flag at once +------------------------------------------- + +When more than one flags are provided, one result after another will be displayed. + +EXAMPLE>> + +$>> ./h5pAttrib -H -a 1 -d 1 sample.h5part + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Printing step attributes for: sample.h5part ... + +The number of step attributes for timestep #1 is 10 ... + +Attribute #0 = Step +Attribute #1 = Spos +Attribute #2 = structLen +Attribute #3 = org +Attribute #4 = maxX +Attribute #5 = minX +Attribute #6 = maxP +Attribute #7 = minP +Attribute #8 = centroid +Attribute #9 = nloc +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Printing names of datasets for: sample.h5part ... + +The number of datasets for timestep #1 is 7 ... + +Dataset Name #0 = id +Dataset Type is H5T_NATIVE_INT64 +Number of elements: 60214 + +Dataset Name #1 = px +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 60214 + +Dataset Name #2 = py +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 60214 + +Dataset Name #3 = pz +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 60214 + +Dataset Name #4 = x +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 60214 + +Dataset Name #5 = y +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 60214 + +Dataset Name #6 = z +Dataset Type is H5T_NATIVE_DOUBLE +Number of elements: 60214 + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +done + +************************************************************************************************ +--- For h5pAttrib +************************************************************************************************ + +[7] What parameters to provide +--------------------------------- + +When you execute the program with -h option, it displays what flags are necessary and what flags +are optional. + + -h, --help Print help page + -1, --1var (REQUIRED) Takes first variable parameter + -2, --2var (REQUIRED) Takes second variable parameter + -i, --input (REQUIRED) Takes input file name + -t, --timestep (REQUIRED) Sets the timestep (Value -1 will result in dumping values of all timesteps.) + -o, --output (OPTIONAL) Takes output file name (without this flag, the program will print to stdout) + -n, --number (OPTIONAL) Sets number of output points + -s, --start (OPTIONAL) Sets the starting particle index + + +[8] How to create an input file to GNUplot +--------------------------------------------- + +EXAMPLE>> +Create input file to GNUplot that plots x vs. y. + +$>> ./h5pToGNUplot -1 x -2 y -t 1 -i sample.h5part -o output.txt +$>> cat output.txt +-0.390779 -0.254793 +-0.396527 -0.252781 +-0.375362 -0.285137 +-0.396527 -0.252781 +-0.379917 -0.283147 +-0.390779 -0.254793 +-0.387536 -0.287346 +-0.371787 -0.319797 +-0.379917 -0.283147 +-0.378967 -0.326058 +-0.378976 -0.326078 +-0.387536 -0.287346 +-0.378957 -0.326069 +-0.379917 -0.283147 +-0.388762 -0.265390 +-0.371787 -0.319797 +-0.390779 -0.254793 +-0.376825 -0.266804 +-0.379917 -0.283147 +-0.375362 -0.285137 +... + +Then run GNUplot... + +$>> gnuplot + + G N U P L O T + Version 4.0 patchlevel 0 + last modified Thu Apr 15 14:44:22 CEST 2004 + System: Linux 2.6.11.4-21.11-smp + + Copyright (C) 1986 - 1993, 1998, 2004 + Thomas Williams, Colin Kelley and many others + + This is gnuplot version 4.0. Please refer to the documentation + for command syntax changes. The old syntax will be accepted + throughout the 4.0 series, but all save files use the new syntax. + + Type `help` to access the on-line reference manual. + The gnuplot FAQ is available from + http://www.gnuplot.info/faq/ + + Send comments and requests for help to + + Send bugs, suggestions and mods to + + + +Terminal type set to 'x11' +gnuplot> plot "output.txt" + +This will open a GNUplot window that plots output.txt. + + diff --git a/tools/h5pAttrib.cc b/tools/h5pAttrib.cc new file mode 100644 index 0000000..a0e057c --- /dev/null +++ b/tools/h5pAttrib.cc @@ -0,0 +1,1263 @@ +/* h5pAttrib.cc + Antino Kim + This utility will output information on h5part files accodring to the flags provided from the command line. + The parser was imported from the example of h5dump utility with slight modifications. +*/ + +#include +#include +#include +#include +#include +#include "H5Part.hh" + +#define MAX_LEN 100 + +/* Function headers */ +int get_option(int argc, const char **argv, const char *opts, const struct long_options *l_opts); +static void print_help(); +static void free_handler(struct arg_handler *hand, int len); +static void print_all(H5PartFile* file); +static void print_nstep(H5PartFile* file, char * garbage); +static void print_file_attributes(H5PartFile* file, char * garbage); +static void print_step_attributes(H5PartFile* file, char *attr); +static void print_dataset(H5PartFile* file, char *attr); +static struct arg_handler* function_assign(int argc, const char *argv[]); + +/* Global variables */ +static int display_all = true; +static int print_header = false; +static const char* global_fname = NULL; + +/* `get_option' variables */ +int opt_err = 1; /*get_option prints errors if this is on */ +int opt_ind = 1; /*token pointer */ +const char *opt_arg = NULL; /*flag argument (or value) */ + +/* indication whether the flag (option) requires an argument or not */ +enum { + no_arg = 0, /* doesn't take an argument */ + require_arg, /* requires an argument */ +}; + +/* struct for flags (options) */ +typedef struct long_options +{ + const char *name; /* name of the long option */ + int has_arg; /* whether we should look for an arg */ + char shortval; /* the shortname equivalent of long arg + * this gets returned from get_option */ +} long_options; + +/* List of options in single characters */ +static const char *s_opts = "hnAHa:d:"; + +/* List of options in full words */ +static struct long_options l_opts[] = +{ + { "help", no_arg, 'h' }, // Print help page + { "nstep", no_arg, 'n' }, // Print number of steps + { "fileA", no_arg, 'A' }, // Print file attributes + { "stepA", require_arg, 'a' }, // Print step attributes & values for time step n + { "dataset", require_arg, 'd' }, // Print data sets names & values for time step n + { "header", require_arg, 'H' }, // Print shorter version without the values + { NULL, 0, '\0' } +}; + +/* a structure for handling the order command-line parameters come in */ +struct arg_handler { + void (*func)(H5PartFile *, char *); + char *obj; +}; + + +/************************************************************************************ +*********************************** FUNCTIONS ************************************* +*************************************************************************************/ + + +/* get_option is the parsing function that was majorly ported from h5dump utility */ +int get_option(int argc, const char **argv, const char *opts, const struct long_options *l_opts) +{ + static int sp = 1; /* character index in current token */ + int opt_opt = '?'; /* option character passed back to user */ + + if (sp == 1) + { + /* check for more flag-like tokens */ + if (opt_ind >= argc || argv[opt_ind][0] != '-' || argv[opt_ind][1] == '\0') + { + return EOF; + } + else if (strcmp(argv[opt_ind], "--") == 0) + { + opt_ind++; + return EOF; + } + } + + if (sp == 1 && argv[opt_ind][0] == '-' && argv[opt_ind][1] == '-') + { + /* long command line option */ + const char *arg = &argv[opt_ind][2]; + int i; + + for (i = 0; l_opts && l_opts[i].name; i++) + { + size_t len = strlen(l_opts[i].name); + + if (strncmp(arg, l_opts[i].name, len) == 0) + { + /* we've found a matching long command line flag */ + opt_opt = l_opts[i].shortval; + + if (l_opts[i].has_arg != no_arg) + { + if (arg[len] == '=') + { + opt_arg = &arg[len + 1]; + } + else if (opt_ind < (argc - 1) && argv[opt_ind + 1][0] != '-') + { + opt_arg = argv[++opt_ind]; + } + else if (l_opts[i].has_arg == require_arg) + { + if (opt_err) + fprintf(stderr, "%s: option required for \"--%s\" flag\n", argv[0], arg); + + opt_opt = '?'; + } + } + else + { + if (arg[len] == '=') + { + if (opt_err) + fprintf(stderr, "%s: no option required for \"%s\" flag\n", argv[0], arg); + + opt_opt = '?'; + } + + opt_arg = NULL; + } + + break; + } + } + + if (l_opts[i].name == NULL) + { + /* exhausted all of the l_opts we have and still didn't match */ + if (opt_err) + fprintf(stderr, "%s: unknown option \"%s\"\n", argv[0], arg); + + opt_opt = '?'; + } + + opt_ind++; + sp = 1; + } + else + { + register char *cp; /* pointer into current token */ + + /* short command line option */ + opt_opt = argv[opt_ind][sp]; + + if (opt_opt == ':' || (cp = strchr(opts, opt_opt)) == 0) + { + + if (opt_err) + fprintf(stderr, "%s: unknown option \"%c\"\n", argv[0], opt_opt); + /* if no chars left in this token, move to next token */ + if (argv[opt_ind][++sp] == '\0') + { + opt_ind++; + sp = 1; + } + + return '?'; + } + + if (*++cp == ':') + { + + /* if a value is expected, get it */ + if (argv[opt_ind][sp + 1] != '\0') + { + /* flag value is rest of current token */ + opt_arg = &argv[opt_ind++][sp + 1]; + } + else if (++opt_ind >= argc) + { + if (opt_err) + { + fprintf(stderr, "%s: value expected for option \"%c\"\n", argv[0], opt_opt); + } + opt_opt = '?'; + } + else + { + /* flag value is next token */ + opt_arg = argv[opt_ind++]; + } + + sp = 1; + } + else + { + /* set up to look at next char in token, next time */ + if (argv[opt_ind][++sp] == '\0') + { + /* no more in current token, so setup next token */ + opt_ind++; + sp = 1; + } + + opt_arg = NULL; + } + } + + /* return the current flag character found */ + return opt_opt; +} + +/* Assigns functions according to the parsed result */ +static struct arg_handler* function_assign(int argc, const char *argv[]) +{ + struct arg_handler *hand = NULL; + + int i, option; + + /* this will be plenty big enough to hold the info */ + hand = (arg_handler*)calloc((size_t)argc, sizeof(struct arg_handler)); + + /* set options according to the command line */ + while ((option = get_option(argc, argv, s_opts, l_opts)) != EOF) + { + switch ((char)option) + { + case 'h': // Print help page + print_help(); + exit(1); + case 'A': // Print file attributes + display_all = 0; + + for (i = 0; i < argc; i++) + { + if (!hand[i].func) + { + hand[i].func = print_file_attributes; + hand[i].obj = NULL; // inserting garabage value that we won't use. (For function interface compatibility) + break; + } + } + break; + case 'a': // Print step attributes & values for time step n + display_all = 0; + + for (i = 0; i < argc; i++) + { + if (!hand[i].func) + { + hand[i].func = print_step_attributes; + hand[i].obj = strdup(opt_arg); + break; + } + } + break; + case 'd': // Print data sets names & values for time step n + display_all = 0; + + for (i = 0; i < argc; i++) + { + if (!hand[i].func) + { + hand[i].func = print_dataset; + hand[i].obj = strdup(opt_arg); + break; + } + } + break; + case 'n': // Print number of steps + display_all = 0; + + for (i = 0; i < argc; i++) + { + if (!hand[i].func) + { + hand[i].func = print_nstep; + hand[i].obj = NULL; // inserting garabage value that we won't use. (For function interface compatibility) + break; + } + } + break; + case 'H': // Print shorter version without the values + print_header = true; + break; + default: + print_help(); + exit(1); + } + } + return hand; +} + +/* For printing help page */ +static void print_help() +{ + fflush(stdout); + fprintf(stdout, "\nusage: h5pAttrib [OPTIONS] file\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " OPTIONS\n"); + fprintf(stdout, " -h, --help Print help page\n"); + fprintf(stdout, " -n, --nstep Print number of steps\n"); + fprintf(stdout, " -A, --fileA Print file attributes\n"); + fprintf(stdout, " -a n, --stepA n Print step attributes & values for time step n\n"); + fprintf(stdout, " -d n, --dataset n Print data sets names & values for time step n\n"); + fprintf(stdout, " -H, --header Print shorter version without the values\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " Examples:\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " 1) Show file attribute names & values of sample.h5part\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " h5pAttrib -A sample.h5part\n"); + fprintf(stdout, "\t\t\tOR\n"); + fprintf(stdout, " h5pAttrib --fileA sample.h5part\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " 2) Show step attribute names for time step 5 of sample.h5part\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " h5pAttrib -a 5 -H sample.h5part\n"); + fprintf(stdout, "\t\t\tOR\n"); + fprintf(stdout, " h5pAttrib --stepA 5 -H sample.h5part\n"); + fprintf(stdout, "\n"); +} + +/* For priting everything (default option when no flags provided.) */ +static void print_all(H5PartFile* file) +{ + int nt; + + char file_attrib[MAX_LEN]; + size_t maxlen; + hid_t type; + int num_elem; + int num_attrib; + char step_attrib[MAX_LEN]; + int i, j, k; + long count; + void* value = NULL; + int timestep_ctr; + + char data_name[MAX_LEN]; + int num_dataset; + h5part_int64_t nparticles; + + fprintf(stdout, "\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n"); + fprintf(stdout, "\n"); + nt=H5PartGetNumSteps(file); + fprintf(stdout, "There are total %d number of timesteps.\n",nt); + + fprintf(stdout, "\nDump result for \"%s\"...\n\n", global_fname); + fprintf(stdout, "FILE_ATTRIBUTES:\n"); + + + if(print_header) + { + num_attrib = H5PartGetNumFileAttribs(file); + + for(i=0; i +#include +#include +#include +#include +#include "H5Part.hh" + +#define MAX_LEN 100 + +/* Function headers */ +int get_option(int argc, const char **argv, const char *opts, const struct long_options *l_opts); +static void print_help(); +static void variable_assign(int argc, const char *argv[]); + +/* Global variables */ +static char* var_1 = NULL; +static char* var_2 = NULL; +static char* input_name = NULL; +static char* output_name = NULL; +static char* timestep = NULL; +static char* start = NULL; +static char* npoints = NULL; +static int print_all = 0; + +/* `get_option' variables */ +int opt_err = 1; /*get_option prints errors if this is on */ +int opt_ind = 1; /*token pointer */ +const char *opt_arg = NULL; /*flag argument (or value) */ + +/* indication whether the flag (option) requires an argument or not */ +enum { + no_arg = 0, /* doesn't take an argument */ + require_arg, /* requires an argument */ +}; + +/* struct for flags (options) */ +typedef struct long_options +{ + const char *name; /* name of the long option */ + int has_arg; /* whether we should look for an arg */ + char shortval; /* the shortname equivalent of long arg + * this gets returned from get_option */ +} long_options; + +/* List of options in single characters */ +static const char *s_opts = "h1:2:i:o:n:t:s:"; + +/* List of options in full words */ +static struct long_options l_opts[] = +{ + { "help", no_arg, 'h' }, // Print help page + { "1var", require_arg, '1' }, // Takes first variable parameter + { "2var", require_arg, '2' }, // Takes second variable parameter + { "input", require_arg, 'i' }, // Takes input file name + { "output", require_arg, 'o' }, // Takes output file name (without this flag, the program will print to stdout) + { "number", require_arg, 'n' }, // Sets number of output points + { "start", require_arg, 's' }, // Sets the starting particle index + { "timestep", require_arg, 't' }, // Sets the timestep + { NULL, 0, '\0' } +}; + + +/************************************************************************************ +*********************************** FUNCTIONS ************************************* +*************************************************************************************/ + + +/* get_option is the parsing function that was majorly ported from h5dump utility */ +int get_option(int argc, const char **argv, const char *opts, const struct long_options *l_opts) +{ + static int sp = 1; /* character index in current token */ + int opt_opt = '?'; /* option character passed back to user */ + + if (sp == 1) + { + /* check for more flag-like tokens */ + if (opt_ind >= argc || argv[opt_ind][0] != '-' || argv[opt_ind][1] == '\0') + { + return EOF; + } + else if (strcmp(argv[opt_ind], "--") == 0) + { + opt_ind++; + return EOF; + } + } + + if (sp == 1 && argv[opt_ind][0] == '-' && argv[opt_ind][1] == '-') + { + /* long command line option */ + const char *arg = &argv[opt_ind][2]; + int i; + + for (i = 0; l_opts && l_opts[i].name; i++) + { + size_t len = strlen(l_opts[i].name); + + if (strncmp(arg, l_opts[i].name, len) == 0) + { + /* we've found a matching long command line flag */ + opt_opt = l_opts[i].shortval; + + if (l_opts[i].has_arg != no_arg) + { + if (arg[len] == '=') + { + opt_arg = &arg[len + 1]; + } + else if (opt_ind < (argc - 1) && argv[opt_ind + 1][0] != '-') + { + opt_arg = argv[++opt_ind]; + } + else if (l_opts[i].has_arg == require_arg) + { + if (opt_err) + fprintf(stderr, "%s: option required for \"--%s\" flag\n", argv[0], arg); + + opt_opt = '?'; + } + } + else + { + if (arg[len] == '=') + { + if (opt_err) + fprintf(stderr, "%s: no option required for \"%s\" flag\n", argv[0], arg); + + opt_opt = '?'; + } + + opt_arg = NULL; + } + + break; + } + } + + if (l_opts[i].name == NULL) + { + /* exhausted all of the l_opts we have and still didn't match */ + if (opt_err) + fprintf(stderr, "%s: unknown option \"%s\"\n", argv[0], arg); + + opt_opt = '?'; + } + + opt_ind++; + sp = 1; + } + else + { + register char *cp; /* pointer into current token */ + + /* short command line option */ + opt_opt = argv[opt_ind][sp]; + + if (opt_opt == ':' || (cp = strchr(opts, opt_opt)) == 0) + { + + if (opt_err) + fprintf(stderr, "%s: unknown option \"%c\"\n", argv[0], opt_opt); + /* if no chars left in this token, move to next token */ + if (argv[opt_ind][++sp] == '\0') + { + opt_ind++; + sp = 1; + } + + return '?'; + } + + if (*++cp == ':') + { + + /* if a value is expected, get it */ + if (argv[opt_ind][sp + 1] != '\0') + { + /* flag value is rest of current token */ + opt_arg = &argv[opt_ind++][sp + 1]; + } + else if (++opt_ind >= argc) + { + if (opt_err) + { + fprintf(stderr, "%s: value expected for option \"%c\"\n", argv[0], opt_opt); + } + opt_opt = '?'; + } + else + { + /* flag value is next token */ + opt_arg = argv[opt_ind++]; + } + + sp = 1; + } + else + { + /* set up to look at next char in token, next time */ + if (argv[opt_ind][++sp] == '\0') + { + /* no more in current token, so setup next token */ + opt_ind++; + sp = 1; + } + + opt_arg = NULL; + } + } + + /* return the current flag character found */ + return opt_opt; +} + +/* Assigns functions according to the parsed result */ +static void variable_assign(int argc, const char *argv[]) +{ + int option; + + /* set options according to the command line */ + while ((option = get_option(argc, argv, s_opts, l_opts)) != EOF) + { + switch ((char)option) + { + case 'h': // Print help page + print_help(); + exit(1); + case '1': // Print file attributes + var_1 = strdup(opt_arg); + break; + case '2': // Print step attributes & values for time step n + var_2 = strdup(opt_arg); + break; + case 'i': // Print data sets names & values for time step n + input_name = strdup(opt_arg); + break; + case 'o': // Print number of steps + output_name = strdup(opt_arg); + break; + case 'n': // Print shorter version without the values + npoints = strdup(opt_arg); + break; + case 's': // Print shorter version without the values + start = strdup(opt_arg); + break; + case 't': // Print shorter version without the values + timestep = strdup(opt_arg); + if(atoi(timestep)==-1) + { + print_all = 1; + } + break; + default: + print_help(); + exit(1); + } + } +} + +/* For printing help page */ +static void print_help() +{ + fflush(stdout); + fprintf(stdout, "\nusage: h5pToGNUplot -t TIMESTEP -1 VARIABLE#1 -2 VARIABLE#2 -i INPUTFILE [OPTIONAL_FLAGS]\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " FLAGS\n"); + fprintf(stdout, " -h, --help Print help page\n"); + fprintf(stdout, " -1 par, --1var par (REQUIRED) Takes first variable parameter to \"par\"\n"); + fprintf(stdout, " -2 par, --2var par (REQUIRED) Takes second variable parameter to \"par\"\n"); + fprintf(stdout, " -i file, --input file (REQUIRED) Takes input file name to \"file\"\n"); + fprintf(stdout, " -t step, --timestep step (REQUIRED) Sets the timestep to \"step\" (Value -1 will result in dumping values of all timesteps.)\n"); + fprintf(stdout, " -o file, --output file (OPTIONAL) Takes output file name to \"file\" (without this flag, the program will print to stdout)\n"); + fprintf(stdout, " -n num, --number num (OPTIONAL) Sets number of output points to \"num\"\n"); + fprintf(stdout, " -s idx, --start idx (OPTIONAL) Sets the starting particle index to \"idx\"\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " Examples:\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " 1) Create GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " 2) Create GNU plot file output.txt from sample.h5part by ploting x vs px for timestep 54 \n using 1200 points from particle index 76\n"); + fprintf(stdout, "\n"); + fprintf(stdout, " h5pToGNUplot -t 54 -1 x -2 px -i sample.h5part -o output.txt -s 76 -n 1200\n"); + fprintf(stdout, "\n"); +} + +int main(int argc, const char *argv[]) +{ + /* Numerous variables */ + H5PartFile *h5file = NULL; + char data_name[MAX_LEN]; + int i, j, start_indx = 0; + hid_t type; + hid_t type_1; + hid_t type_2; + int num_dataset; + h5part_int64_t nparticles; + int stop = 0; + void* value_1 = NULL; + void* value_2 = NULL; + FILE * outFile; + int ntime_step = 0; + + variable_assign(argc, argv); + + if(input_name == NULL) + { + fprintf(stdout, "missing file name\n"); + print_help(); + exit(1); + } + + if(var_1 == NULL || var_2 == NULL || timestep == NULL) + { + fprintf(stdout, "missing required parameters\n"); + print_help(); + exit(1); + } + + h5file = H5PartOpenFile(input_name, H5PART_READ); + + if(!H5PartFileIsValid(h5file)) + { + fprintf(stdout, "unable to open file %s\n", input_name); + print_help(); + exit(1); + } + + j = atoi(timestep); + ntime_step = j+1; + + if(print_all) + { + j=0; + ntime_step = H5PartGetNumSteps(h5file); + } + + for (; j nparticles) + { + stop = nparticles; + } + + + if(output_name != NULL) + { + outFile = fopen (output_name,"w"); + + for(i=start_indx; i nparticle: + stop = nparticle + +if options.output_file != None: + outFile = open(options.output_file,"w") + + for x in range(start_indx, stop): + if type_1 == 201326626: # H5Part.H5T_NATIVE_INT64: + outFile.write("%ld" % value_1[x]) + elif type_1 == 201326635: # H5Part.H5T_NATIVE_DOUBLE: + outFile.write("%lf" % value_1[x]) + + if type_2 == 201326626: # H5Part.H5T_NATIVE_INT64: + outFile.write("\t%ld" % value_2[x]) + outFile.write("\n") + elif type_2 == 201326635: # H5Part.H5T_NATIVE_DOUBLE: + outFile.write("\t%lf" % value_2[x]) + outFile.write("\n") + + outFile.write("\n") + outFile.close() + +else: + for y in range(start_indx, stop): + if type_1 == 201326626: # H5Part.H5T_NATIVE_INT64: + print "%ld" % value_1[y], + elif type_1 == 201326635: # H5Part.H5T_NATIVE_DOUBLE: + print "%lf" % value_1[y], + + if type_2 == 201326626: # H5Part.H5T_NATIVE_INT64: + print "\t%ld" % value_2[y] + elif type_2 == 201326635: # H5Part.H5T_NATIVE_DOUBLE: + print "\t%lf" % value_2[y] + + print "\n" + + +H5Part.H5PartCloseFile(h5file) + +# if __name__ == "__main__": +# print "I'M RUNNING AS A MAIN PROGRAM!!!" diff --git a/visit_plugins/databases/H5Part/.depend b/visit_plugins/databases/H5Part/.depend new file mode 100644 index 0000000..adaf743 --- /dev/null +++ b/visit_plugins/databases/H5Part/.depend @@ -0,0 +1,626 @@ +h5partPluginInfo.o: h5partPluginInfo.C h5partPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/DatabasePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/database_plugin_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit-config.h +h5partCommonPluginInfo.o: h5partCommonPluginInfo.C h5partPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/DatabasePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/database_plugin_exports.h \ + avth5partFileFormat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMTSDFileFormat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/database_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtFileFormat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/array_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSelection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/pipeline_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ImproperUseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtexception_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/PipelineException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/void_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/utility_exports.h \ + /d/visusers/cristina/H5Part/H5ecloud/H5Part.hh \ + /d/visusers/cristina/H5Part/H5ecloud/H5Part.h \ + /usr/local/hdf5/include/hdf5.h /usr/local/hdf5/include/H5public.h \ + /usr/local/hdf5/include/H5pubconf.h /usr/include/inttypes.h \ + /usr/local/hdf5/include/H5api_adpt.h \ + /usr/local/hdf5/include/H5Apublic.h /usr/local/hdf5/include/H5Ipublic.h \ + /usr/local/hdf5/include/H5ACpublic.h \ + /usr/local/hdf5/include/H5Bpublic.h /usr/local/hdf5/include/H5Dpublic.h \ + /usr/local/hdf5/include/H5Epublic.h /usr/local/hdf5/include/H5Fpublic.h \ + /usr/local/hdf5/include/H5FDpublic.h \ + /usr/local/hdf5/include/H5Gpublic.h /usr/local/hdf5/include/H5Opublic.h \ + /usr/local/hdf5/include/H5HGpublic.h \ + /usr/local/hdf5/include/H5HLpublic.h \ + /usr/local/hdf5/include/H5MMpublic.h \ + /usr/local/hdf5/include/H5Ppublic.h /usr/local/hdf5/include/H5Zpublic.h \ + /usr/local/hdf5/include/H5Rpublic.h /usr/local/hdf5/include/H5Spublic.h \ + /usr/local/hdf5/include/H5Tpublic.h /usr/local/hdf5/include/H5FDcore.h \ + /usr/local/hdf5/include/H5FDfamily.h /usr/local/hdf5/include/H5FDgass.h \ + /usr/local/hdf5/include/H5FDlog.h /usr/local/hdf5/include/H5FDmpi.h \ + /usr/local/hdf5/include/H5FDmpio.h \ + /usr/local/hdf5/include/H5FDmpiposix.h \ + /usr/local/hdf5/include/H5FDmulti.h /usr/local/hdf5/include/H5FDsec2.h \ + /usr/local/hdf5/include/H5FDsrb.h /usr/local/hdf5/include/H5FDstdio.h \ + /usr/local/hdf5/include/H5FDstream.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMTSDFileFormatInterface.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtFileFormatInterface.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtGenericDatabase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetDatabase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatabase.h \ + /usr/include/c++/4.0.2/list /usr/include/c++/4.0.2/bits/stl_list.h \ + /usr/include/c++/4.0.2/bits/list.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSpecification.h \ + /usr/include/c++/4.0.2/map /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtGhostData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtCommonDataFunctions.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataRepresentation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectInformation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisWindowTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtVector.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/math_exports.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/viswindow_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataValidity.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPipelineSpecification.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataTree.h \ + /usr/include/c++/4.0.2/set /usr/include/c++/4.0.2/bits/stl_set.h \ + /usr/include/c++/4.0.2/bits/stl_multiset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtIOInformation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMaterial.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSpecies.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtVariableCache.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/MIR.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/mir_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/MIROptions.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkSystemIncludes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkWin32Header.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/vtkConfigure.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIOStream.h \ + /usr/include/c++/4.0.2/iomanip /usr/include/c++/4.0.2/functional \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIdType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkOStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkOStrStreamWrapper.h \ + /usr/include/c++/4.0.2/deque /usr/include/c++/4.0.2/bits/stl_deque.h \ + /usr/include/c++/4.0.2/bits/deque.tcc +h5partMDServerPluginInfo.o: h5partMDServerPluginInfo.C h5partPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/DatabasePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/database_plugin_exports.h +avth5partFileFormat.o: avth5partFileFormat.C avth5partFileFormat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMTSDFileFormat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/database_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtFileFormat.h \ + /usr/include/stdlib.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h /usr/include/xlocale.h \ + /usr/include/sys/types.h /usr/include/bits/types.h \ + /usr/include/bits/wordsize.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/cstdlib \ + /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/array_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSelection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/pipeline_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ImproperUseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtexception_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/PipelineException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/void_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/utility_exports.h \ + /d/visusers/cristina/H5Part/H5ecloud/H5Part.hh \ + /d/visusers/cristina/H5Part/H5ecloud/H5Part.h \ + /usr/local/hdf5/include/hdf5.h /usr/local/hdf5/include/H5public.h \ + /usr/local/hdf5/include/H5pubconf.h /usr/include/inttypes.h \ + /usr/local/hdf5/include/H5api_adpt.h \ + /usr/local/hdf5/include/H5Apublic.h /usr/local/hdf5/include/H5Ipublic.h \ + /usr/local/hdf5/include/H5ACpublic.h \ + /usr/local/hdf5/include/H5Bpublic.h /usr/local/hdf5/include/H5Dpublic.h \ + /usr/local/hdf5/include/H5Epublic.h /usr/local/hdf5/include/H5Fpublic.h \ + /usr/local/hdf5/include/H5FDpublic.h \ + /usr/local/hdf5/include/H5Gpublic.h /usr/local/hdf5/include/H5Opublic.h \ + /usr/local/hdf5/include/H5HGpublic.h \ + /usr/local/hdf5/include/H5HLpublic.h \ + /usr/local/hdf5/include/H5MMpublic.h \ + /usr/local/hdf5/include/H5Ppublic.h /usr/local/hdf5/include/H5Zpublic.h \ + /usr/local/hdf5/include/H5Rpublic.h /usr/local/hdf5/include/H5Spublic.h \ + /usr/local/hdf5/include/H5Tpublic.h /usr/local/hdf5/include/H5FDcore.h \ + /usr/local/hdf5/include/H5FDfamily.h /usr/local/hdf5/include/H5FDgass.h \ + /usr/local/hdf5/include/H5FDlog.h /usr/local/hdf5/include/H5FDmpi.h \ + /usr/local/hdf5/include/H5FDmpio.h \ + /usr/local/hdf5/include/H5FDmpiposix.h \ + /usr/local/hdf5/include/H5FDmulti.h /usr/local/hdf5/include/H5FDsec2.h \ + /usr/local/hdf5/include/H5FDsrb.h /usr/local/hdf5/include/H5FDstdio.h \ + /usr/local/hdf5/include/H5FDstream.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkFloatArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkObjectBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIndent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkSystemIncludes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkWin32Header.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/vtkConfigure.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIOStream.h \ + /usr/include/c++/4.0.2/iomanip /usr/include/c++/4.0.2/functional \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIdType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkOStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkOStrStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkSetGet.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkTimeStamp.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkRectilinearGrid.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkStructuredData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkStructuredGrid.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPointSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPoints.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkUnsignedCharArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkUnstructuredGrid.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatabaseMetaData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ExpressionList.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Expression.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/InvalidVariableException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/DatabaseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/InvalidFilesException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/BadIndexException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkCellType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPolyData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkCellTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIntArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkCellType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkCellLinks.h +h5partEnginePluginInfo.o: h5partEnginePluginInfo.C h5partPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/DatabasePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/database_plugin_exports.h diff --git a/visit_plugins/databases/H5Part/Makefile b/visit_plugins/databases/H5Part/Makefile new file mode 100644 index 0000000..b997d2a --- /dev/null +++ b/visit_plugins/databases/H5Part/Makefile @@ -0,0 +1,104 @@ +## +## Programs and options... +## +TOPDIR=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/ +include $(TOPDIR)/include/make-variables +TOPDIR=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/ +HOMEPLUGINS=/d/visusers/cristina/.visit/linux-x86_64/plugins + +## +## Libraries and includes... +## +VTK_INCLUDE= \ + -I$(TOPDIR)/include/vtk \ + -I$(TOPDIR)/include/vtk/Common \ + -I$(TOPDIR)/include/vtk/Filtering \ + -I$(TOPDIR)/include/vtk/Graphics \ + -I$(TOPDIR)/include/vtk/Hybrid \ + -I$(TOPDIR)/include/vtk/IO \ + -I$(TOPDIR)/include/vtk/Imaging \ + -I$(TOPDIR)/include/vtk/Rendering +MOC=$(TOPDIR)/bin/moc +CXXFLAGS=$(CXXFLAGSORIG) -I/usr/local/hdf5/include -I/d/visusers/cristina/H5Part/H5ecloud +CPPFLAGS=$(CPPFLAGSORIG) $(VTK_INCLUDE) -I. -I/usr/local/hdf5/include -I/d/visusers/cristina/H5Part/H5ecloud -I$(TOPDIR)/include -I$(TOPDIR)/include/visit +LDFLAGS=$(LDFLAGSORIG) -L$(HOMEPLUGINS)/databases + +## +## Files... +## +PLUGINDIR=databases +PLUGINNAME=h5partDatabase + +WIDGETS= +ISRC=h5partPluginInfo.C +COMMONSRC=h5partPluginInfo.C h5partCommonPluginInfo.C +MSRC=h5partMDServerPluginInfo.C avth5partFileFormat.C +ESRC=h5partEnginePluginInfo.C avth5partFileFormat.C + + +SRC=$(ISRC) $(COMMONSRC) $(MSRC) $(ESRC) + +SHLIB_FORCED=-L/d/visusers/cristina/H5Part/H5ecloud/ -lH5Part + +ELIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +MLIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +ILIBS= +MLIBS=-lpipeline_ser -ldatabase_ser -lmir_ser -lavtmath_ser -ldbatts -lavtexceptions -lstate -lcomm -lmisc -lexpr -lparser -lplugin -lutility -lvisit_vtk -llightweight_visit_vtk -L$(HOMEPLUGINS)/databases -lI$(PLUGINNAME) $(MLIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) +ESERLIBS=-lpipeline_ser -ldatabase_ser -lmir_ser -lavtmath_ser -ldbatts -lavtexceptions -lstate -lcomm -lmisc -lexpr -lparser -lplugin -lutility -lvisit_vtk -llightweight_visit_vtk -L$(HOMEPLUGINS)/databases -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) +EPARLIBS=-lpipeline_par -ldatabase_par -lmir_par -lavtmath_par -ldbatts -lavtexceptions -lstate -lcomm -lmisc -lexpr -lparser -lplugin -lutility -lvisit_vtk -llightweight_visit_vtk -L$(HOMEPLUGINS)/databases -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) $(SHLIB_MPI_LIBS) + +IDSO=$(HOMEPLUGINS)/databases/libIh5partDatabase.so +MDSO=$(HOMEPLUGINS)/databases/libMh5partDatabase.so +ESERDSO=$(HOMEPLUGINS)/databases/libEh5partDatabase_ser.so +EPARDSO=$(HOMEPLUGINS)/databases/libEh5partDatabase_par.so + + +DISTRIB= + +## +## Derived objects +## +IOBJ=$(ISRC:.C=.o) +GOBJ=$(COMMONSRC:.C=.o) $(GSRC:.C=.o) +SOBJ=$(COMMONSRC:.C=.o) $(SSRC:.C=.o) +VOBJ=$(COMMONSRC:.C=.o) $(VSRC:.C=.o) +MOBJ=$(COMMONSRC:.C=.o) $(MSRC:.C=.o) $(MSPECIFICSRC:.C=_mds.o) +ESEROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=.o) +EPAROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=_par.o) + +MOCSRC = $(WIDGETS:.h=_moc.C) +MOCOBJ = $(MOCSRC:.C=.o) + +## +## Standard targets... +## +all: message $(IDSO) $(MDSERVERLIB) $(ENGINELIBSER) $(ENGINELIBPAR) + +clean: + $(RM) $(IOBJ) $(COMMONOBJ) + $(RM) $(GOBJ) $(SOBJ) $(VOBJ) $(MOBJ) $(ESEROBJ) $(EPAROBJ) + $(RM) $(MOCSRC) $(MOCOBJ) + $(RM) $(IDSO) $(GDSO) $(SDSO) $(VDSO) $(MDSO) $(ESERDSO) $(EPARDSO) + $(RM) $(JAVAOBJ) + +## +## Other targets... +## +message: + @echo + @echo "****************************************************************************" + @echo "*** Building h5part Database Plugin" + @echo "****************************************************************************" + +## +## moc +## +$(MOCSRC) or_no_widgets: $(WIDGETS) + @rm -f $@ + $(MOC) $(@:_moc.C=.h) > $@ + + +## +## Automatic dependency stuff +## +include $(TOPDIR)/include/make-targets diff --git a/visit_plugins/databases/H5Part/README.txt b/visit_plugins/databases/H5Part/README.txt new file mode 100644 index 0000000..5e48118 --- /dev/null +++ b/visit_plugins/databases/H5Part/README.txt @@ -0,0 +1,21 @@ +Reading H5Part data into VisIt: + +VisIt, http://www.llnl.gov/visit, is an open source point-and-click 3D scientific visualization application that supports most of the common visualization techniques on structured and unstructured grids. One of its advantages is that it employs a distributed and parallel architecture in order to handle extremely large data sets interactively. VisIt's rendering and data processing capabilities are split into viewer and engine components that may be distributed across multiple machines. + +This database plugins allows the user to read H5Part data into VisIt. To be recognized by VisIt the filename needs to have the extension ".h5part". This is important, otherwise VisIt will try to open the file with another reader and it will fail. + +Building the plugin: +You must first install VisIt in your machine to be able to link to its libraries. + +Modify the Makefile to reflect your installation. + +TOPDIR is the path to the VisIt Distribution installation. +HOMEPLUGINS is the path to your home dir .visit plugin directory. Create it if not there. +SHLIB_FORCED is the path to your H5Part. I made H5Part statically linked to the hdf5 library, if you don't, add your -L/hdf5librarypath -lhdf5 +Modify the location of the hdf5 include and the H5Part library. + + +If compiling a parallel version add -DPARALLEL_IO to the CXXFLAGS and CPPFLAGS. + + +Note: TOPDIR is defined twice because in make-variables it is defined by the VisIt developers to be in one of their machines. diff --git a/visit_plugins/databases/H5Part/avth5partFileFormat.C b/visit_plugins/databases/H5Part/avth5partFileFormat.C new file mode 100644 index 0000000..534b982 --- /dev/null +++ b/visit_plugins/databases/H5Part/avth5partFileFormat.C @@ -0,0 +1,597 @@ +// ************************************************************************* // +// avth5partFileFormat.C // +// ************************************************************************* // + +#include + +#include +#include + +#include +#include +#include +#include + +#include + +#include + +#include +#include +#include +#include +#include + + +//h5part specific +#include +#include +#include + +#include +#include +#include + + + +#ifdef PARALLEL_IO +#include +#include +#endif + +using namespace std; + +// **************************************************************************** +// Method: avth5part constructor +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +avth5partFileFormat::avth5partFileFormat(const char *filename) + : avtMTMDFileFormat(filename) +{ + // INITIALIZE DATA MEMBERS + + + H5PartFile *file; + fname = filename; + + file = H5PartOpenFile(filename,H5PART_READ); + + if (!file) + EXCEPTION1(InvalidFilesException, filename); + + + int i, j; + int npoints, npointvars; + int nspace = 3; + + H5PartSetStep(file,0); + //points + npoints= (int) H5PartGetNumParticles(file); + if (npoints == 0) + EXCEPTION1(VisItException, "npoints is zero"); + points.resize(npoints*nspace); + cout << "constructor: npoints: " << npoints << "\n"; + + //point vars + npointvars= (int) H5PartGetNumDatasets(file); /* get number of datasets in timestep 0 */ + pointvars.resize(npointvars); + pointvarnames.resize(npointvars); + cout << "constructor: nvariables: " << npointvars << "\n"; + + char name[128]; + h5part_int64_t status; + for (j=0; j < npointvars; j++){ + status = H5PartGetDatasetName(file,j, name,128); + if (status != H5PART_SUCCESS){ + EXCEPTION1(VisItException, "could not read a variable name"); + } + pointvarnames[j] = name; + } + + H5PartCloseFile(file); +} + + +// **************************************************************************** +// Method: avtEMSTDFileFormat::GetNTimesteps +// +// Purpose: +// Tells the rest of the code how many timesteps there are in this file. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +int +avth5partFileFormat::GetNTimesteps(void) +{ + h5part_int64_t nt; + H5PartFile *file; + file = H5PartOpenFile(fname.c_str(),H5PART_READ); + H5PartSetStep(file,0); + nt=H5PartGetNumSteps(file); /* get number of steps in file */ + H5PartCloseFile(file); + return (int) nt; +} + + +// **************************************************************************** +// Method: avth5partFileFormat::FreeUpResources +// +// Purpose: +// When VisIt is done focusing on a particular timestep, it asks that +// timestep to free up any resources (memory, file descriptors) that +// it has associated with it. This method is the mechanism for doing +// that. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +void +avth5partFileFormat::FreeUpResources(void) +{ +} + + +// **************************************************************************** +// Method: avth5partFileFormat::PopulateDatabaseMetaData +// +// Purpose: +// This database meta-data object is like a table of contents for the +// file. By populating it, you are telling the rest of VisIt what +// information it can request from you. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +void +avth5partFileFormat::PopulateDatabaseMetaData(avtDatabaseMetaData *md, int timeState) +{ + // + // CODE TO ADD A MESH + // + // string meshname = ... + // + // AVT_RECTILINEAR_MESH, AVT_CURVILINEAR_MESH, AVT_UNSTRUCTURED_MESH, + // AVT_POINT_MESH, AVT_SURFACE_MESH, AVT_UNKNOWN_MESH + // avtMeshType mt = AVT_RECTILINEAR_MESH; + // + // int nblocks = YOU_MUST_DECIDE; + // int block_origin = 0; + // int spatial_dimension = 2; + // int topological_dimension = 2; + // float *extents = NULL; + // + // Here's the call that tells the meta-data object that we have a mesh: + // + // AddMeshToMetaData(md, meshname, mt, extents, nblocks, block_origin, + // spatial_dimension, topological_dimension); + // + + // + // CODE TO ADD A SCALAR VARIABLE + // + // string mesh_for_this_var = meshname; // ??? -- could be multiple meshes + // string varname = ... + // + // AVT_NODECENT, AVT_ZONECENT, AVT_UNKNOWN_CENT + // avtCentering cent = AVT_NODECENT; + // + // + // Here's the call that tells the meta-data object that we have a var: + // + // AddScalarVarToMetaData(md, varname, mesh_for_this_var, cent); + // + + // + // CODE TO ADD A VECTOR VARIABLE + // + // string mesh_for_this_var = meshname; // ??? -- could be multiple meshes + // string varname = ... + // int vector_dim = 2; + // + // AVT_NODECENT, AVT_ZONECENT, AVT_UNKNOWN_CENT + // avtCentering cent = AVT_NODECENT; + // + // + // Here's the call that tells the meta-data object that we have a var: + // + // AddVectorVarToMetaData(md, varname, mesh_for_this_var, cent,vector_dim); + // + + // + // CODE TO ADD A TENSOR VARIABLE + // + // string mesh_for_this_var = meshname; // ??? -- could be multiple meshes + // string varname = ... + // int tensor_dim = 9; + // + // AVT_NODECENT, AVT_ZONECENT, AVT_UNKNOWN_CENT + // avtCentering cent = AVT_NODECENT; + // + // + // Here's the call that tells the meta-data object that we have a var: + // + // AddTensorVarToMetaData(md, varname, mesh_for_this_var, cent,tensor_dim); + // + + // + // CODE TO ADD A MATERIAL + // + // string mesh_for_mat = meshname; // ??? -- could be multiple meshes + // string matname = ... + // int nmats = ...; + // vector mnames; + // for (int i = 0 ; i < nmats ; i++) + // { + // char str[32]; + // sprintf(str, "mat%d", i); + // -- or -- + // strcpy(str, "Aluminum"); + // mnames.push_back(str); + // } + // + // Here's the call that tells the meta-data object that we have a mat: + // + // AddMaterialToMetaData(md, matname, mesh_for_mat, nmats, mnames); + // + // + // Here's the way to add expressions: + //Expression momentum_expr; + //momentum_expr.SetName("momentum"); + //momentum_expr.SetDefinition("{u, v}"); + //momentum_expr.SetType(Expression::VectorMeshVar); + //md->AddExpression(&momentum_expr); + //Expression KineticEnergy_expr; + //KineticEnergy_expr.SetName("KineticEnergy"); + //KineticEnergy_expr.SetDefinition("0.5*(momentum*momentum)/(rho*rho)"); + //KineticEnergy_expr.SetType(Expression::ScalarMeshVar); + //md->AddExpression(&KineticEnergy_expr); + // + int size; + size = 1; +#ifdef PARALLEL_IO + size = PAR_Size(); +#endif + + + if (!points.size()) { + EXCEPTION1(InvalidFilesException, "Number of points is zero"); + } + + cout << "Populate: size, : " << size << "\n"; + + avtMeshMetaData *pmesh = new avtMeshMetaData; + + int dimension = 3; + pmesh->name = "particles"; + pmesh->originalName = "particles"; + pmesh->meshType = AVT_POINT_MESH; + pmesh->topologicalDimension = 0; + pmesh->spatialDimension = dimension; + pmesh->numBlocks = size; + pmesh->blockTitle = "subset"; + pmesh->blockPieceName = "subset"; + pmesh->hasSpatialExtents = false; + + md->Add(pmesh); + + int i; + for (i=0; i < pointvarnames.size(); i++){ + AddScalarVarToMetaData(md, pointvarnames[i], "particles", AVT_NODECENT); + } + +} + + +// **************************************************************************** +// Method: avth5partFileFormat::GetMesh +// +// Purpose: +// Gets the mesh associated with this file. The mesh is returned as a +// derived type of vtkDataSet (ie vtkRectilinearGrid, vtkStructuredGrid, +// vtkUnstructuredGrid, etc). +// +// Arguments: +// timestate The index of the timestate. If GetNTimesteps returned +// 'N' time steps, this is guaranteed to be between 0 and N-1. +// domain The index of the domain. If there are NDomains, this +// value is guaranteed to be between 0 and NDomains-1, +// regardless of block origin. +// meshname The name of the mesh of interest. This can be ignored if +// there is only one mesh. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +vtkDataSet * +avth5partFileFormat::GetMesh(int timestate, int domain, const char *meshname) +{ + cout << "GetMesh domain: " << domain << "\n"; + + H5PartFile *file; + file = H5PartOpenFile(fname.c_str(),H5PART_READ); + + if (!file) + EXCEPTION1(InvalidFilesException, fname.c_str()); + + long int tnpoints, npoints; + int npointvars; + int nspace = 3; + int nprocs = 1; +#ifdef PARALLEL_IO + nprocs = PAR_Size(); +#endif + H5PartSetStep(file,timestate); + + //points + tnpoints= (int) H5PartGetNumParticles(file); + h5part_int64_t idStart = (( h5part_int64_t)(tnpoints/nprocs))*domain; + h5part_int64_t idEnd; + if (domain < nprocs-1) + idEnd = ((h5part_int64_t)(tnpoints/nprocs))*(domain+1); + else if (domain == nprocs - 1) + idEnd = tnpoints; + + + H5PartSetView(file,idStart,idEnd); + + //points + npoints= (long int) H5PartGetNumParticles(file); + cout << "GetMesh: npoints for domain " << domain << ": " << npoints << "\n"; + + if (strcmp(meshname, "particles") != 0){ + EXCEPTION1(InvalidVariableException, meshname); + } + if (npoints == 0) + EXCEPTION1(VisItException, "npoints is zero"); + + points.resize(npoints*nspace); + h5part_float64_t *x, *y, *z; + x = (h5part_float64_t *) malloc(sizeof(h5part_float64_t)*npoints); + y = (h5part_float64_t *) malloc(sizeof(h5part_float64_t)*npoints); + z = (h5part_float64_t *) malloc(sizeof(h5part_float64_t)*npoints); + + + h5part_int64_t status = H5PART_SUCCESS; + status = H5PartReadDataFloat64(file, "x", x); + if (status != H5PART_SUCCESS) + EXCEPTION1(VisItException, "Could not read x coordinates"); + status = H5PartReadDataFloat64(file, "y", y); + if (status != H5PART_SUCCESS) + EXCEPTION1(VisItException, "Could not read y coordinates"); + status = H5PartReadDataFloat64(file, "z", z); + if (status != H5PART_SUCCESS) + EXCEPTION1(VisItException, "Could not read z coordinates"); + for (long int i = 0; i < npoints; i++){ + points[nspace*i] = (float) x[i]; + points[nspace*i+1] = (float) y[i]; + points[nspace*i+2] = (float) z[i]; + } + free(x); + free(y); + free(z); + + H5PartSetView(file,-1, -1); + + vtkPolyData *dataset = vtkPolyData::New(); + vtkPoints *vtkpoints = vtkPoints::New(); + vtkpoints->SetNumberOfPoints((vtkIdType) npoints); + + float *pts = (float *) vtkpoints->GetVoidPointer(0); + + for (long int i=0; i < npoints*nspace; i++){ + pts[i] = points[i]; + } + + dataset->Allocate(npoints*nspace); + for (long int i=0; i < npoints; i++){ + vtkIdType onevertex = (vtkIdType) i; + dataset->InsertNextCell(VTK_VERTEX, 1, &onevertex); + } + dataset->SetPoints(vtkpoints); + vtkpoints->Delete(); + + + H5PartCloseFile(file); + fprintf(stderr,"proc[%u]: done\n", domain); + + return dataset; +} + + +// **************************************************************************** +// Method: avth5partFileFormat::GetVar +// +// Purpose: +// Gets a scalar variable associated with this file. Although VTK has +// support for many different types, the best bet is vtkFloatArray, since +// that is supported everywhere through VisIt. +// +// Arguments: +// timestate The index of the timestate. If GetNTimesteps returned +// 'N' time steps, this is guaranteed to be between 0 and N-1. +// domain The index of the domain. If there are NDomains, this +// value is guaranteed to be between 0 and NDomains-1, +// regardless of block origin. +// varname The name of the variable requested. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +vtkDataArray * +avth5partFileFormat::GetVar(int timestate, int domain, const char *varname) +{ + // + // If you have a file format where variables don't apply (for example a + // strictly polygonal format like the STL (Stereo Lithography) format, + // then uncomment the code below. + // + // EXCEPTION1(InvalidVariableException, varname); + // + + // + // If you do have a scalar variable, here is some code that may be helpful. + // + // int ntuples = XXX; // this is the number of entries in the variable. + // vtkFloatArray *rv = vtkFloatArray::New(); + // rv->SetNumberOfTuples(ntuples); + // for (int i = 0 ; i < ntuples ; i++) + // { + // rv->SetTuple1(i, VAL); // you must determine value for ith entry. + // } + // + // return rv; + // + + H5PartFile *file; + + file = H5PartOpenFile(fname.c_str(),H5PART_READ); + + if (!file) + EXCEPTION1(InvalidFilesException, fname.c_str()); + + h5part_int64_t status; + h5part_int64_t tnpoints, npoints; + int npointvars; + int nspace = 3; + int nprocs = 1; +#ifdef PARALLEL_IO + nprocs = PAR_Size(); +#endif + + H5PartSetStep(file,timestate); + //points + tnpoints= H5PartGetNumParticles(file); + //point vars + + char name[64]; + h5part_int64_t *idvar; + double *data; + h5part_int64_t idStart = ((h5part_int64_t)(tnpoints/nprocs))*domain; + h5part_int64_t idEnd; + if (domain < nprocs-1) + idEnd = ((h5part_int64_t)(tnpoints/nprocs))*(domain+1); + else if (domain == nprocs - 1) + idEnd = (h5part_int64_t)tnpoints; + + H5PartSetView(file,idStart,idEnd); + npoints= H5PartGetNumParticles(file); + cout << "GetVar: npoints for domain " << domain << ": " << npoints << "\n"; + + for (size_t j=0; j < (size_t)(pointvarnames.size()); j++){ + status = H5PartGetDatasetName(file,j, name,64); + if (pointvarnames[j] == name) { + if (strstr(name, "id") != NULL){ + idvar = (h5part_int64_t *) malloc(sizeof(h5part_int64_t)*npoints); + status = H5PartReadDataInt64(file, name, idvar); + if (status != H5PART_SUCCESS) + EXCEPTION1(VisItException, "Could not read dataset"); + pointvars[j].resize(npoints); + for (size_t i=0; i < (size_t) npoints; i++){ + pointvars[j][i] = (float) idvar[i]; + } + if (idvar != NULL) + free(idvar); + } else { + data = (h5part_float64_t *) malloc(sizeof(h5part_float64_t)*npoints); + status = H5PartReadDataFloat64(file, name, data); + if (status != H5PART_SUCCESS) + EXCEPTION1(VisItException, "Could not read dataset"); + pointvars[j].resize(npoints); + for (size_t i=0; i < (size_t)(npoints); i++){ + pointvars[j][i] = (float) data[i]; + } + if (data != NULL) + free(data); + } + } + } + H5PartSetView(file,-1, -1); + + for (int i=0; i < pointvarnames.size(); i++){ + if (pointvarnames[i] == string(varname)){ + vtkFloatArray *scalars = vtkFloatArray::New(); + scalars->SetNumberOfTuples(npoints); + float *ptr = (float*) scalars->GetVoidPointer(0); + memcpy(ptr, &pointvars[i][0], sizeof(float)*npoints); + return scalars; + } + } + H5PartCloseFile(file); + EXCEPTION1(InvalidVariableException, varname); + + +} + + +// **************************************************************************** +// Method: avth5partFileFormat::GetVectorVar +// +// Purpose: +// Gets a vector variable associated with this file. Although VTK has +// support for many different types, the best bet is vtkFloatArray, since +// that is supported everywhere through VisIt. +// +// Arguments: +// timestate The index of the timestate. If GetNTimesteps returned +// 'N' time steps, this is guaranteed to be between 0 and N-1. +// domain The index of the domain. If there are NDomains, this +// value is guaranteed to be between 0 and NDomains-1, +// regardless of block origin. +// varname The name of the variable requested. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:47:07 PST 2006 +// +// **************************************************************************** + +vtkDataArray * +avth5partFileFormat::GetVectorVar(int timestate, int domain,const char *varname) +{ + // + // If you have a file format where variables don't apply (for example a + // strictly polygonal format like the STL (Stereo Lithography) format, + // then uncomment the code below. + // + // EXCEPTION1(InvalidVariableException, varname); + // + + // + // If you do have a vector variable, here is some code that may be helpful. + // + // int ncomps = YYY; // This is the rank of the vector - typically 2 or 3. + // int ntuples = XXX; // this is the number of entries in the variable. + // vtkFloatArray *rv = vtkFloatArray::New(); + // int ucomps = (ncomps == 2 ? 3 : ncomps); + // rv->SetNumberOfComponents(ucomps); + // rv->SetNumberOfTuples(ntuples); + // float *one_entry = new float[ucomps]; + // for (int i = 0 ; i < ntuples ; i++) + // { + // int j; + // for (j = 0 ; j < ncomps ; j++) + // one_entry[j] = ... + // for (j = ncomps ; j < ucomps ; j++) + // one_entry[j] = 0.; + // rv->SetTuple(i, one_entry); + // } + // + // delete [] one_entry; + // return rv; + // + return NULL; +} diff --git a/visit_plugins/databases/H5Part/avth5partFileFormat.h b/visit_plugins/databases/H5Part/avth5partFileFormat.h new file mode 100644 index 0000000..6b4ea48 --- /dev/null +++ b/visit_plugins/databases/H5Part/avth5partFileFormat.h @@ -0,0 +1,75 @@ +// ************************************************************************* // +// avth5partFileFormat.h // +// ************************************************************************* // + +#ifndef AVT_h5part_FILE_FORMAT_H +#define AVT_h5part_FILE_FORMAT_H + +#include +#include + +#include +#include + + + + +// **************************************************************************** +// Class: avth5partFileFormat +// +// Purpose: +// Reads in h5part files as a plugin to VisIt. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Mon Feb 27 13:53:31 PST 2006 +// +// **************************************************************************** + +class avth5partFileFormat : public avtMTMDFileFormat +{ + public: + avth5partFileFormat(const char *); + virtual ~avth5partFileFormat() {;}; + + // + // This is used to return unconvention data -- ranging from material + // information to information about block connectivity. + // + // virtual void *GetAuxiliaryData(const char *var, const char *type, + // int timestep, int domain,void *args, + // DestructorFunction &); + // + + // + // If you know the times and cycle numbers, overload this function. + // Otherwise, VisIt will make up some reasonable ones for you. + // + // virtual void GetCycles(std::vector &); + // virtual void GetTimes(std::vector &); + // + + virtual int GetNTimesteps(void); + + virtual const char *GetType(void) { return "h5part"; }; + virtual void FreeUpResources(void); + + virtual vtkDataSet *GetMesh(int, int, const char *); + virtual vtkDataArray *GetVar(int, int, const char *); + virtual vtkDataArray *GetVectorVar(int, int, const char *); + + protected: + // DATA MEMBERS + + virtual void PopulateDatabaseMetaData(avtDatabaseMetaData *, int); + std::string fname; //filename + std::vector points; //point coordinates + std::vector > pointvars; //point variables + std::vector pointvarnames; //point variables' names + std::vector minExtents; //min extents + std::vector maxExtents; //max extents + + +}; + + +#endif diff --git a/visit_plugins/databases/H5Part/h5part.xml b/visit_plugins/databases/H5Part/h5part.xml new file mode 100644 index 0000000..93b3c67 --- /dev/null +++ b/visit_plugins/databases/H5Part/h5part.xml @@ -0,0 +1,14 @@ + + + + -I/usr/local/hdf5/include + + + -L/d/visusers/cristina/H5Part/H5ecloud/ -lH5Part + + + h5part + + + + diff --git a/visit_plugins/databases/H5Part/h5partCommonPluginInfo.C b/visit_plugins/databases/H5Part/h5partCommonPluginInfo.C new file mode 100644 index 0000000..0de21ac --- /dev/null +++ b/visit_plugins/databases/H5Part/h5partCommonPluginInfo.C @@ -0,0 +1,65 @@ +#include +#include +#include +#include + +// **************************************************************************** +// Method: h5partCommonPluginInfo::GetDatabaseType +// +// Purpose: +// Returns the type of a h5part database. +// +// Programmer: cristina -- generated by xml2info +// Creation: Mon Feb 27 13:53:31 PST 2006 +// +// **************************************************************************** +DatabaseType +h5partCommonPluginInfo::GetDatabaseType() +{ + return DB_TYPE_MTMD; +} + +// **************************************************************************** +// Method: h5partCommonPluginInfo::GetDefaultExtensions +// +// Purpose: +// Returns the default extensions for a h5part database. +// +// Programmer: cristina -- generated by xml2info +// Creation: Mon Feb 27 13:53:31 PST 2006 +// +// **************************************************************************** +std::vector +h5partCommonPluginInfo::GetDefaultExtensions() +{ + std::vector defaultExtensions; + defaultExtensions.push_back("h5part"); + + return defaultExtensions; +} + +// **************************************************************************** +// Method: h5partCommonPluginInfo::Setuh5partDatabase +// +// Purpose: +// Sets up a h5part database. +// +// Arguments: +// list A list of file names. +// nList The number of timesteps in list. +// nBlocks The number of blocks in the list. +// +// Returns: A h5part database from list. +// +// Programmer: cristina -- generated by xml2info +// Creation: Mon Feb 27 13:53:31 PST 2006 +// +// **************************************************************************** +avtDatabase * +h5partCommonPluginInfo::SetupDatabase(const char *const *list, + int nList, int nBlock) +{ + return new avtGenericDatabase( + new avtMTMDFileFormatInterface( + new avth5partFileFormat(list[0]))); +} diff --git a/visit_plugins/databases/H5Part/h5partEnginePluginInfo.C b/visit_plugins/databases/H5Part/h5partEnginePluginInfo.C new file mode 100644 index 0000000..b763b6a --- /dev/null +++ b/visit_plugins/databases/H5Part/h5partEnginePluginInfo.C @@ -0,0 +1,39 @@ +#include + +#if defined(__APPLE__) +#define GetEngineInfo h5part_GetEngineInfo +#endif + +// **************************************************************************** +// Function: GetEngineInfo +// +// Purpose: +// Return a new EnginePluginInfo for the h5part database. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** +extern "C" EngineDatabasePluginInfo* GetEngineInfo() +{ + return new h5partEnginePluginInfo; +} + +// **************************************************************************** +// Method: h5partCommonPluginInfo::GetWriter +// +// Purpose: +// Sets up a h5part writer. +// +// Returns: A h5part writer. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** +avtDatabaseWriter * +h5partEnginePluginInfo::GetWriter(void) +{ + return NULL; +} + diff --git a/visit_plugins/databases/H5Part/h5partMDServerPluginInfo.C b/visit_plugins/databases/H5Part/h5partMDServerPluginInfo.C new file mode 100644 index 0000000..0f886c3 --- /dev/null +++ b/visit_plugins/databases/H5Part/h5partMDServerPluginInfo.C @@ -0,0 +1,25 @@ +#include + +#if defined(__APPLE__) +#define GetMDServerInfo h5part_GetMDServerInfo +#endif + +// **************************************************************************** +// Function: GetMDServerInfo +// +// Purpose: +// Return a new MDServerPluginInfo for the h5part database. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** +extern "C" MDServerDatabasePluginInfo* GetMDServerInfo() +{ + return new h5partMDServerPluginInfo; +} + +// this makes compilers happy... remove if we ever have functions here +void h5partMDServerPluginInfo::dummy() +{ +} diff --git a/visit_plugins/databases/H5Part/h5partPluginInfo.C b/visit_plugins/databases/H5Part/h5partPluginInfo.C new file mode 100644 index 0000000..0a09057 --- /dev/null +++ b/visit_plugins/databases/H5Part/h5partPluginInfo.C @@ -0,0 +1,124 @@ +// ************************************************************************* // +// File: h5partPluginInfo.C +// ************************************************************************* // + +#include + +#include +#if defined(__APPLE__) +extern "C" const char *h5partVisItPluginVersion = VERSION; +#else +extern "C" const char *VisItPluginVersion = VERSION; +#endif + +#if defined(__APPLE__) +#define GetGeneralInfo h5part_GetGeneralInfo +#endif + +// **************************************************************************** +// Function: GetGeneralInfo +// +// Purpose: +// Return a new GeneralPluginInfo for the h5part database. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** +extern "C" GeneralDatabasePluginInfo* GetGeneralInfo() +{ + return new h5partGeneralPluginInfo; +} + +// **************************************************************************** +// Method: h5partGeneralPluginInfo::GetName +// +// Purpose: +// Return the name of the database plugin. +// +// Returns: A pointer to the name of the database plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** + +char * +h5partGeneralPluginInfo::GetName() const +{ + return "h5part"; +} + +// **************************************************************************** +// Method: h5partGeneralPluginInfo::GetVersion +// +// Purpose: +// Return the version of the database plugin. +// +// Returns: A pointer to the version of the database plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** + +char * +h5partGeneralPluginInfo::GetVersion() const +{ + return "1.0"; +} + +// **************************************************************************** +// Method: h5partGeneralPluginInfo::GetID +// +// Purpose: +// Return the id of the database plugin. +// +// Returns: A pointer to the id of the database plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** + +char * +h5partGeneralPluginInfo::GetID() const +{ + return "h5part_1.0"; +} +// **************************************************************************** +// Method: h5partGeneralPluginInfo::EnabledByDefault +// +// Purpose: +// Return true if this plugin should be enabled by default; false otherwise. +// +// Returns: true/false +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** + +bool +h5partGeneralPluginInfo::EnabledByDefault() const +{ + return true; +} +// **************************************************************************** +// Method: h5partGeneralPluginInfo::HasWriter +// +// Purpose: +// Return true if this plugin has a database writer. +// +// Returns: true/false +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// **************************************************************************** + +bool +h5partGeneralPluginInfo::HasWriter() const +{ + return false; +} diff --git a/visit_plugins/databases/H5Part/h5partPluginInfo.h b/visit_plugins/databases/H5Part/h5partPluginInfo.h new file mode 100644 index 0000000..b675f45 --- /dev/null +++ b/visit_plugins/databases/H5Part/h5partPluginInfo.h @@ -0,0 +1,60 @@ +// **************************************************************************** +// h5partPluginInfo.h +// **************************************************************************** + +#ifndef H5PART_PLUGIN_INFO_H +#define H5PART_PLUGIN_INFO_H +#include +#include + +class avtDatabase; +class avtDatabaseWriter; + +// **************************************************************************** +// Class: h5partDatabasePluginInfo +// +// Purpose: +// Classes that provide all the information about the h5part plugin. +// Portions are separated into pieces relevant to the appropriate +// components of VisIt. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 9 09:51:18 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class h5partGeneralPluginInfo : public virtual GeneralDatabasePluginInfo +{ + public: + virtual char *GetName() const; + virtual char *GetVersion() const; + virtual char *GetID() const; + virtual bool EnabledByDefault() const; + virtual bool HasWriter() const; +}; + +class h5partCommonPluginInfo : public virtual CommonDatabasePluginInfo, public virtual h5partGeneralPluginInfo +{ + public: + virtual DatabaseType GetDatabaseType(); + virtual std::vector GetDefaultExtensions(); + virtual avtDatabase *SetupDatabase(const char * const *list, + int nList, int nBlock); +}; + +class h5partMDServerPluginInfo : public virtual MDServerDatabasePluginInfo, public virtual h5partCommonPluginInfo +{ + public: + // this makes compilers happy... remove if we ever have functions here + virtual void dummy(); +}; + +class h5partEnginePluginInfo : public virtual EngineDatabasePluginInfo, public virtual h5partCommonPluginInfo +{ + public: + virtual avtDatabaseWriter *GetWriter(void); +}; + +#endif diff --git a/visit_plugins/operators/BinnerFilter/.depend b/visit_plugins/operators/BinnerFilter/.depend new file mode 100644 index 0000000..2dfc939 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/.depend @@ -0,0 +1,1505 @@ +BinnerPluginInfo.o: BinnerPluginInfo.C BinnerPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/operator_plugin_exports.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit-config.h +BinnerCommonPluginInfo.o: BinnerCommonPluginInfo.C BinnerPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/operator_plugin_exports.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h +BinnerFilter.o: BinnerFilter.C BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/bits/wordsize.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h /usr/include/c++/4.0.2/cstring \ + /usr/include/c++/4.0.2/cstddef \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/cstdlib \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/DataNode.h +BinnerGUIPluginInfo.o: BinnerGUIPluginInfo.C BinnerPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/operator_plugin_exports.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + QvisBinnerWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisOperatorWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/gui_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisPostableWindowObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisPostableWindowSimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisPostableWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qcstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmemarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qgarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qshared.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qglobal.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qconfig.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmodules.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfeatures.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwinexport.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisWindowBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmainwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwindowdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qobjectdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qnamespace.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qevent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qregion.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qrect.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qsize.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpoint.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmime.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qdatastream.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qiodevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpair.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qvaluelist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qtl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qtextstream.h \ + /usr/include/c++/4.0.2/iterator \ + /usr/include/c++/4.0.2/bits/stream_iterator.h \ + /usr/include/c++/4.0.2/list /usr/include/c++/4.0.2/bits/stl_list.h \ + /usr/include/c++/4.0.2/bits/list.tcc /usr/include/c++/4.0.2/map \ + /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpaintdevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpalette.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qcolor.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstringlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qptrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qglist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qptrcollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qbrush.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfont.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfontmetrics.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfontinfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qsizepolicy.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qtoolbar.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qdockwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qframe.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/GUIBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/SimpleObserver.h \ + icon.xpm +QvisBinnerWindow.o: QvisBinnerWindow.C QvisBinnerWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisOperatorWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/gui_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisPostableWindowObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisPostableWindowSimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisPostableWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qcstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmemarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qgarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qshared.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qglobal.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qconfig.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmodules.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfeatures.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwinexport.h \ + /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/xlocale.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/bits/wordsize.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits /usr/include/c++/4.0.2/cstdlib \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisWindowBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmainwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwindowdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qobjectdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qnamespace.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qevent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qregion.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qrect.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qsize.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpoint.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmime.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qmap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qdatastream.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qiodevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpair.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qvaluelist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qtl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qtextstream.h \ + /usr/include/c++/4.0.2/iterator /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc \ + /usr/include/c++/4.0.2/bits/stream_iterator.h \ + /usr/include/c++/4.0.2/list /usr/include/c++/4.0.2/bits/stl_list.h \ + /usr/include/c++/4.0.2/bits/list.tcc /usr/include/c++/4.0.2/map \ + /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpaintdevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpalette.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qcolor.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstringlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qstrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qptrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qglist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qptrcollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qbrush.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfont.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfontmetrics.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qfontinfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qsizepolicy.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qtoolbar.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qdockwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qframe.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/GUIBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/SimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ViewerProxy.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/viewerproxy_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qcheckbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qbutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qkeysequence.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qlabel.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qlayout.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qlineedit.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qspinbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qrangecontrol.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qvbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qhbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qbuttongroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qgroupbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qradiobutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisColorTableButton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpushbutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qiconset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qpixmap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisOpacitySlider.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qrangecontrol.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisColorButton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qcolor.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qbutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisLineStyleWidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisLineWidthWidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/QvisVariableButton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/qt/qobjectlist.h +BinnerViewerPluginInfo.o: BinnerViewerPluginInfo.C BinnerPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/operator_plugin_exports.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + icon.xpm +BinnerEnginePluginInfo.o: BinnerEnginePluginInfo.C BinnerPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/operator_plugin_exports.h \ + avtBinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPluginStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/pipeline_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataTreeStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetToDataObjectFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtFilter.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/string /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectInformation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisWindowTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtVector.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/math_exports.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/viswindow_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataValidity.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPipelineSpecification.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSpecification.h \ + /usr/include/c++/4.0.2/map /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/array_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtGhostData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSelection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ImproperUseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtexception_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/PipelineException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtCommonDataFunctions.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataRepresentation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataTree.h \ + /usr/include/c++/4.0.2/set /usr/include/c++/4.0.2/bits/stl_set.h \ + /usr/include/c++/4.0.2/bits/stl_multiset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPluginFilter.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h +BinnerScriptingPluginInfo.o: BinnerScriptingPluginInfo.C \ + BinnerPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/operator_plugin_exports.h \ + PyBinner.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/Python.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/patchlevel.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/config.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/string.h /usr/include/xlocale.h /usr/include/errno.h \ + /usr/include/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/asm/errno.h /usr/include/asm-x86_64/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ + /usr/include/sys/select.h /usr/include/bits/select.h \ + /usr/include/bits/sigset.h /usr/include/bits/time.h \ + /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ + /usr/include/bits/sched.h /usr/include/alloca.h /usr/include/assert.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pyport.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h /usr/include/sys/time.h \ + /usr/include/sys/stat.h /usr/include/bits/stat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pymem.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/object.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/objimpl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pydebug.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/unicodeobject.h \ + /usr/include/ctype.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/intobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/longobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/floatobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/complexobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/rangeobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/stringobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/bufferobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/tupleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/listobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/dictobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/methodobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/moduleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/funcobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/classobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/fileobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/cobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/traceback.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/sliceobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/cellobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/codecs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pyerrors.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pystate.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/modsupport.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/ceval.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pythonrun.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/sysmodule.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/intrcheck.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/import.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/abstract.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pyfpe.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/c++/4.0.2/climits /usr/include/c++/4.0.2/cstdlib \ + /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h +PyBinner.o: PyBinner.C PyBinner.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/Python.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/patchlevel.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/config.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/string.h /usr/include/xlocale.h /usr/include/errno.h \ + /usr/include/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/asm/errno.h /usr/include/asm-x86_64/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ + /usr/include/sys/select.h /usr/include/bits/select.h \ + /usr/include/bits/sigset.h /usr/include/bits/time.h \ + /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ + /usr/include/bits/sched.h /usr/include/alloca.h /usr/include/assert.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pyport.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h /usr/include/sys/time.h \ + /usr/include/sys/stat.h /usr/include/bits/stat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pymem.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/object.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/objimpl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pydebug.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/unicodeobject.h \ + /usr/include/ctype.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/intobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/longobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/floatobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/complexobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/rangeobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/stringobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/bufferobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/tupleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/listobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/dictobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/methodobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/moduleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/funcobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/classobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/fileobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/cobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/traceback.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/sliceobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/cellobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/codecs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pyerrors.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pystate.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/modsupport.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/ceval.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pythonrun.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/sysmodule.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/intrcheck.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/import.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/abstract.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/python/pyfpe.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/c++/4.0.2/climits /usr/include/c++/4.0.2/cstdlib \ + /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ObserverToCallback.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Observer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/SimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ColorAttribute.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/snprintf.h +avtBinnerFilter.o: avtBinnerFilter.C avtBinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPluginStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/pipeline_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataTreeStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetToDataObjectFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtFilter.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/bits/wordsize.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h /usr/include/c++/4.0.2/cstring \ + /usr/include/c++/4.0.2/cstddef \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/cstdlib \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/string /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectInformation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisWindowTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtVector.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/math_exports.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/viswindow_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataValidity.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPipelineSpecification.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSpecification.h \ + /usr/include/c++/4.0.2/map /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/array_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtGhostData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataSelection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/ImproperUseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtexception_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/PipelineException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtCommonDataFunctions.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataRepresentation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataTree.h \ + /usr/include/c++/4.0.2/set /usr/include/c++/4.0.2/bits/stl_set.h \ + /usr/include/c++/4.0.2/bits/stl_multiset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDataObjectToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtPluginFilter.h \ + BinnerFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtDatasetExaminer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/avtExtents.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkStructuredGrid.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPointSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkObjectBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIndent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkSystemIncludes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkWin32Header.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/vtkConfigure.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIOStream.h \ + /usr/include/c++/4.0.2/iomanip /usr/include/c++/4.0.2/functional \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkIdType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkOStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkOStrStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkSetGet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkTimeStamp.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPoints.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkStructuredData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkUnsignedCharArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkFloatArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPointData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkDataSetAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkFieldData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkPoints.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common/vtkMath.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit/InvalidDimensionsException.h diff --git a/visit_plugins/operators/BinnerFilter/Binner.xml b/visit_plugins/operators/BinnerFilter/Binner.xml new file mode 100644 index 0000000..424121a --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/Binner.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/visit_plugins/operators/BinnerFilter/BinnerCommonPluginInfo.C b/visit_plugins/operators/BinnerFilter/BinnerCommonPluginInfo.C new file mode 100644 index 0000000..7fa46eb --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerCommonPluginInfo.C @@ -0,0 +1,47 @@ +// ************************************************************************* // +// File: BinnerCommonPluginInfo.C +// ************************************************************************* // + +#include +#include + +// **************************************************************************** +// Method: BinnerCommonPluginInfo::AllocAttributes +// +// Purpose: +// Return a pointer to a newly allocated attribute subject. +// +// Returns: A pointer to the newly allocated attribute subject. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +AttributeSubject * +BinnerCommonPluginInfo::AllocAttributes() +{ + return new Binner; +} + +// **************************************************************************** +// Method: BinnerCommonPluginInfo::CopyAttributes +// +// Purpose: +// Copy a Binner attribute subject. +// +// Arguments: +// to The destination attribute subject. +// from The source attribute subject. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +void +BinnerCommonPluginInfo::CopyAttributes(AttributeSubject *to, + AttributeSubject *from) +{ + *((Binner *) to) = *((Binner *) from); +} diff --git a/visit_plugins/operators/BinnerFilter/BinnerEnginePluginInfo.C b/visit_plugins/operators/BinnerFilter/BinnerEnginePluginInfo.C new file mode 100644 index 0000000..2772d0f --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerEnginePluginInfo.C @@ -0,0 +1,44 @@ +// ************************************************************************* // +// File: BinnerEnginePluginInfo.C +// ************************************************************************* // + +#include +#include + +#if defined(__APPLE__) +#define GetEngineInfo Binner_GetEngineInfo +#endif + +// **************************************************************************** +// Function: GetEngineInfo +// +// Purpose: +// Return a new EnginePluginInfo for the Binner operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** +extern "C" EngineOperatorPluginInfo* GetEngineInfo() +{ + return new BinnerEnginePluginInfo; +} + +// **************************************************************************** +// Method: BinnerEnginePluginInfo::AllocAvtPluginFilter +// +// Purpose: +// Return a pointer to a newly allocated avtPluginFilter. +// +// Returns: A pointer to the newly allocated avtPluginFilter. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +avtPluginFilter * +BinnerEnginePluginInfo::AllocAvtPluginFilter() +{ + return new avtBinnerFilter; +} diff --git a/visit_plugins/operators/BinnerFilter/BinnerFilter.C b/visit_plugins/operators/BinnerFilter/BinnerFilter.C new file mode 100644 index 0000000..7f5048a --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerFilter.C @@ -0,0 +1,535 @@ +#include +#include + +// **************************************************************************** +// Method: Binner::Binner +// +// Purpose: +// Constructor for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +Binner::Binner() : AttributeSubject("iii") +{ +} + +// **************************************************************************** +// Method: Binner::Binner +// +// Purpose: +// Copy constructor for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +Binner::Binner(const Binner &obj) : AttributeSubject("iii") +{ + dim1 = obj.dim1; + dim2 = obj.dim2; + dim3 = obj.dim3; + + SelectAll(); +} + +// **************************************************************************** +// Method: Binner::~Binner +// +// Purpose: +// Destructor for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +Binner::~Binner() +{ + // nothing here +} + +// **************************************************************************** +// Method: Binner::operator = +// +// Purpose: +// Assignment operator for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +Binner& +Binner::operator = (const Binner &obj) +{ + if (this == &obj) return *this; + dim1 = obj.dim1; + dim2 = obj.dim2; + dim3 = obj.dim3; + + SelectAll(); + return *this; +} + +// **************************************************************************** +// Method: Binner::operator == +// +// Purpose: +// Comparison operator == for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +Binner::operator == (const Binner &obj) const +{ + // Create the return value + return ((dim1 == obj.dim1) && + (dim2 == obj.dim2) && + (dim3 == obj.dim3)); +} + +// **************************************************************************** +// Method: Binner::operator != +// +// Purpose: +// Comparison operator != for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +Binner::operator != (const Binner &obj) const +{ + return !(this->operator == (obj)); +} + +// **************************************************************************** +// Method: Binner::TypeName +// +// Purpose: +// Type name method for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +const std::string +Binner::TypeName() const +{ + return "Binner"; +} + +// **************************************************************************** +// Method: Binner::CopyAttributes +// +// Purpose: +// CopyAttributes method for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +Binner::CopyAttributes(const AttributeGroup *atts) +{ + if(TypeName() != atts->TypeName()) + return false; + + // Call assignment operator. + const Binner *tmp = (const Binner *)atts; + *this = *tmp; + + return true; +} + +// **************************************************************************** +// Method: Binner::CreateCompatible +// +// Purpose: +// CreateCompatible method for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +AttributeSubject * +Binner::CreateCompatible(const std::string &tname) const +{ + AttributeSubject *retval = 0; + if(TypeName() == tname) + retval = new Binner(*this); + // Other cases could go here too. + + return retval; +} + +// **************************************************************************** +// Method: Binner::NewInstance +// +// Purpose: +// NewInstance method for the Binner class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +AttributeSubject * +Binner::NewInstance(bool copy) const +{ + AttributeSubject *retval = 0; + if(copy) + retval = new Binner(*this); + else + retval = new Binner; + + return retval; +} + +// **************************************************************************** +// Method: Binner::SelectAll +// +// Purpose: +// Selects all attributes. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +Binner::SelectAll() +{ + Select(0, (void *)&dim1); + Select(1, (void *)&dim2); + Select(2, (void *)&dim3); +} + +/////////////////////////////////////////////////////////////////////////////// +// Persistence methods +/////////////////////////////////////////////////////////////////////////////// + +// **************************************************************************** +// Method: Binner::CreateNode +// +// Purpose: +// This method creates a DataNode representation of the object so it can be saved to a config file. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +Binner::CreateNode(DataNode *parentNode, bool completeSave, bool forceAdd) +{ + if(parentNode == 0) + return false; + + Binner defaultObject; + bool addToParent = false; + // Create a node for Binner. + DataNode *node = new DataNode("Binner"); + + if(completeSave || !FieldsEqual(0, &defaultObject)) + { + addToParent = true; + node->AddNode(new DataNode("dim1", dim1)); + } + + if(completeSave || !FieldsEqual(1, &defaultObject)) + { + addToParent = true; + node->AddNode(new DataNode("dim2", dim2)); + } + + if(completeSave || !FieldsEqual(2, &defaultObject)) + { + addToParent = true; + node->AddNode(new DataNode("dim3", dim3)); + } + + + // Add the node to the parent node. + if(addToParent || forceAdd) + parentNode->AddNode(node); + else + delete node; + + return (addToParent || forceAdd); +} + +// **************************************************************************** +// Method: Binner::SetFromNode +// +// Purpose: +// This method sets attributes in this object from values in a DataNode representation of the object. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +Binner::SetFromNode(DataNode *parentNode) +{ + int i; + if(parentNode == 0) + return; + + DataNode *searchNode = parentNode->GetNode("Binner"); + if(searchNode == 0) + return; + + DataNode *node; + if((node = searchNode->GetNode("dim1")) != 0) + SetDim1(node->AsInt()); + if((node = searchNode->GetNode("dim2")) != 0) + SetDim2(node->AsInt()); + if((node = searchNode->GetNode("dim3")) != 0) + SetDim3(node->AsInt()); +} + +/////////////////////////////////////////////////////////////////////////////// +// Set property methods +/////////////////////////////////////////////////////////////////////////////// + +void +Binner::SetDim1(int dim1_) +{ + dim1 = dim1_; + Select(0, (void *)&dim1); +} + +void +Binner::SetDim2(int dim2_) +{ + dim2 = dim2_; + Select(1, (void *)&dim2); +} + +void +Binner::SetDim3(int dim3_) +{ + dim3 = dim3_; + Select(2, (void *)&dim3); +} + +/////////////////////////////////////////////////////////////////////////////// +// Get property methods +/////////////////////////////////////////////////////////////////////////////// + +int +Binner::GetDim1() const +{ + return dim1; +} + +int +Binner::GetDim2() const +{ + return dim2; +} + +int +Binner::GetDim3() const +{ + return dim3; +} + +/////////////////////////////////////////////////////////////////////////////// +// Keyframing methods +/////////////////////////////////////////////////////////////////////////////// + +// **************************************************************************** +// Method: Binner::GetFieldName +// +// Purpose: +// This method returns the name of a field given its index. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +std::string +Binner::GetFieldName(int index) const +{ + switch (index) + { + case 0: return "dim1"; + case 1: return "dim2"; + case 2: return "dim3"; + default: return "invalid index"; + } +} + +// **************************************************************************** +// Method: Binner::GetFieldType +// +// Purpose: +// This method returns the type of a field given its index. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +AttributeGroup::FieldType +Binner::GetFieldType(int index) const +{ + switch (index) + { + case 0: return FieldType_int; + case 1: return FieldType_int; + case 2: return FieldType_int; + default: return FieldType_unknown; + } +} + +// **************************************************************************** +// Method: Binner::GetFieldTypeName +// +// Purpose: +// This method returns the name of a field type given its index. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +std::string +Binner::GetFieldTypeName(int index) const +{ + switch (index) + { + case 0: return "int"; + case 1: return "int"; + case 2: return "int"; + default: return "invalid index"; + } +} + +// **************************************************************************** +// Method: Binner::FieldsEqual +// +// Purpose: +// This method compares two fields and return true if they are equal. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +Binner::FieldsEqual(int index_, const AttributeGroup *rhs) const +{ + const Binner &obj = *((const Binner*)rhs); + bool retval = false; + switch (index_) + { + case 0: + { // new scope + retval = (dim1 == obj.dim1); + } + break; + case 1: + { // new scope + retval = (dim2 == obj.dim2); + } + break; + case 2: + { // new scope + retval = (dim3 == obj.dim3); + } + break; + default: retval = false; + } + + return retval; +} + +/////////////////////////////////////////////////////////////////////////////// +// User-defined methods. +/////////////////////////////////////////////////////////////////////////////// + diff --git a/visit_plugins/operators/BinnerFilter/BinnerFilter.h b/visit_plugins/operators/BinnerFilter/BinnerFilter.h new file mode 100644 index 0000000..bac8ba6 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerFilter.h @@ -0,0 +1,66 @@ +#ifndef BINNER_H +#define BINNER_H +#include + +// **************************************************************************** +// Class: Binner +// +// Purpose: +// Bin particles +// +// Notes: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 30 12:05:25 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class Binner : public AttributeSubject +{ +public: + Binner(); + Binner(const Binner &obj); + virtual ~Binner(); + + virtual Binner& operator = (const Binner &obj); + virtual bool operator == (const Binner &obj) const; + virtual bool operator != (const Binner &obj) const; + + virtual const std::string TypeName() const; + virtual bool CopyAttributes(const AttributeGroup *); + virtual AttributeSubject *CreateCompatible(const std::string &) const; + virtual AttributeSubject *NewInstance(bool) const; + + // Property selection methods + virtual void SelectAll(); + + // Property setting methods + void SetDim1(int dim1_); + void SetDim2(int dim2_); + void SetDim3(int dim3_); + + // Property getting methods + int GetDim1() const; + int GetDim2() const; + int GetDim3() const; + + // Persistence methods + virtual bool CreateNode(DataNode *node, bool completeSave, bool forceAdd); + virtual void SetFromNode(DataNode *node); + + + // Keyframing methods + virtual std::string GetFieldName(int index) const; + virtual AttributeGroup::FieldType GetFieldType(int index) const; + virtual std::string GetFieldTypeName(int index) const; + virtual bool FieldsEqual(int index, const AttributeGroup *rhs) const; + +private: + int dim1; + int dim2; + int dim3; +}; + +#endif diff --git a/visit_plugins/operators/BinnerFilter/BinnerFilter.java b/visit_plugins/operators/BinnerFilter/BinnerFilter.java new file mode 100644 index 0000000..4236fd9 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerFilter.java @@ -0,0 +1,116 @@ +package llnl.visit.operators; + +import llnl.visit.AttributeSubject; +import llnl.visit.CommunicationBuffer; +import llnl.visit.Plugin; + +// **************************************************************************** +// Class: Binner +// +// Purpose: +// Bin particles +// +// Notes: Autogenerated by xml2java. +// +// Programmer: xml2java +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +public class Binner extends AttributeSubject implements Plugin +{ + public Binner() + { + super(3); + + dim1 = 0; + dim2 = 0; + dim3 = 0; + } + + public Binner(Binner obj) + { + super(3); + + dim1 = obj.dim1; + dim2 = obj.dim2; + dim3 = obj.dim3; + + SelectAll(); + } + + public boolean equals(Binner obj) + { + // Create the return value + return ((dim1 == obj.dim1) && + (dim2 == obj.dim2) && + (dim3 == obj.dim3)); + } + + public String GetName() { return "Binner"; } + public String GetVersion() { return "1.0"; } + + // Property setting methods + public void SetDim1(int dim1_) + { + dim1 = dim1_; + Select(0); + } + + public void SetDim2(int dim2_) + { + dim2 = dim2_; + Select(1); + } + + public void SetDim3(int dim3_) + { + dim3 = dim3_; + Select(2); + } + + // Property getting methods + public int GetDim1() { return dim1; } + public int GetDim2() { return dim2; } + public int GetDim3() { return dim3; } + + // Write and read methods. + public void WriteAtts(CommunicationBuffer buf) + { + if(WriteSelect(0, buf)) + buf.WriteInt(dim1); + if(WriteSelect(1, buf)) + buf.WriteInt(dim2); + if(WriteSelect(2, buf)) + buf.WriteInt(dim3); + } + + public void ReadAtts(int n, CommunicationBuffer buf) + { + for(int i = 0; i < n; ++i) + { + int index = (int)buf.ReadByte(); + switch(index) + { + case 0: + SetDim1(buf.ReadInt()); + break; + case 1: + SetDim2(buf.ReadInt()); + break; + case 2: + SetDim3(buf.ReadInt()); + break; + } + } + } + + + // Attributes + private int dim1; + private int dim2; + private int dim3; +} + diff --git a/visit_plugins/operators/BinnerFilter/BinnerGUIPluginInfo.C b/visit_plugins/operators/BinnerFilter/BinnerGUIPluginInfo.C new file mode 100644 index 0000000..cb0bec2 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerGUIPluginInfo.C @@ -0,0 +1,92 @@ +// ************************************************************************* // +// File: BinnerGUIPluginInfo.C +// ************************************************************************* // + +#include +#include +#include + +#if defined(__APPLE__) +#define GetGUIInfo Binner_GetGUIInfo +#endif + +// **************************************************************************** +// Function: GetGUIInfo +// +// Purpose: +// Return a new GUIPluginInfo for the Binner operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** +extern "C" GUIOperatorPluginInfo* GetGUIInfo() +{ + return new BinnerGUIPluginInfo; +} + +// **************************************************************************** +// Method: BinnerGUIPluginInfo::GetMenuName +// +// Purpose: +// Return a pointer to the name to use in the GUI menu. +// +// Returns: A pointer to the name to use in the GUI menu. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +const char * +BinnerGUIPluginInfo::GetMenuName() const +{ + return "Binner"; +} + + +// **************************************************************************** +// Method: BinnerGUIPluginInfo::CreatePluginWindow +// +// Purpose: +// Return a pointer to an operator's attribute window. +// +// Arguments: +// type The type of the operator. +// attr The attribute subject for the operator. +// notepad The notepad to use for posting the window. +// +// Returns: A pointer to the operator's attribute window. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +QvisPostableWindowObserver * +BinnerGUIPluginInfo::CreatePluginWindow(int type, AttributeSubject *attr, + QvisNotepadArea *notepad) +{ + return new QvisBinnerWindow(type, (Binner *)attr, + "Binner operator attributes", "Binner operator", notepad); +} + +// **************************************************************************** +// Method: BinnerGUIPluginInfo::XPMIconData +// +// Purpose: +// Return a pointer to the icon data. +// +// Returns: A pointer to the icon data. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +#include +const char ** +BinnerGUIPluginInfo::XPMIconData() const +{ + return icon_xpm; +} diff --git a/visit_plugins/operators/BinnerFilter/BinnerMakefile b/visit_plugins/operators/BinnerFilter/BinnerMakefile new file mode 100644 index 0000000..b574b2d --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerMakefile @@ -0,0 +1,113 @@ +## +## Programs and options... +## +include /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/make-variables +TOPDIR=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64 + + +## +## Libraries and includes... +## +VTK_INCLUDE= \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Filtering \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Graphics \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Hybrid \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/IO \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Imaging \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Rendering +MOC=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/bin/moc +CXXFLAGS=$(CXXFLAGSORIG) $(QT_CXXFLAGS) $(PY_CXXFLAGS) +CPPFLAGS=$(CPPFLAGSORIG) $(VTK_INCLUDE) -I. -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit +LDFLAGS=$(LDFLAGSORIG) $(PY_LDFLAGS) -L/d/visusers/cristina/.visit/linux-x86_64/plugins/operators + +## +## Files... +## +PLUGINDIR=operators +PLUGINNAME=BinnerOperator + +WIDGETS=QvisBinnerWindow.h +ISRC=BinnerPluginInfo.C +COMMONSRC=BinnerPluginInfo.C BinnerCommonPluginInfo.C Binner.C +GSRC=BinnerGUIPluginInfo.C QvisBinnerWindow.C +VSRC=BinnerViewerPluginInfo.C +ESRC=BinnerEnginePluginInfo.C avtBinnerFilter.C +SSRC=BinnerScriptingPluginInfo.C PyBinner.C + +SRC=$(ISRC) $(COMMONSRC) $(GSRC) $(VSRC) $(ESRC) $(SSRC) + + +JAVASRC=Binner.java +JAVAOBJ=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/java/llnl/visit/operators/Binner.class +JAVAPLUGINFLAGS=-d /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/java -classpath /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/java + +SHLIB_FORCED= + +ELIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +VLIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +ILIBS= +GLIBS=-lgui -lmdserverproxy -lviewerproxy -lproxybase -lmdserverrpc -lviewerrpc -lwinutil -ldbatts -lavtexceptions -lstate -lcomm -lmisc -lplugin -lexpr -lparser -lutility -lI$(PLUGINNAME) $(QT_LDFLAGS) $(QT_LIBS) $(QUI_LIBS) $(X_LIBS) +SLIBS=-lstate -lmisc -lcomm -lutility $(PY_LIB) -lI$(PLUGINNAME) +VLIBS=-lpipeline_ser -lplotter_ser -lavtfilters_ser -lavtmath_ser -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_ser $(VLIBS_FOR_MACOSX_PREBINDING) -lI$(PLUGINNAME) $(VTK_LIBS) +ESERLIBS=-lpipeline_ser -lplotter_ser -lavtfilters_ser -lavtmath_ser -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_ser -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) +EPARLIBS=-lpipeline_par -lplotter_par -lavtfilters_par -lavtmath_par -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_par -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) $(SHLIB_MPI_LIBS) + +IDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libIBinnerOperator.so +GDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libGBinnerOperator.so +SDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libSBinnerOperator.so +VDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libVBinnerOperator.so +ESERDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libEBinnerOperator_ser.so +EPARDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libEBinnerOperator_par.so + + +DISTRIB= + +## +## Derived objects +## +IOBJ=$(ISRC:.C=.o) +GOBJ=$(COMMONSRC:.C=.o) $(GSRC:.C=.o) +SOBJ=$(COMMONSRC:.C=.o) $(SSRC:.C=.o) +VOBJ=$(COMMONSRC:.C=.o) $(VSRC:.C=.o) +MOBJ=$(COMMONSRC:.C=.o) $(MSRC:.C=.o) $(MSPECIFICSRC:.C=_mds.o) +ESEROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=.o) +EPAROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=_par.o) + +MOCSRC = $(WIDGETS:.h=_moc.C) +MOCOBJ = $(MOCSRC:.C=.o) + +## +## Standard targets... +## +all: message $(IDSO) $(GUILIB) $(VIEWERLIB) $(ENGINELIBSER) $(ENGINELIBPAR) $(SCRIPTINGLIB) $(JAVACLASS) + +clean: + $(RM) $(IOBJ) $(COMMONOBJ) + $(RM) $(GOBJ) $(SOBJ) $(VOBJ) $(MOBJ) $(ESEROBJ) $(EPAROBJ) + $(RM) $(MOCSRC) $(MOCOBJ) + $(RM) $(IDSO) $(GDSO) $(SDSO) $(VDSO) $(MDSO) $(ESERDSO) $(EPARDSO) + $(RM) $(JAVAOBJ) + +## +## Other targets... +## +message: + @echo + @echo "****************************************************************************" + @echo "*** Building Binner Operator Plugin" + @echo "****************************************************************************" + +## +## moc +## +$(MOCSRC) or_no_widgets: $(WIDGETS) + @rm -f $@ + $(MOC) $(@:_moc.C=.h) > $@ + + +## +## Automatic dependency stuff +## +include /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/make-targets diff --git a/visit_plugins/operators/BinnerFilter/BinnerPluginInfo.C b/visit_plugins/operators/BinnerFilter/BinnerPluginInfo.C new file mode 100644 index 0000000..80ec38c --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerPluginInfo.C @@ -0,0 +1,107 @@ +// ************************************************************************* // +// File: BinnerPluginInfo.C +// ************************************************************************* // + +#include +#include + +#include +#if defined(__APPLE__) +extern "C" const char *BinnerVisItPluginVersion = VERSION; +#else +extern "C" const char *VisItPluginVersion = VERSION; +#endif + +#if defined(__APPLE__) +#define GetGeneralInfo Binner_GetGeneralInfo +#endif + +// **************************************************************************** +// Function: GetGeneralInfo +// +// Purpose: +// Return a new GeneralPluginInfo for the Binner operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** +extern "C" GeneralOperatorPluginInfo* GetGeneralInfo() +{ + return new BinnerGeneralPluginInfo; +} + +// **************************************************************************** +// Method: BinnerGeneralPluginInfo::GetName +// +// Purpose: +// Return the name of the operator plugin. +// +// Returns: A pointer to the name of the operator plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +char * +BinnerGeneralPluginInfo::GetName() const +{ + return "Binner"; +} + +// **************************************************************************** +// Method: BinnerGeneralPluginInfo::GetVersion +// +// Purpose: +// Return the version of the operator plugin. +// +// Returns: A pointer to the version of the operator plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +char * +BinnerGeneralPluginInfo::GetVersion() const +{ + return "1.0"; +} + +// **************************************************************************** +// Method: BinnerGeneralPluginInfo::GetID +// +// Purpose: +// Return the id of the operator plugin. +// +// Returns: A pointer to the id of the operator plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +char * +BinnerGeneralPluginInfo::GetID() const +{ + return "Binner_1.0"; +} +// **************************************************************************** +// Method: BinnerGeneralPluginInfo::EnabledByDefault +// +// Purpose: +// Return true if this plugin should be enabled by default; false otherwise. +// +// Returns: true/false +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +bool +BinnerGeneralPluginInfo::EnabledByDefault() const +{ + return true; +} diff --git a/visit_plugins/operators/BinnerFilter/BinnerPluginInfo.h b/visit_plugins/operators/BinnerFilter/BinnerPluginInfo.h new file mode 100644 index 0000000..076dd59 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerPluginInfo.h @@ -0,0 +1,85 @@ +// ************************************************************************* // +// File: BinnerPluginInfo.h +// ************************************************************************* // + +#ifndef BINNER_PLUGIN_INFO_H +#define BINNER_PLUGIN_INFO_H +#include +#include + +class Binner; + +// **************************************************************************** +// Class: BinnerPluginInfo +// +// Purpose: +// Five classes that provide all the information about an Binner operator +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class BinnerGeneralPluginInfo : public virtual GeneralOperatorPluginInfo +{ + public: + virtual char *GetName() const; + virtual char *GetVersion() const; + virtual char *GetID() const; + virtual bool EnabledByDefault() const; +}; + +class BinnerCommonPluginInfo : public virtual CommonOperatorPluginInfo, public virtual BinnerGeneralPluginInfo +{ + public: + virtual AttributeSubject *AllocAttributes(); + virtual void CopyAttributes(AttributeSubject *to, AttributeSubject *from); +}; + +class BinnerGUIPluginInfo : public virtual GUIOperatorPluginInfo, public virtual BinnerCommonPluginInfo +{ + public: + virtual const char *GetMenuName() const; + virtual QvisPostableWindowObserver *CreatePluginWindow(int type, + AttributeSubject *attr, QvisNotepadArea *notepad); + virtual const char **XPMIconData() const; +}; + +class BinnerViewerPluginInfo : public virtual ViewerOperatorPluginInfo, public virtual BinnerCommonPluginInfo +{ + public: + virtual AttributeSubject *GetClientAtts(); + virtual AttributeSubject *GetDefaultAtts(); + virtual void SetClientAtts(AttributeSubject *atts); + virtual void GetClientAtts(AttributeSubject *atts); + + virtual void InitializeOperatorAtts(AttributeSubject *atts, + const ViewerPlot *plot, + const bool fromDefault); + virtual const char **XPMIconData() const; + + static void InitializeGlobalObjects(); + private: + static Binner *defaultAtts; + static Binner *clientAtts; +}; + +class BinnerEnginePluginInfo : public virtual EngineOperatorPluginInfo, public virtual BinnerCommonPluginInfo +{ + public: + virtual avtPluginFilter *AllocAvtPluginFilter(); +}; + +class BinnerScriptingPluginInfo : public virtual ScriptingOperatorPluginInfo, public virtual BinnerCommonPluginInfo +{ + public: + virtual void InitializePlugin(AttributeSubject *subj, void *data); + virtual void *GetMethodTable(int *nMethods); + virtual bool TypesMatch(void *pyobject); + virtual char *GetLogString(); + virtual void SetDefaults(const AttributeSubject *atts); +}; + +#endif diff --git a/visit_plugins/operators/BinnerFilter/BinnerScriptingPluginInfo.C b/visit_plugins/operators/BinnerFilter/BinnerScriptingPluginInfo.C new file mode 100644 index 0000000..f0c7802 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerScriptingPluginInfo.C @@ -0,0 +1,142 @@ +// ************************************************************************* // +// BinnerScriptingPluginInfo.C +// ************************************************************************* // +#include +#include + +#if defined(__APPLE__) +#define GetScriptingInfo Binner_GetScriptingInfo +#endif + +// **************************************************************************** +// Function: GetScriptingInfo +// +// Purpose: +// Return a new ScriptingPluginInfo for the Binner plot. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** +extern "C" ScriptingOperatorPluginInfo* GetScriptingInfo() +{ + return new BinnerScriptingPluginInfo; +} + +// **************************************************************************** +// Method: BinnerScriptingPluginInfo::InitializePlugin +// +// Purpose: +// Calls the initialization function for the plugin. +// +// Arguments: +// subj : A pointer to the plugin's state object. +// data : A pointer to data to be used by the observer function. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +BinnerScriptingPluginInfo::InitializePlugin(AttributeSubject *subj, + void *data) +{ + PyBinner_StartUp((Binner *)subj, data); +} + +// **************************************************************************** +// Method: BinnerScriptingPluginInfo::GetMethodTable +// +// Purpose: +// Returns a pointer to the plugin's Python method table. These methods are +// added to the top-level visit module's methods. +// +// Arguments: +// nMethods : Returns the number of methods in the method table. +// +// Returns: A pointer to the method table. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void * +BinnerScriptingPluginInfo::GetMethodTable(int *nMethods) +{ + return PyBinner_GetMethodTable(nMethods); +} + +// **************************************************************************** +// Method: BinnerScriptingPluginInfo::TypesMatch +// +// Purpose: +// Returns whether or not the input PyObject is Binner plot attributes. +// +// Arguments: +// pyobject : A PyObject cast to void*. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +BinnerScriptingPluginInfo::TypesMatch(void *pyobject) +{ + return PyBinner_Check((PyObject *)pyobject); +} + +// **************************************************************************** +// Method: BinnerScriptingPluginInfo::GetLogString +// +// Purpose: +// Gets a string representation of the current attributes. +// +// Arguments: +// val : Whether or not to log state information. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +char * +BinnerScriptingPluginInfo::GetLogString() +{ + std::string s(PyBinner_GetLogString()); + char *v = new char[s.size() + 1]; + strcpy(v, s.c_str()); + return v; +} + +// **************************************************************************** +// Method: BinnerScriptingPluginInfo::SetDefaults +// +// Purpose: +// Used to set the default values for a plugin's state object. +// +// Arguments: +// atts : The new state. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +BinnerScriptingPluginInfo::SetDefaults(const AttributeSubject *atts) +{ + PyBinner_SetDefaults((const Binner *)atts); +} diff --git a/visit_plugins/operators/BinnerFilter/BinnerViewerPluginInfo.C b/visit_plugins/operators/BinnerFilter/BinnerViewerPluginInfo.C new file mode 100644 index 0000000..dff9ff5 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/BinnerViewerPluginInfo.C @@ -0,0 +1,175 @@ +// ************************************************************************* // +// File: BinnerViewerPluginInfo.C +// ************************************************************************* // + +#include +#include + +#if defined(__APPLE__) +#define GetViewerInfo Binner_GetViewerInfo +#endif + +// **************************************************************************** +// Function: GetViewerInfo +// +// Purpose: +// Return a new ViewerPluginInfo for the Binner operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** +extern "C" ViewerOperatorPluginInfo* GetViewerInfo() +{ + BinnerViewerPluginInfo::InitializeGlobalObjects(); + return new BinnerViewerPluginInfo; +} + +// +// Storage for static data elements. +// +Binner *BinnerViewerPluginInfo::clientAtts = NULL; +Binner *BinnerViewerPluginInfo::defaultAtts = NULL; + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::InitializeGlobalObjects +// +// Purpose: +// Initialize the operator atts. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** +void +BinnerViewerPluginInfo::InitializeGlobalObjects() +{ + BinnerViewerPluginInfo::clientAtts = new Binner; + BinnerViewerPluginInfo::defaultAtts = new Binner; +} + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::GetClientAtts +// +// Purpose: +// Return a pointer to the viewer client attributes. +// +// Returns: A pointer to the viewer client attributes. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +AttributeSubject * +BinnerViewerPluginInfo::GetClientAtts() +{ + return clientAtts; +} + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::GetDefaultAtts +// +// Purpose: +// Return a pointer to the viewer default attributes. +// +// Returns: A pointer to the viewer default attributes. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +AttributeSubject * +BinnerViewerPluginInfo::GetDefaultAtts() +{ + return defaultAtts; +} + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::SetClientAtts +// +// Purpose: +// Set the viewer client attributes. +// +// Arguments: +// atts A pointer to the new client attributes. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +void +BinnerViewerPluginInfo::SetClientAtts(AttributeSubject *atts) +{ + *clientAtts = *(Binner *)atts; + clientAtts->Notify(); +} + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::GetClientAtts +// +// Purpose: +// Get the viewer client attributes. +// +// Arguments: +// atts A pointer to return the client default attributes in. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +void +BinnerViewerPluginInfo::GetClientAtts(AttributeSubject *atts) +{ + *(Binner *)atts = *clientAtts; +} + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::InitializeOperatorAtts +// +// Purpose: +// Initialize the operator attributes to the default attributes. +// +// Arguments: +// atts The attribute subject to initialize. +// md The metadata used to initialize. +// atts The variable name used to initialize. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +void +BinnerViewerPluginInfo::InitializeOperatorAtts(AttributeSubject *atts, + const ViewerPlot *plot, + const bool fromDefault) +{ + if (fromDefault) + *(Binner*)atts = *defaultAtts; + else + *(Binner*)atts = *clientAtts; +} + +// **************************************************************************** +// Method: BinnerViewerPluginInfo::XPMIconData +// +// Purpose: +// Return a pointer to the icon data. +// +// Returns: A pointer to the icon data. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +#include +const char ** +BinnerViewerPluginInfo::XPMIconData() const +{ + return icon_xpm; +} diff --git a/visit_plugins/operators/BinnerFilter/Binnerreplace.txt b/visit_plugins/operators/BinnerFilter/Binnerreplace.txt new file mode 100644 index 0000000..5b25591 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/Binnerreplace.txt @@ -0,0 +1 @@ +s/Binner/Binner/g diff --git a/visit_plugins/operators/BinnerFilter/Makefile b/visit_plugins/operators/BinnerFilter/Makefile new file mode 100644 index 0000000..9e06a08 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/Makefile @@ -0,0 +1,114 @@ +## +## Programs and options... +## +TOPDIR=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64 +include $(TOPDIR)/include/make-variables +TOPDIR=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64 +PLUGINSHOME=$(HOME)/.visit/linux-x86_64/plugins + +## +## Libraries and includes... +## +VTK_INCLUDE= \ + -I$(TOPDIR)/include/vtk \ + -I$(TOPDIR)/include/vtk/Common \ + -I$(TOPDIR)/include/vtk/Filtering \ + -I$(TOPDIR)/include/vtk/Graphics \ + -I$(TOPDIR)/include/vtk/Hybrid \ + -I$(TOPDIR)/include/vtk/IO \ + -I$(TOPDIR)/include/vtk/Imaging \ + -I$(TOPDIR)/include/vtk/Rendering +MOC=$(TOPDIR)/bin/moc +CXXFLAGS=$(CXXFLAGSORIG) $(QT_CXXFLAGS) $(PY_CXXFLAGS) +CPPFLAGS=$(CPPFLAGSORIG) $(VTK_INCLUDE) -I. -I$(TOPDIR)/include -I$(TOPDIR)/include/visit +LDFLAGS=$(LDFLAGSORIG) $(PY_LDFLAGS) -L$(PLUGINSHOME)/operators + +## +## Files... +## +PLUGINDIR=operators +PLUGINNAME=BinnerOperator + +WIDGETS=QvisBinnerWindow.h +ISRC=BinnerPluginInfo.C +COMMONSRC=BinnerPluginInfo.C BinnerCommonPluginInfo.C BinnerFilter.C +GSRC=BinnerGUIPluginInfo.C QvisBinnerWindow.C +VSRC=BinnerViewerPluginInfo.C +ESRC=BinnerEnginePluginInfo.C avtBinnerFilter.C +SSRC=BinnerScriptingPluginInfo.C PyBinner.C + +SRC=$(ISRC) $(COMMONSRC) $(GSRC) $(VSRC) $(ESRC) $(SSRC) + + +JAVASRC=Binner.java +JAVAOBJ=$(TOPDIR)/java/llnl/visit/operators/BinnerFilter.class +JAVAPLUGINFLAGS=-d $(TOPDIR)/java -classpath $(TOPDIR)/java + +SHLIB_FORCED= + +ELIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +VLIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +ILIBS= +GLIBS=-lgui -lmdserverproxy -lviewerproxy -lproxybase -lmdserverrpc -lviewerrpc -lwinutil -ldbatts -lavtexceptions -lstate -lcomm -lmisc -lplugin -lexpr -lparser -lutility -lI$(PLUGINNAME) $(QT_LDFLAGS) $(QT_LIBS) $(QUI_LIBS) $(X_LIBS) +SLIBS=-lstate -lmisc -lcomm -lutility $(PY_LIB) -lI$(PLUGINNAME) +VLIBS=-lpipeline_ser -lplotter_ser -lavtfilters_ser -lavtmath_ser -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_ser $(VLIBS_FOR_MACOSX_PREBINDING) -lI$(PLUGINNAME) $(VTK_LIBS) +ESERLIBS=-lpipeline_ser -lplotter_ser -lavtfilters_ser -lavtmath_ser -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_ser -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) +EPARLIBS=-lpipeline_par -lplotter_par -lavtfilters_par -lavtmath_par -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_par -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) $(SHLIB_MPI_LIBS) + +IDSO=$(PLUGINSHOME)/operators/libIBinnerOperator.so +GDSO=$(PLUGINSHOME)/operators/libGBinnerOperator.so +SDSO=$(PLUGINSHOME)/operators/libSBinnerOperator.so +VDSO=$(PLUGINSHOME)/operators/libVBinnerOperator.so +ESERDSO=$(PLUGINSHOME)/operators/libEBinnerOperator_ser.so +EPARDSO=$(PLUGINSHOME)/operators/libEBinnerOperator_par.so + + +DISTRIB= + +## +## Derived objects +## +IOBJ=$(ISRC:.C=.o) +GOBJ=$(COMMONSRC:.C=.o) $(GSRC:.C=.o) +SOBJ=$(COMMONSRC:.C=.o) $(SSRC:.C=.o) +VOBJ=$(COMMONSRC:.C=.o) $(VSRC:.C=.o) +MOBJ=$(COMMONSRC:.C=.o) $(MSRC:.C=.o) $(MSPECIFICSRC:.C=_mds.o) +ESEROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=.o) +EPAROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=_par.o) + +MOCSRC = $(WIDGETS:.h=_moc.C) +MOCOBJ = $(MOCSRC:.C=.o) + +## +## Standard targets... +## +all: message $(IDSO) $(GUILIB) $(VIEWERLIB) $(ENGINELIBSER) $(ENGINELIBPAR) $(SCRIPTINGLIB) $(JAVACLASS) + +clean: + $(RM) $(IOBJ) $(COMMONOBJ) + $(RM) $(GOBJ) $(SOBJ) $(VOBJ) $(MOBJ) $(ESEROBJ) $(EPAROBJ) + $(RM) $(MOCSRC) $(MOCOBJ) + $(RM) $(IDSO) $(GDSO) $(SDSO) $(VDSO) $(MDSO) $(ESERDSO) $(EPARDSO) + $(RM) $(JAVAOBJ) + +## +## Other targets... +## +message: + @echo + @echo "****************************************************************************" + @echo "*** Building Binner Operator Plugin" + @echo "****************************************************************************" + +## +## moc +## +$(MOCSRC) or_no_widgets: $(WIDGETS) + @rm -f $@ + $(MOC) $(@:_moc.C=.h) > $@ + + +## +## Automatic dependency stuff +## +include $(TOPDIR)/include/make-targets diff --git a/visit_plugins/operators/BinnerFilter/PyBinner.C b/visit_plugins/operators/BinnerFilter/PyBinner.C new file mode 100644 index 0000000..5ca1e5c --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/PyBinner.C @@ -0,0 +1,422 @@ +#include +#include +#include +#include + +// **************************************************************************** +// Module: PyBinner +// +// Purpose: +// Bin particles +// +// Note: Autogenerated by xml2python. Do not modify by hand! +// +// Programmer: xml2python +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// **************************************************************************** + +// +// This struct contains the Python type information and a Binner. +// +struct BinnerObject +{ + PyObject_HEAD + Binner *data; + bool owns; +}; + +// +// Internal prototypes +// +static PyObject *NewBinner(int); + +std::string +PyBinner_ToString(const Binner *atts, const char *prefix) +{ + std::string str; + char tmpStr[1000]; + + SNPRINTF(tmpStr, 1000, "%sdim1 = %d\n", prefix, atts->GetDim1()); + str += tmpStr; + SNPRINTF(tmpStr, 1000, "%sdim2 = %d\n", prefix, atts->GetDim2()); + str += tmpStr; + SNPRINTF(tmpStr, 1000, "%sdim3 = %d\n", prefix, atts->GetDim3()); + str += tmpStr; + return str; +} + +static PyObject * +Binner_Notify(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + obj->data->Notify(); + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +Binner_SetDim1(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + + int ival; + if(!PyArg_ParseTuple(args, "i", &ival)) + return NULL; + + // Set the dim1 in the object. + obj->data->SetDim1(ival); + + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +Binner_GetDim1(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + PyObject *retval = PyInt_FromLong(long(obj->data->GetDim1())); + return retval; +} + +static PyObject * +Binner_SetDim2(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + + int ival; + if(!PyArg_ParseTuple(args, "i", &ival)) + return NULL; + + // Set the dim2 in the object. + obj->data->SetDim2(ival); + + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +Binner_GetDim2(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + PyObject *retval = PyInt_FromLong(long(obj->data->GetDim2())); + return retval; +} + +static PyObject * +Binner_SetDim3(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + + int ival; + if(!PyArg_ParseTuple(args, "i", &ival)) + return NULL; + + // Set the dim3 in the object. + obj->data->SetDim3(ival); + + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +Binner_GetDim3(PyObject *self, PyObject *args) +{ + BinnerObject *obj = (BinnerObject *)self; + PyObject *retval = PyInt_FromLong(long(obj->data->GetDim3())); + return retval; +} + + + +static struct PyMethodDef Binner_methods[] = { + {"Notify", Binner_Notify, METH_VARARGS}, + {"SetDim1", Binner_SetDim1, METH_VARARGS}, + {"GetDim1", Binner_GetDim1, METH_VARARGS}, + {"SetDim2", Binner_SetDim2, METH_VARARGS}, + {"GetDim2", Binner_GetDim2, METH_VARARGS}, + {"SetDim3", Binner_SetDim3, METH_VARARGS}, + {"GetDim3", Binner_GetDim3, METH_VARARGS}, + {NULL, NULL} +}; + +// +// Type functions +// + +static void +Binner_dealloc(PyObject *v) +{ + BinnerObject *obj = (BinnerObject *)v; + if(obj->owns) + delete obj->data; +} + +static int +Binner_compare(PyObject *v, PyObject *w) +{ + Binner *a = ((BinnerObject *)v)->data; + Binner *b = ((BinnerObject *)w)->data; + return (*a == *b) ? 0 : -1; +} + +static PyObject * +Binner_getattr(PyObject *self, char *name) +{ + if(strcmp(name, "dim1") == 0) + return Binner_GetDim1(self, NULL); + if(strcmp(name, "dim2") == 0) + return Binner_GetDim2(self, NULL); + if(strcmp(name, "dim3") == 0) + return Binner_GetDim3(self, NULL); + + return Py_FindMethod(Binner_methods, self, name); +} + +static int +Binner_setattr(PyObject *self, char *name, PyObject *args) +{ + // Create a tuple to contain the arguments since all of the Set + // functions expect a tuple. + PyObject *tuple = PyTuple_New(1); + PyTuple_SET_ITEM(tuple, 0, args); + Py_INCREF(args); + bool retval = false; + + if(strcmp(name, "dim1") == 0) + retval = (Binner_SetDim1(self, tuple) != NULL); + else if(strcmp(name, "dim2") == 0) + retval = (Binner_SetDim2(self, tuple) != NULL); + else if(strcmp(name, "dim3") == 0) + retval = (Binner_SetDim3(self, tuple) != NULL); + + Py_DECREF(tuple); + return retval ? 0 : -1; +} + +static int +Binner_print(PyObject *v, FILE *fp, int flags) +{ + BinnerObject *obj = (BinnerObject *)v; + fprintf(fp, "%s", PyBinner_ToString(obj->data, "").c_str()); + return 0; +} + +PyObject * +Binner_str(PyObject *v) +{ + BinnerObject *obj = (BinnerObject *)v; + return PyString_FromString(PyBinner_ToString(obj->data,"").c_str()); +} + +// +// The doc string for the class. +// +static char *Binner_Purpose = "Bin particles"; + +// +// The type description structure +// +static PyTypeObject BinnerType = +{ + // + // Type header + // + PyObject_HEAD_INIT(&PyType_Type) + 0, // ob_size + "Binner", // tp_name + sizeof(BinnerObject), // tp_basicsize + 0, // tp_itemsize + // + // Standard methods + // + (destructor)Binner_dealloc, // tp_dealloc + (printfunc)Binner_print, // tp_print + (getattrfunc)Binner_getattr, // tp_getattr + (setattrfunc)Binner_setattr, // tp_setattr + (cmpfunc)Binner_compare, // tp_compare + (reprfunc)0, // tp_repr + // + // Type categories + // + 0, // tp_as_number + 0, // tp_as_sequence + 0, // tp_as_mapping + // + // More methods + // + 0, // tp_hash + 0, // tp_call + (reprfunc)Binner_str, // tp_str + 0, // tp_getattro + 0, // tp_setattro + 0, // tp_as_buffer + Py_TPFLAGS_CHECKTYPES, // tp_flags + Binner_Purpose, // tp_doc + 0, // tp_traverse + 0, // tp_clear + 0, // tp_richcompare + 0 // tp_weaklistoffset +}; + +// +// Helper functions for object allocation. +// + +static Binner *defaultAtts = 0; +static Binner *currentAtts = 0; + +static PyObject * +NewBinner(int useCurrent) +{ + BinnerObject *newObject; + newObject = PyObject_NEW(BinnerObject, &BinnerType); + if(newObject == NULL) + return NULL; + if(useCurrent && currentAtts != 0) + newObject->data = new Binner(*currentAtts); + else if(defaultAtts != 0) + newObject->data = new Binner(*defaultAtts); + else + newObject->data = new Binner; + newObject->owns = true; + return (PyObject *)newObject; +} + +static PyObject * +WrapBinner(const Binner *attr) +{ + BinnerObject *newObject; + newObject = PyObject_NEW(BinnerObject, &BinnerType); + if(newObject == NULL) + return NULL; + newObject->data = (Binner *)attr; + newObject->owns = false; + return (PyObject *)newObject; +} + +/////////////////////////////////////////////////////////////////////////////// +// +// Interface that is exposed to the VisIt module. +// +/////////////////////////////////////////////////////////////////////////////// + +PyObject * +Binner_new(PyObject *self, PyObject *args) +{ + int useCurrent = 0; + if (!PyArg_ParseTuple(args, "i", &useCurrent)) + { + if (!PyArg_ParseTuple(args, "")) + return NULL; + else + PyErr_Clear(); + } + + return (PyObject *)NewBinner(useCurrent); +} + +// +// Plugin method table. These methods are added to the visitmodule's methods. +// +static PyMethodDef BinnerMethods[] = { + {"Binner", Binner_new, METH_VARARGS}, + {NULL, NULL} /* Sentinel */ +}; + +static Observer *BinnerObserver = 0; + +std::string +PyBinner_GetLogString() +{ + std::string s("Binner = Binner()\n"); + if(currentAtts != 0) + s += PyBinner_ToString(currentAtts, "Binner."); + return s; +} + +static void +PyBinner_CallLogRoutine(Subject *subj, void *data) +{ + Binner *atts = (Binner *)subj; + typedef void (*logCallback)(const std::string &); + logCallback cb = (logCallback)data; + + if(cb != 0) + { + std::string s("Binner = Binner()\n"); + s += PyBinner_ToString(currentAtts, "Binner."); + cb(s); + } +} + +void +PyBinner_StartUp(Binner *subj, void *data) +{ + if(subj == 0) + return; + + currentAtts = subj; + PyBinner_SetDefaults(subj); + + // + // Create the observer that will be notified when the attributes change. + // + if(BinnerObserver == 0) + { + BinnerObserver = new ObserverToCallback(subj, + PyBinner_CallLogRoutine, (void *)data); + } + +} + +void +PyBinner_CloseDown() +{ + delete defaultAtts; + defaultAtts = 0; + delete BinnerObserver; + BinnerObserver = 0; +} + +PyMethodDef * +PyBinner_GetMethodTable(int *nMethods) +{ + *nMethods = 1; + return BinnerMethods; +} + +bool +PyBinner_Check(PyObject *obj) +{ + return (obj->ob_type == &BinnerType); +} + +Binner * +PyBinner_FromPyObject(PyObject *obj) +{ + BinnerObject *obj2 = (BinnerObject *)obj; + return obj2->data; +} + +PyObject * +PyBinner_NewPyObject() +{ + return NewBinner(0); +} + +PyObject * +PyBinner_WrapPyObject(const Binner *attr) +{ + return WrapBinner(attr); +} + +void +PyBinner_SetDefaults(const Binner *atts) +{ + if(defaultAtts) + delete defaultAtts; + + defaultAtts = new Binner(*atts); +} + diff --git a/visit_plugins/operators/BinnerFilter/PyBinner.h b/visit_plugins/operators/BinnerFilter/PyBinner.h new file mode 100644 index 0000000..d6bccd7 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/PyBinner.h @@ -0,0 +1,21 @@ +#ifndef PY_BINNER_H +#define PY_BINNER_H +#include +#include + +// +// Functions exposed to the VisIt module. +// +void PyBinner_StartUp(Binner *subj, void *data); +void PyBinner_CloseDown(); +PyMethodDef *PyBinner_GetMethodTable(int *nMethods); +bool PyBinner_Check(PyObject *obj); +Binner *PyBinner_FromPyObject(PyObject *obj); +PyObject *PyBinner_NewPyObject(); +PyObject *PyBinner_WrapPyObject(const Binner *attr); +void PyBinner_SetDefaults(const Binner *atts); +std::string PyBinner_GetLogString(); +std::string PyBinner_ToString(const Binner *, const char *); + +#endif + diff --git a/visit_plugins/operators/BinnerFilter/QvisBinnerWindow.C b/visit_plugins/operators/BinnerFilter/QvisBinnerWindow.C new file mode 100644 index 0000000..56772ea --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/QvisBinnerWindow.C @@ -0,0 +1,279 @@ +#include "QvisBinnerWindow.h" + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +using std::string; + +// **************************************************************************** +// Method: QvisBinnerWindow::QvisBinnerWindow +// +// Purpose: +// Constructor +// +// Programmer: xml2window +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +QvisBinnerWindow::QvisBinnerWindow(const int type, + Binner *subj, + const char *caption, + const char *shortName, + QvisNotepadArea *notepad) + : QvisOperatorWindow(type,subj, caption, shortName, notepad) +{ + atts = subj; +} + + +// **************************************************************************** +// Method: QvisBinnerWindow::~QvisBinnerWindow +// +// Purpose: +// Destructor +// +// Programmer: xml2window +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +QvisBinnerWindow::~QvisBinnerWindow() +{ +} + + +// **************************************************************************** +// Method: QvisBinnerWindow::CreateWindowContents +// +// Purpose: +// Creates the widgets for the window. +// +// Programmer: xml2window +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +QvisBinnerWindow::CreateWindowContents() +{ + QGridLayout *mainLayout = new QGridLayout(topLayout, 3,2, 10, "mainLayout"); + + + dim1Label = new QLabel("dim1", central, "dim1Label"); + mainLayout->addWidget(dim1Label,0,0); + dim1 = new QLineEdit(central, "dim1"); + connect(dim1, SIGNAL(returnPressed()), + this, SLOT(dim1ProcessText())); + mainLayout->addWidget(dim1, 0,1); + + dim2Label = new QLabel("dim2", central, "dim2Label"); + mainLayout->addWidget(dim2Label,1,0); + dim2 = new QLineEdit(central, "dim2"); + connect(dim2, SIGNAL(returnPressed()), + this, SLOT(dim2ProcessText())); + mainLayout->addWidget(dim2, 1,1); + + dim3Label = new QLabel("dim3", central, "dim3Label"); + mainLayout->addWidget(dim3Label,2,0); + dim3 = new QLineEdit(central, "dim3"); + connect(dim3, SIGNAL(returnPressed()), + this, SLOT(dim3ProcessText())); + mainLayout->addWidget(dim3, 2,1); + +} + + +// **************************************************************************** +// Method: QvisBinnerWindow::UpdateWindow +// +// Purpose: +// Updates the widgets in the window when the subject changes. +// +// Programmer: xml2window +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +QvisBinnerWindow::UpdateWindow(bool doAll) +{ + QString temp; + double r; + + for(int i = 0; i < atts->NumAttributes(); ++i) + { + if(!doAll) + { + if(!atts->IsSelected(i)) + { + continue; + } + } + + const double *dptr; + const float *fptr; + const int *iptr; + const char *cptr; + const unsigned char *uptr; + const string *sptr; + QColor tempcolor; + switch(i) + { + case 0: //dim1 + temp.sprintf("%d", atts->GetDim1()); + dim1->setText(temp); + break; + case 1: //dim2 + temp.sprintf("%d", atts->GetDim2()); + dim2->setText(temp); + break; + case 2: //dim3 + temp.sprintf("%d", atts->GetDim3()); + dim3->setText(temp); + break; + } + } +} + + +// **************************************************************************** +// Method: QvisBinnerWindow::GetCurrentValues +// +// Purpose: +// Gets values from certain widgets and stores them in the subject. +// +// Programmer: xml2window +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +QvisBinnerWindow::GetCurrentValues(int which_widget) +{ + bool okay, doAll = (which_widget == -1); + QString msg, temp; + + // Do dim1 + if(which_widget == 0 || doAll) + { + temp = dim1->displayText().simplifyWhiteSpace(); + okay = !temp.isEmpty(); + if(okay) + { + int val = temp.toInt(&okay); + atts->SetDim1(val); + } + + if(!okay) + { + msg.sprintf("The value of dim1 was invalid. " + "Resetting to the last good value of %d.", + atts->GetDim1()); + Message(msg); + atts->SetDim1(atts->GetDim1()); + } + } + + // Do dim2 + if(which_widget == 1 || doAll) + { + temp = dim2->displayText().simplifyWhiteSpace(); + okay = !temp.isEmpty(); + if(okay) + { + int val = temp.toInt(&okay); + atts->SetDim2(val); + } + + if(!okay) + { + msg.sprintf("The value of dim2 was invalid. " + "Resetting to the last good value of %d.", + atts->GetDim2()); + Message(msg); + atts->SetDim2(atts->GetDim2()); + } + } + + // Do dim3 + if(which_widget == 2 || doAll) + { + temp = dim3->displayText().simplifyWhiteSpace(); + okay = !temp.isEmpty(); + if(okay) + { + int val = temp.toInt(&okay); + atts->SetDim3(val); + } + + if(!okay) + { + msg.sprintf("The value of dim3 was invalid. " + "Resetting to the last good value of %d.", + atts->GetDim3()); + Message(msg); + atts->SetDim3(atts->GetDim3()); + } + } + +} + + +// +// Qt Slot functions +// + + +void +QvisBinnerWindow::dim1ProcessText() +{ + GetCurrentValues(0); + Apply(); +} + + +void +QvisBinnerWindow::dim2ProcessText() +{ + GetCurrentValues(1); + Apply(); +} + + +void +QvisBinnerWindow::dim3ProcessText() +{ + GetCurrentValues(2); + Apply(); +} + + diff --git a/visit_plugins/operators/BinnerFilter/QvisBinnerWindow.h b/visit_plugins/operators/BinnerFilter/QvisBinnerWindow.h new file mode 100644 index 0000000..baaaf84 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/QvisBinnerWindow.h @@ -0,0 +1,67 @@ +#ifndef QVISBINNERWINDOW_H +#define QVISBINNERWINDOW_H + +#include +#include + +class Binner; +class QLabel; +class QCheckBox; +class QLineEdit; +class QSpinBox; +class QVBox; +class QButtonGroup; +class QvisColorTableButton; +class QvisOpacitySlider; +class QvisColorButton; +class QvisLineStyleWidget; +class QvisLineWidthWidget; +class QvisVariableButton; + +// **************************************************************************** +// Class: QvisBinnerWindow +// +// Purpose: +// Defines QvisBinnerWindow class. +// +// Notes: This class was automatically generated! + +// Programmer: xml2window +// Creation: Thu Mar 30 12:05:26 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class QvisBinnerWindow : public QvisOperatorWindow +{ + Q_OBJECT + public: + QvisBinnerWindow(const int type, + Binner *subj, + const char *caption = 0, + const char *shortName = 0, + QvisNotepadArea *notepad = 0); + virtual ~QvisBinnerWindow(); + virtual void CreateWindowContents(); + protected: + void UpdateWindow(bool doAll); + virtual void GetCurrentValues(int which_widget); + private slots: + void dim1ProcessText(); + void dim2ProcessText(); + void dim3ProcessText(); + private: + QLineEdit *dim1; + QLineEdit *dim2; + QLineEdit *dim3; + QLabel *dim1Label; + QLabel *dim2Label; + QLabel *dim3Label; + + Binner *atts; +}; + + + +#endif diff --git a/visit_plugins/operators/BinnerFilter/avtBinnerFilter.C b/visit_plugins/operators/BinnerFilter/avtBinnerFilter.C new file mode 100644 index 0000000..e5049c6 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/avtBinnerFilter.C @@ -0,0 +1,350 @@ +// ************************************************************************* // +// File: avtBinnerFilter.C +// ************************************************************************* // + +#include +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include + +#ifdef PARALLEL_IO +#include +#include +#endif + + +// **************************************************************************** +// Method: avtBinnerFilter constructor +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// **************************************************************************** + +avtBinnerFilter::avtBinnerFilter() +{ + nprocs = 1; + #ifdef PARALLEL_IO + nprocs = PAR_Size(); + #endif + sgrid = NULL; + dims[0] = 10; + dims[1] = 10; + dims[2] = 10; + +} + + +// **************************************************************************** +// Method: avtBinnerFilter destructor +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// Modifications: +// +// **************************************************************************** + +avtBinnerFilter::~avtBinnerFilter() +{ +} + + +// **************************************************************************** +// Method: avtBinnerFilter::Create +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// **************************************************************************** + +avtFilter * +avtBinnerFilter::Create() +{ + return new avtBinnerFilter(); +} + + +// **************************************************************************** +// Method: avtBinnerFilter::SetAtts +// +// Purpose: +// Sets the state of the filter based on the attribute object. +// +// Arguments: +// a The attributes to use. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// **************************************************************************** + +void +avtBinnerFilter::SetAtts(const AttributeGroup *a) +{ + atts = *(const Binner*)a; +} + + + +// **************************************************************************** +// Method: avtBinnerFilter::Equivalent +// +// Purpose: +// Returns true if creating a new avtBinnerFilter with the given +// parameters would result in an equivalent avtBinnerFilter. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// **************************************************************************** + +bool +avtBinnerFilter::Equivalent(const AttributeGroup *a) +{ + return (atts == *(Binner*)a); +} + + +// **************************************************************************** +// Method: avtBinnerFilter::PreExecute +// +// Purpose: +// Called before "Execute". This will set up the range's we are operating +// on and the data structures we use to count the density. +// +// Programmer: +// Creation: +// +// **************************************************************************** + +void +avtBinnerFilter::PreExecute(void) + +{ + cout << "In PreExecute\n"; + avtStreamer::PreExecute(); + ndims = GetInput()->GetInfo().GetAttributes().GetSpatialDimension(); + if (ndims < 2) { + EXCEPTION2(InvalidDimensionsException, "Binner", " <2D"); + } + dims[0] = atts.GetDim1()+1; + dims[1] = atts.GetDim2()+1; + if (ndims == 2) + dims[2] == 1; + else + dims[2] = atts.GetDim3()+1; + grid_size = dims[0]*dims[1]*dims[2]; + data = (float *) calloc (grid_size, sizeof(float)); + avtDataset_p input = GetTypedInput(); + avtDatasetExaminer::GetSpatialExtents(input, extents); +#ifdef PARALLEL_IO + UnifyMinMax(extents, 2*ndims, 0); +#endif + for (int i=0; i < ndims; i++){ + cout << "spatial extents: " << extents[2*i+1] << " " << extents[2*i] << "\n"; + } +} + +// **************************************************************************** +// Method: avtBinnerFilter::ExecuteData +// +// Purpose: +// Sends the specified input and output through the Binner filter. +// +// Arguments: +// in_ds The input dataset. +// The domain number. +// The label. +// +// Returns: The output dataset. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// **************************************************************************** + +vtkDataSet * +avtBinnerFilter::ExecuteData(vtkDataSet *in_ds, int domain, std::string) +{ + +cout << "domain: " << domain << "\n"; + float x[3]; + + int numvar = GetInput()->GetInfo().GetAttributes().GetNumberOfVariables(); + cout << "numvar: " << numvar << "\n"; + for (int i=0; i < numvar; i++){ + cout << GetInput()->GetInfo().GetAttributes().GetVariableName(i) << "\n"; + } + for (int i=0; i < ndims; i++){ + step[i] = (extents[2*i+1] - extents[2*i])/(dims[i]-1); + } + + for (int i=0; i < ndims; i++){ + extents[2*i] = extents[2*i] - 2*step[i]; + extents[2*i+1] = extents[2*i+1] + 2*step[i]; + } + + for (int i=0; i < ndims; i++){ + step[i] = (extents[2*i+1] - extents[2*i])/(dims[i]-1); + } + + vtkPointData *inPD = in_ds->GetPointData(); + vtkDataArray *in_data = inPD->GetScalars(); + vtkPointData *outPD = sgrid->GetPointData(); + + vtkIdType npoints = in_ds->GetNumberOfPoints(); + cout << "I have data: npoints: " << in_data->GetName() << " " << npoints << "\n"; + int bin[3]; + float delta[3]; + for (vtkIdType i = 0; i < npoints; i++) { + in_ds->GetPoint(i, x); + + /* find the corresponding bin */ + for (int j=0; j < ndims; j++){ + delta[j] = (x[j] - extents[2*j])/step[j]; + bin[j] = (int) delta[j]; + } + if (ndims == 2){ + bin[2] = 0; + } + + /* 5 contribution */ + data[bin[0]+ dims[0] * ( dims[1] * bin[2] + bin[1])] += 1; + } + float check_nptlc = 0.0; + for (vtkIdType i=0; i < grid_size; i++){ + check_nptlc += data[i]; + } + cout << "nptlc " << check_nptlc << "\n"; + cout << "npoints " << npoints << "\n"; + return NULL; +} + +// **************************************************************************** +// Method: avtBinnerFilter::RefashionDataObjectInfo +// +// Purpose: +// Tells the output that +// +// **************************************************************************** + +void +avtBinnerFilter::RefashionDataObjectInfo(void) +{ + cout << "Refashioning\n"; + avtDataAttributes &inAtts = GetInput()->GetInfo().GetAttributes(); + avtDataAttributes &outAtts = GetOutput()->GetInfo().GetAttributes(); + if (pipelineVariable != NULL){ + outAtts.AddVariable(pipelineVariable); + outAtts.SetVariableDimension(1, pipelineVariable); + outAtts.SetVariableType(AVT_SCALAR_VAR, pipelineVariable); + outAtts.SetCentering(AVT_ZONECENT, pipelineVariable); + outAtts.SetActiveVariable(pipelineVariable); + outAtts.GetTrueDataExtents(pipelineVariable)->Clear(); + outAtts.GetTrueDataExtents(pipelineVariable)->Set(drange); + outAtts.GetCurrentDataExtents()->Clear(); + outAtts.GetCurrentDataExtents()->Set(drange); + } + outAtts.GetEffectiveSpatialExtents()->Set(extents); + outAtts.GetCumulativeCurrentSpatialExtents()->Set(extents); + outAtts.GetCumulativeTrueSpatialExtents()->Set(extents); + outAtts.GetTrueSpatialExtents()->Set(extents); + outAtts.SetSpatialDimension(inAtts.GetSpatialDimension()); + outAtts.SetTopologicalDimension(inAtts.GetSpatialDimension()); +} + +// **************************************************************************** +// Method: avtBinnerFilter::VerifyInput +// +// Purpose: +// Verifies the input +// **************************************************************************** +void +avtBinnerFilter::VerifyInput(void) +{ + cout << "Checking Spatial Dimensions: " << GetInput()->GetInfo().GetAttributes().GetSpatialDimension() << "\n"; + cout << "Checking Topological Dimensions: " << GetInput()->GetInfo().GetAttributes().GetTopologicalDimension() << "\n"; + +} + + +void +avtBinnerFilter::PostExecute(void) +{ + avtPluginStreamer::PostExecute(); + /* need to put the data together */ +#ifdef PARALLEL_IO + cout << "In PostExecute : " << PAR_Rank() << "\n"; +#endif + vtkFloatArray *out_data = vtkFloatArray::New(); + out_data->Resize(grid_size); + out_data->FillComponent(0,0.0); +#ifdef PARALLEL_IO + SumFloatArrayAcrossAllProcessors(data, out_data->GetPointer(0), grid_size); +#else + memcpy(out_data->GetPointer(0), data, grid_size*sizeof(float)); +#endif + // Create the structured grid. + float x[3]; +#ifdef PARALLEL_IO + cout << "making the grid: " << PAR_Rank() << "\n"; +#endif + sgrid = vtkStructuredGrid::New(); + sgrid->SetDimensions(dims); + + vtkPoints *points = vtkPoints::New(); + points->Allocate(grid_size); + + + for ( int k=0; kInsertNextPoint(x); + } + } + } + sgrid->SetPoints(points); + points->Delete(); + + out_data->SetName(pipelineVariable); + sgrid->GetPointData()->SetScalars(out_data); + sgrid->GetScalarRange(dataRange); + drange[0] = (double) dataRange[0]; + drange[1] = (double) dataRange[1]; +#ifdef PARALLEL_IO + UnifyMinMax(drange, 2, 0); +#endif +cout << "drange: " << drange[0] << " " << drange[1] << "\n"; + out_data->Delete(); + out_data = NULL; + sgrid->Update(); +#ifdef PARALLEL_IO + if (PAR_Rank() == 0){ +#endif + avtDataTree_p tree = new avtDataTree(); + tree = new avtDataTree(sgrid, 0); + SetOutputDataTree(tree); + sgrid->Delete(); + sgrid = NULL; +#ifdef PARALLEL_IO + } +#endif + RefashionDataObjectInfo(); +} diff --git a/visit_plugins/operators/BinnerFilter/avtBinnerFilter.h b/visit_plugins/operators/BinnerFilter/avtBinnerFilter.h new file mode 100644 index 0000000..93d96a7 --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/avtBinnerFilter.h @@ -0,0 +1,64 @@ +// ************************************************************************* // +// File: avtBinnerFilter.h +// ************************************************************************* // + +#ifndef AVT_Binner_FILTER_H +#define AVT_Binner_FILTER_H + + +#include +#include + + + +class vtkDataSet; +class vtkStructuredGrid; + +// **************************************************************************** +// Class: avtBinnerFilter +// +// Purpose: +// A plugin operator for Binner. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 16 15:04:17 PST 2006 +// +// **************************************************************************** + +class avtBinnerFilter : public avtPluginStreamer +{ + public: + avtBinnerFilter(); + virtual ~avtBinnerFilter(); + + static avtFilter *Create(); + + virtual const char *GetType(void) { return "avtBinnerFilter"; }; + virtual const char *GetDescription(void) + { return "Binner"; }; + + virtual void SetAtts(const AttributeGroup*); + virtual bool Equivalent(const AttributeGroup*); + + protected: + Binner atts; + virtual void RefashionDataObjectInfo(void); + virtual void VerifyInput(void); + virtual vtkDataSet *ExecuteData(vtkDataSet *, int, std::string); + virtual void PostExecute(void); + virtual void PreExecute(void); + private: + vtkStructuredGrid *sgrid; + int nprocs; + int ndims; + int grid_size; + int dims[3]; + double extents[6]; + float step[3]; + float dataRange[2]; + double drange[2]; + float *data; +}; + + +#endif diff --git a/visit_plugins/operators/BinnerFilter/icon.xpm b/visit_plugins/operators/BinnerFilter/icon.xpm new file mode 100644 index 0000000..b8f3b5b --- /dev/null +++ b/visit_plugins/operators/BinnerFilter/icon.xpm @@ -0,0 +1,519 @@ +/* XPM */ +static const char *icon_xpm[] = { +/* width height num_colors chars_per_pixel */ +" 256 256 256 2", +/* colors */ +".. c #000000", +".# c #030b01", +".a c #061101", +".b c #081502", +".c c #0b1b02", +".d c #101f03", +".e c #0e2103", +".f c #132b04", +".g c #112503", +".h c #1a3505", +".i c #223b05", +".j c #303f04", +".k c #274606", +".l c #394c05", +".m c #375606", +".n c #2c5308", +".o c #3a680c", +".p c #27661a", +".q c #791428", +".r c #771b37", +".s c #6b1b37", +".t c #7a0f1f", +".u c #5b2c59", +".v c #5c264e", +".w c #5b356b", +".x c #583366", +".y c #5b3973", +".z c #573b78", +".A c #4e3972", +".B c #692348", +".C c #672b57", +".D c #772347", +".E c #762b58", +".F c #71305d", +".G c #63356b", +".H c #6b3163", +".I c #673468", +".J c #633973", +".K c #633d7b", +".L c #6b3973", +".M c #6a3c7a", +".N c #773367", +".O c #763b77", +".P c #6e2f60", +".Q c #721f40", +".R c #404d04", +".S c #475705", +".T c #515e05", +".U c #496507", +".V c #556906", +".W c #5a7508", +".X c #49780e", +".Y c #667706", +".Z c #6b7704", +".0 c #516b33", +".1 c #6f417b", +".2 c #6f716e", +".3 c #5c5d61", +".4 c #6e3f80", +".5 c #553f80", +".6 c #4b4386", +".7 c #584387", +".8 c #574b96", +".9 c #4f4b96", +"#. c #5a52a5", +"## c #5c58b1", +"#a c #6b4183", +"#b c #664488", +"#c c #684b96", +"#d c #764487", +"#e c #774b96", +"#f c #735398", +"#g c #6754a7", +"#h c #685bb6", +"#i c #7853a6", +"#j c #785bb6", +"#k c #724fa0", +"#l c #7464b5", +"#m c #7764c7", +"#n c #7269d0", +"#o c #7971e2", +"#p c #31902d", +"#q c #34a838", +"#r c #1d9036", +"#s c #2db347", +"#t c #13ab4c", +"#u c #27d35d", +"#v c #548915", +"#w c #4a9525", +"#x c #50ad2f", +"#y c #688609", +"#z c #768806", +"#A c #70950e", +"#B c #75a814", +"#C c #6cb22a", +"#D c #67952f", +"#E c #65a855", +"#F c #68cc33", +"#G c #59d854", +"#H c #3dc13e", +"#I c #3ff293", +"#J c #8a0206", +"#K c #870b18", +"#L c #970205", +"#M c #960b17", +"#N c #90101d", +"#O c #871428", +"#P c #871b36", +"#Q c #961427", +"#R c #971b36", +"#S c #900f20", +"#T c #a70205", +"#U c #a70b17", +"#V c #b70205", +"#W c #b50d16", +"#X c #a71427", +"#Y c #a71b37", +"#Z c #b71b38", +"#0 c #b61326", +"#1 c #a02339", +"#2 c #862447", +"#3 c #872b56", +"#4 c #972447", +"#5 c #972b57", +"#6 c #8f3259", +"#7 c #863468", +"#8 c #873b77", +"#9 c #973467", +"a. c #963b78", +"a# c #8e2f60", +"aa c #a72447", +"ab c #a72b57", +"ac c #b72447", +"ad c #b62b57", +"ae c #b03555", +"af c #a73467", +"ag c #a63b77", +"ah c #b73467", +"ai c #b73b76", +"aj c #ab2f60", +"ak c #9e1f40", +"al c #8e4478", +"am c #b14775", +"an c #b54459", +"ao c #c70204", +"ap c #d70204", +"aq c #ce0d17", +"ar c #ce172f", +"as c #d12734", +"at c #e70205", +"au c #fe0204", +"av c #f50508", +"aw c #fa0b16", +"ax c #f01117", +"ay c #f91626", +"az c #ec1930", +"aA c #f82832", +"aB c #c72346", +"aC c #d12b51", +"aD c #c73567", +"aE c #c73c77", +"aF c #d7386f", +"aG c #ed2b4e", +"aH c #e63668", +"aI c #d81f40", +"aJ c #cd4775", +"aK c #fb4951", +"aL c #f14c70", +"aM c #e85d68", +"aN c #943f80", +"aO c #864487", +"aP c #864b97", +"aQ c #974487", +"aR c #964b97", +"aS c #8f5595", +"aT c #8754a7", +"aU c #885ab6", +"aV c #9654a7", +"aW c #975bb6", +"aX c #8d4fa0", +"aY c #9864b9", +"aZ c #8f68ae", +"a0 c #a64487", +"a1 c #a74b96", +"a2 c #b64588", +"a3 c #b74b96", +"a4 c #af5496", +"a5 c #a655a7", +"a6 c #a75bb6", +"a7 c #b755a7", +"a8 c #b65bb7", +"a9 c #b04fa0", +"b. c #a764b9", +"b# c #b16bb1", +"ba c #a46797", +"bb c #8864c6", +"bc c #9764c6", +"bd c #986bd5", +"be c #8c70d5", +"bf c #9077ec", +"bg c #a765c7", +"bh c #a76bd6", +"bi c #b565c6", +"bj c #b074d3", +"bk c #a675e5", +"bl c #ab79e9", +"bm c #9e5fc0", +"bn c #c74587", +"bo c #c64b98", +"bp c #d24c8e", +"bq c #c555a6", +"br c #c759ad", +"bs c #ce6bb2", +"bt c #ea568b", +"bu c #f46b91", +"bv c #eb71ac", +"bw c #d16b93", +"bx c #cb77ca", +"by c #e17cc5", +"bz c #cf3f80", +"bA c #879706", +"bB c #8b9709", +"bC c #97a706", +"bD c #8eb00e", +"bE c #a7b705", +"bF c #aab409", +"bG c #94b22a", +"bH c #89a765", +"bI c #95c715", +"bJ c #b1c90b", +"bK c #a2db28", +"bL c #9ae455", +"bM c #c9d509", +"bN c #d3e70e", +"bO c #ebf10b", +"bP c #daea2c", +"bQ c #dff24c", +"bR c #8e928d", +"bS c #adafad", +"bT c #a692ac", +"bU c #9286f8", +"bV c #b48bd0", +"bW c #b18def", +"bX c #aea2e4", +"bY c #e58ab0", +"bZ c #cf8cd3", +"b0 c #cc93e7", +"b1 c #cfabd5", +"b2 c #d2adf0", +"b3 c #ea8fd1", +"b4 c #ebb0ed", +"b5 c #eba4da", +"b6 c #d0d0d1", +"b7 c #eeccf6", +"b8 c #e1d6f3", +"b9 c #b2d2a5", +/* pixels */ +"aWbjb4aW.7.5.A#ibVbf.y.ybbaU#i#c.5.A#cb8.z#fbVa6b0a8bhbgaW#i.4.xbkb0bmaVaX#k#k#e.1.K.w.1b4aW.waPaO.O.ubmaT.4.4.w.x.1b4bgaT#baUaTbhb4b0aW#k.4.xa6aV#d.y.xaPaQ#8a3a9aXaX.4.O.x.1b8.H.H.u.1baa4.v.HbZa7a4#8.F.Ca3a2a0#9.N.B.Ca.......................aBaBaa#P.rae#X..............................atao#Janazar#Xb6aGadab#2.r#2b4...q#O#YaB............#Kar#0#Q#O#KbY....................#U#M.t#MaA..........................................................#L#Jas..................................................................", +".6bjbjaW#d#c#g#maT#d.w.4bf.4bhbcaU#i.8bb......aVaVbhb4b0aV#e.5.xbcbcaTaT.4.J.J.4.y.x#daZaYaS.....I.ubhbhaWaX.4.z#daZbmaT.4.y.4.4bhb0bhaT#k.5.w#i#e.4.xbaaW#8.Pa9a1.O.4.4.u.1b#bg.....N#8.H.C.Fa7a1a1a.#7.C.Ha.a.a.#7.C.FbT#3..........aIac#O........#R#P#Pamar#S#Q..............................#L#0aAbvar#QaGb3aC#P.r#6bw....aGaB#R..................#S#O#OaC........................#M#Wax.....................#auavao#L................................................................avao..................................", +".8a6aV#e.y.xaWaT.4.A.yaSblbkbhbdaU#i#b.y........aObibjb.aT#d.y.waX#i.4.4.y.y.4.J.4.4aPaW#eb7a6aT.4bhb7bjaV#e.1.w....ad#b.y.ybV.ybmbcaT#e.4.A.yaT.4.x#bb.aP.Pbybxa1bia6aR.4aR..#Z..............#ZaN#8#7.C.FbV#U.N.E.C.Eala7#9........a3a3aQ#7..........#4aa#0#Xar#O.....#..aiag........aIar#Qazar#X..aAaz#Yah#5aH#Z#Raa#4....aGbuaB#Y.q....................ar..............ayawaq#L..............................auaAaw#V#L.............................................................#aKawao#L................................", +"#gbb#e.4.x#d.4#b.J.ybTbVbhb7b0bc#j#k#b.7.4........aWaWaT#e.z.x#aaT.7bg.w.1#daT.M.1.w.x.1bZbZbgaX.4bjb0bjaT#c.y.yaPaR.O#d#baTbgaUaUaT#e#b.y.JbTaWaWaT#daY#ea7bxbra8b4bxaR.O.I.OaB#O....bnag.E....#O.H.C.CaSa1bqb4.P.Eala0#6am......bqbybra0#7.C............aGaGar#Q....btbzaEaf#3.B..aGbtar#Q#Rar#Q#Qarbzbtai#5.D#Y#O#4aC....aHaG#Z#P.q..................................awaKaGao#M#U..............................auat#T#L............................................................auavap#V#J................................", +"bT.J.M.x#fbV.L.J.yaXbmbkblb2b2bcaT#e.4.K#b........aT#e#e.4.x.1b6.4bjbhbmaX.4.w#c.7.G#daXbhb0biaP.4bmbma6a5aXaO.4aTaP.O.u.J.MaT#e#b#e.4.w.1aZb0bibgaV#e.4.4a1a1aQa5a8aRal.H.uaOaraCaabvboaf.E.E........#8#La3bsbsbq#7.E.C#7........bobybsa.#7.B#7..........aGaL#Z#K...#bpbyaiaf#2.Bbpbpai#9.B#1#X.t#1..bpbuah#4.D#3#Pbu......aBac#1.q#1..................................axaxaq#T#K#W............................axaKat#V#J............................................................apap#V#L#W................................", +"beaSaWbxa6#d.x.Mbb#i.8bhblbkbdaY#e#c.5.z.7#i.........4.4.x.1aZbm.5bxb2aW#i.4.w.4#b#ebb.4bmbmbgaWaXbia8a6a5aRaO.4.xaO.L.xaRar.K#b.x.y.5.y#faYbhb7bjaTaP.4.yaQaN#8a5aRaO.1.u.Ia5bza3a0#7bna#.E#3............a0boa0a1aN.N.Ca0........a3a2a0#7.E.Cal#R........asar#X.qaraEbpaJaf#3.B.Dbpbyama#.DaC#N#Qb5..aEah#5#2.s#5aB........#Y#R#O.qaM..................................aqao#U#K#Uaz............................aAayap#T#Jauat#V........................................................#L#J#0..................................", +"....aVaVaO.L.waV#c.7.5bcbcbcaU#k#b.z.y.K#faU........#c.4.1#eaW.4bmbmaX#e.4.w.waP.....I.GaVbhb0a6aXbib4bja5aPaO.4.u.O.u.La5bdbc#i.z....#P#2adbxbxbj#i.4.y.yb1.H.NaOaO.L.I.Ib1azbybsaQ.N.F.E.Ba2............bya0bra9aR#7.Pboboa2a..Ea0a.#7.P.valba#R.q......#R#X#K#1....ahaf#6.D.B#2bnai#6#3.Bag#Qas..ayafab#2.s#6amb6..........#R#RaB................aGaGac#Q..............#L#M#0az.................#............avap#V#J#WaKat#V#L..............................................................................................", +"......#d.M.Mbaa6..#cbfaUaUaU#i#c#b.A.A#caZbb..bkbdaU#k.5aTaX.4.ybhbhaUaT.4.yaVaP.4bhbb#ebmaV#ebgbibyb0bxaVaO.4.I.u.O.1b7bhb4aWbWbc#i.5....aWbgaWaX#e.4.x.KaZ..bi#7.I.L.Oba.ubqbya7#8.P.C.Bbw......bpbnaf.Eadbrb4a7aQaNbqbvbsa0a..E.B#7.F.C.EbZac#P#R......boboa2a..E..#5#6.D.D#6bsag#9.E.Bal#0....azaK#2#2.Q#6bpaa#P........aGaHaI#0.q....aGaGaI#Z#QaGaL#Y#O#Y....ayayax#W#J......................auavao#J......ao#V#L#LaMawao#T#L..............................................................................................", +".........ybhbcaU#i.z#j#i#i#k#c.4.A.A.7bVb1..bWb2bcaU#f#b.7.4.Jbhb0bgaU#e#a.x.4aX.4.wbibib#aV#e.Ka6bxa8a5aRaO.L.x.x#db#bjbhbhbkb4aU#e.7#c....aVaT#e.K.x.1aS....aTa9a8a1#8a8a5aR.OaN.N.C.N#9........bybra.a3a7a7bsa7a..Obqb3bsam#8.F.B.E.E#7a0ag#3.B#Y.....#bvb5a0a..E.Bai.D.Da#bnaG#3#3.B#7am.#.#..bnaiaf#J#5aLaC#1.rbS......aGbuaB#Y#O....aGbYaB#Y#O#O#Z#R.qaB....ayaMar#W#K.#..........avap#VaqavaKawao#L.#auauap#T#Tapatap#V#J#V..auavao#J....................................................................................", +"........bhb2bcaU#e.4.y#j.4#c.5.y.x.z#ib1bhbkb2b2bc#j#c.z.5.4bhb2b2bjaT#e.K.y.4aP.4.w.Lb4bVaX#d.Ga5a6aVaPaO.O.I.u.IaSbbaTbc#ibdbc#e#b.5#f.L..#e#e#b.1.yaZbi.....4.4aQaNbrb4a5aO.O.xbiaWaX.M.D....a2a2#9brb3a1a5a1aN.N.va3bqa2#8.N.C.CaQbzb4a2ag#6.B......bobvbsa2#8.E.Caf#5#3aFah#9.DaEaga.aK..bzbvbqai#9#3.Dadak#P.rae......aIaI#Z#Q#O#ZaIaGaGaC#X.q#P#Q#Oaa......azar#0#M#Kaq........auawat#V#J#Tatao#T#JapaAaAao#Latat#V#T#J#0avauaAax#V#L....................................................................................", +"......bhb2b2bh#i#c.zbcbcaUaT.4.5.KaZbcbd..bdbkbdaU#c.8.z.5aUbhbjbgbcaP#e.y.w.4.4.L.w.MbiaW#d.M.xaRaRaPaO.O.G.u.Lbaa5#k#c#c#caU#i#c.y#baU.Ia8bi.J.M.yaTbg.waO.......Oa6a8bia5aO.Ibib2aWaP.1.x......a..NbobybvaQaN#8.H.Ca0a0a.#7.C.C.NaCbpboa2a#.E.B#9....a2a3a0#9.E.v.Eafbzbzbpaiaj#2.Baiaf.E.Bbzbybvafa#.D.Dak#P.samb8......#Z#Y#P.tae....aB#Z#Y#O.q#1#P#1...#azaraq#0#M#Kan..........ayaAapaxar#W#U#T#Jas..atao#T#L.e#T#Jaq#W....atatao#L#Maxap#T..............................................................................", +"#m#...bdbjbdaU#c#bbhbhbdbb#j#c.5.zbb#j#k.5bbbbaU#i#c.y.z#ibbaWbmaUaT.4.K.x.yaT.4.waWaT#eaP.4.w.x.4aOaO.4.G.I.x#fb4b..z.5#fbj#k#ba5.zbT.O.uaVa6aVaP#b.1.x.1..........a7a5aRaO.Ia8a5aR.OaO.L.wa5.4.x.B.Ea3a3a0.N.N.P.C.Oa.#7#7.F.C.Nb7..a2ag#9.E.s.EaiaL#0agaga..N.B.Fala#bzbybvah#5.D.Qa2#9.E.BaEbnai#5#3.B#3#P.ranaCaCaCaa....#O.q#1.#....#Y#Y#O#P#Pbt....aAaLaz#0#S#M#J#Z...........#avatayayar#0#M#Laq....#V#L#JaK.....#..........#V#L#LaMaAao#Lao................................................................at#V........", +"#m#g.6aWbcaT#k#bblb2bXbdaU#i#c.7.AbcaT#e.4#j#i#i#c.z.z#fb8#maTaTaP#d.1.x.1aZaYbgbgbmaU.4.4.J.w#fbZ.L.O.G.u.Ialb#a5....#d.y.1bda8a6aR.O.G.NbhaXaP.4.L.u.1bab.aV.4....b3aOaO.Oa8bra8aRaO.u.x.MaR.O.I..aAa0aN#7.N.H.H.OaR...N.E.valbs..aL#9#9#3.D.Eb5aGaI#Y.t#7.E.B.Eama2.DaEbpaE#5#5.Q.Dafa#.D.Eaiahaf#3.B.Banac#PaDaHbtaC#4.raHbuac#R.q......#P.qanaC......aAaGaG#X#K#Q................aoayaLaLaz#W#M#U........#Tat....................#T..atap#T#J...............................................................caxauap#J......", +"#h#..6.8#i#e#c.zb0b7b2bc#j#k.4.J.y#caT#ebmaWaTaP.z.z#cbXbc#g#j#e#e.4.1.K#db2bhblb0bmaT#d.4.xaSb......x.O.I.4aSaVbdbc#j.7#c..bib4biaO.N.xbhbj.4.4.L.I.1bTaYa6aX.4.y.4a6aVaO.Lbrb4a8aQ.O.I.1aZ.1.u#daGaH#8#7.F.v.Pbaa1#8..br#7.Na0.B#2btbt.E.E#6bn..ar#X#O#Z...E.E#9a2.B.BahahaEaEaf#5.Da#.B.B#7a##5#3.D.DbaaEaa#P#PaHaLad#R.raHaC#Y#P#P....................arar#0#N#Kas..................axaAaz#W#U#K#X....................................#T#L#Jas..............................................................auawax#V#J......", +"##.8.6#g#c#c.zbkblblbkbd#i#g.7.y.z#caTbhbhbmaV#e.K.KaZbc.8.8.A#c.4.5.yaSaYaWbhb2b2bgaT#e.4.w.4.........J#daWaqblb2bb#i.7#c..a8a6aR#8.x.LbmbmaU.I.G.LaZa5b2bhaX#a.w#abiaVaP.4.Ga6aR.4.H.u#daW.G.1a6ar#0b0.F.C.Fa4aQ#5.Qa2boa0a#bna2#9.Eae#3.sam......#O#Y......arar#X.t#5ajbzbvaEaj#5.D.D.B#6b6aj.D#3.Bambnaa#1.sabaDad#4.q#PaB#Z#R.q#R......................#X#N#Nanaz..................aqaraq#U#K#Xas..........................................................auauap#L........................................atatauavap......", +"#..6.7#l...z.4bdbdbcaU#j#c#c.z.A.7#jbhb2b2bcaT#d.K.w#e.7aP..#gbl#b#e#caT#c..bibjbgaY#e.4.y.w.4............aLaqbkbVaU#c.z#c..aVaP.K.I.Ga8aTaXaT#e.z.xa6bja6aV#d.1.x#dbxaV.4.I.IaRaO.N.u.Ia5.N.Ia5....aWbgaX.1.xaP#5#2.Dboa2a0a#b4a2#9.E.D#2am....................#X.tac..bzbvbvbnab#2.Q.DalbaaE#5.D.D#4aaaa#1.r#2aDaFaCac#Pb3#R#OazaIac#RaCaDaa................#S#Xaz......................#0#U#K#NaM..............................................atao.........#aKaxap#T..........................................auaKauap#T....", +".7.9#lbU..blbhaWbbaU#i#k.4.4.A.z#faZbhb0b0aWaP.4.y.y#e.7.z.y.Gbb#j#f.A.7bbbeaWaWaT#e#d.y.x.yaT.7..........aq#MbcaU#c.z.zbhbgaWaT#k.waVbxb4#d.4a8a9aRaO.IaX#d.4.x.JaWaVaO.M.x.GaV.L.N.Ib1a8.N.C..bqa3a0aN.N.I.1#5#2.Qbwb3bra.#7bqboa1aN.N#5.......................#bqa3a2aEaLaJah#6#2.Q#2aJai#5#3.Q#2..#Paiaf#5aDaHbvbzac#4.r#S#RaLaKar#Q.qaCaa#P......................azar#X................#M#M#W..............................................awaAap#T......avawat#V#L#V........................................auawav#V#Jao..", +".A.8bXbfbdb4b2#iaU#i#k#k.K.A.7#lb8bbbgbhaW#e.4.z.x.1aT.z.5.w#d#g#c.8.7bVbdbdaTaX#e#d.K.x.1b#aY.7.8.7......#M#M#i#c.5.zbib0b4aWaP.4.w.4bxbxa5bra8a8aR.4.O.u.1.y.1bSa8a5aR.4.x#d.I.I.Lbaa5a..H.Ca7b4bxa0a..N.Cb..D.Daibobsbq#9.Ebxb3a0#8.H.H........................b3b3a0ahahaf#5#3.B.Qafaf#9#2.Q#3b7bzbzaEaf#3.QaHbtaFak#P.rab.Daa#P#Y#Q.qaD#4.raa............ar#Z..aGaLar#X#M................................................................auaAaAao#T#T....apapao#L#Tax........................................atatao#T#J....", +"#.bUbfaUbdbkbc#f#f#f#c.4.5.7#bbVbj.zaWaWaT#e.4.w.w#faZ.y.4aTaS...z.7#ibdbWbd.4aP.4.4.1.yaZb6bgaU#e.7.............7.zaZbhblbZaW#ea8a8aVaR.O.Ibrb4bxaR.4.I.v.w.1aWbibia5aRaO.I.I.I.Ea1a1aN.N.ualbqbybsa0#8.F.E........a2a0a.#7a7brbsaQ.N.C.P....................a1bobvbqa.#5aj#5#2.Q.QbabY..#3.Q.Dbw..brbyai#5.D.DaCaCabak.r#2#5.raa.r#1.t#P#1.r#P..........aGaGaI#0#KaAaAaq#M#K.#........azar..................................................atavap#T#Jaq.bauap#V#L#Las..........................................#T#T#L#LaK....", +"aZb4bd#jaWaU#i#c.z#b#b.5.y#faZbc.y.yaTaP#d.4.w.y#db8aW.zaTbab.......bfbbbbbgaW.J.4.z.y#faYaWbdaU#e.5.K..............a5bmbmaVaTa8b3bxa5aR.O.GaOa8a7aN.4.P.uaOaPa8bxb4a8aR.O.N.G.u#8a.#8.N.C.FbZa3a3a0#8.N.B.FaQ....a2aga.#7.Ea1a1aQ.O.P.val..................bqbra0a2a0#7.C#2#3.B.Qanbw......#3....a2bnbnaj#3.B.Dacaa#2.s.rbw#4.Q#5.q#1#QaM.r.rbY..........aAaLar#X#K#Qar#X.t#X.......#aAazar#X.t..............................................aoao#T#L#0#LauaKat#V#Latao..............................................#Vap......", +"bdbWbbbfbe#k.4.4.z#fbV#c#b#iaU.z#lbhbh.4.4.x.x.1bTaY.y#fb2aW#O#0..blb2#gbxbgbmaT#d#b#baPb2b4bhaT#c.K.z..........aE#5aOaVaTaP#ea8b4b0aVaO.L.I.La1aP.O.H.u.Hbaala8a8a6aVaO.G.I.1.HaRa6.P.P.1a4..a0aQa..N.C.Fal........a#.E.E.B#8aN#8.P.C.1b7..................bsbsa.a.#7.P.v#6.D#5#6ah................ahafa#.D.Q#6..#P.r.ran#4.Q#2am#2anaB#X#4..............azas#0#S.t#Z#X.t#NaM......aAbuaLaq#X#K................auaAat#L........................#J#T#V#Vauawaxap#T#Lavap#T......................................................", +"..bbbWbU#o.5.5.A#lbh......bUb7.4bhb0b0aW.z.K#e#iaW.A#fbV#0#S#QbfbebmaU#ibhbcaU.4.K.w.4bhblbhbc#e.4.A.1........btbn#5bh.N.4.4.Ga8a8a5.4.O.I.u.OaOaO.N.u.1b1aVa5aVa5aRaO.O.u.IaSa1aQaWaT.J......a.#8.N.F.Palbs..........#7..a#ag.P.N.v.1bs........a5aN..bna2af#3a0#7#7.E.valb#bubtab#2#2..............a##5.D.Dalbs.....#ad#4.D#PbT#PaJ#M#Z..................ar#0#Q.t#1aI#K#X..........azaGar#0#Q.tar..............avaKap#Tauap......auavap#T........atao#L#Watap#T.t#WaAao#T#T....................................................", +"..bfb2bX#m#g.6.8..........bUbfbfbhb4b0aU#e#b.y#b.4#eaU#m.8#Xblb7bhbhbhbhbjaYaT#e.z.y#ebcbcaU#i#c.y.y#f..blbd#j.7abbmbgaVaX.4.Ja5aVaP.1.1.u.IaR.O.H.u.Ibaa4a8braOaPaO.O.G.xaSb4a5aQ.N.H.w.4aXa7a9.E.N.CaQa7aQ.N............#9#7.Ebq#8a0a..N....a8biaQbpbya2a..N.B.F.N#3.Na0adaFad#4.s#5............bnai.E.Q#9a2..........#2.r#5#Paa..........................#Q.tasaG................arar#0#M.t#N................avap#VavaKap#V..auaAaAap#T#T......#T#L#Lax#V#T#L#Uavap#V#Jaq....................................................", +"..bfbf#m#g.9.6#l......#obe#h#m#nbgbjbc#e#c.z.y#e#h.7.7#m#g.6bfbkb2bjbhb7b0aUaT#c.z.zaWaTaT#i#b.1.y#fb8#gb7bW#g.5bibibgaWaX.4.waRaOaO.L.u.Ibab4.x.L.Halba.Aa8b3bx.L.L.x.x.1bZb0a1aO.H.H.waVbrbxa9aR#8#8bqa7aQ#8.v.............E.Ebxb3a1a..P.Fa8bybia0bob3boa.#3.E.Fa4......#Xaa#4.r#2aD..........bobyaEahaf.E..............axao#Laq..............................as#Z..azazar#S......#0#0#N#N#Nbu........awaq....ao#T#Javav#V#L#Vavavat#V#J#W................#T#W#Wao#V#L#Tav....................................................", +"..be#m#h.8.6#lbe....bfbf#o#m#g.6aWaW#i.4.1.x.1aZ#g.6.9#j.7.zbhb0b2bcbhbjbhaW#e.4.ybhbmaWaT.4.y.y.1bXbh#g.7.G#gbgbxb7bZaV#e.4.y.J.O.H.u.H.1bZ.K#b#j#i#c.AaZa5a5aQ.O.G.OaOaRa5a5aO.O.u.N#dbja7b3a8aQ.N.u.NbYaQ#7.C.........#bnaga3bqa4aN.N.C.Fa5a9bza2a2a2aja#.D.E#9...........D#P#4aJ#O#Ra2af.E..bpbzbpaiaf#3.B............az#M#W..............................aKaG#ZazbuaG#0#S........#K#M#Rasan......awaAax#U#J..#Laqatao#T#Jaxapap#V#L#LbQ......................#L#T#Uay.............batao....................................", +".7bh#..8.6#cbdbdbc#j#cb2be#h#..5aT#k#k.4.w.AaZb7.6.6#g.8.A#gbgbhbhaUbcbcaT#e.4.zbjbhbhaUaP#c.w#baTbc#j#f.7.8.5bibjblbjaX#e.K.w.M.I.I.IaSaS#b.z#baW.z.yaTbdaQaO.O.I.Lb1....aRaN.O.C.1aSb.aPa3a9aN.O.P.uaOa0#7.F.CaQaD#2..bpb3ai#7a0aN#8.P.FalaObpb3a2a9a3a1aN.N#3..............aHaH#1.qbobra..E.Ea0bwbvai#5#2.B..........aGaG#X#XbS..ayar....................aGaHaG#XaGaGas#X#K#X........#L#Jas......awaAaAaq#M#J....atao#J#LaA....#T#L#JaA............................................aKav#V#L..................................", +"#b.Abc.8#.bkb0bVbb#k#b.A#n#..8.6#h#b.7.w.y#eb1.7.6#.b8.7.8bXaUbmaUaTaWaT#i#c.y.Ab0b4bVaU#e.4.y#bbfbb#g#b.5#g#iaWbgaWaP#e.1.x.w#daWbdaU#i#c.y.y#l#e.5.zbT.....Oa8a5aRaO.ubm.L.O.P.Cb#a9#e.4a1aQaN.N.v.Ha4#8.N.v.Fa2bn#5.Dboboa9a9a0a..C.Pbaa4..bpbnahbsbya0a..N.B..............ac#1.qaabwa2#7.Ba.a2bzaE#9#3.B.E......aFaFad#4#K#1b6ayaK#W#K.....#azar..........ar#Y#Oarar#X#K#Oas......axaqaxaq......aqaqaq#T#J#W....#T#J#W....................................auap........avao......avavap#T#L..................................", +".7.5blb2aUbhb2bWaU#c.7.z#j.8.6.7#n#c.y.5aTaW.8.5#lbW.8#fbe....aT#k#k#e#k#b.K.4bhbjbjbjaP#e.J.A#bbb#i#c.A.7be#iaWaVaT#e.4.w.x.yaVaO#j#i#e.7.zaZbc.BagaT..a5a5aO.Na8aRaO.IbcaT.4bmaXaP#e.J.J#8.O.P.H.Fb1#7.N.P.Fb5bzaj.D#9a2afbybZa0#7.C.Fa4....a2afbqb3bva2#8.P.C#P......aGaI#Y#R#O#PaDag#9.E.Na2..afaf#6.D.Ealad#4..bvbuab#4.sbRb6ax#W#K#MayayazaG#0#M........#Q#O#O#X#Q#N#Oanar#XawaGazaq#Maq#J..awaL#V#T#M#UaG............................................auaKap#T....auaxat#T....apao#T#JbY..................................", +".z.7#mbkblbdbdbb#e.4.z.KaU.6.8bTbe.7#daY.#....#g..............#c.4.K.x.K.7.y#caYbcaWaT.4#b.A.yaT#k.8.7.7bV.M#gaXaP#e.4.w.x.1bTbV.L#b#c.z.A#bbV.B#6....bib#a5aO.L.uaO.O.I.Obibia6aVaP.O.w#8.H.P.N.1baa3.E.P.Oa0..#5.D#2..#3a3aQ.NaN#7.C.N.B..bna#a#a3a9a0boa0aN.N#Q......aGaC#Q#P.......E.C.Bbs....#3#3.D.DalamaD#4aFaLaDaa#2.rabb6aHaHad#RaAaGaAaA#0#K#0................#XasaK#0#S#SaGaz#W#K#W#K..axaxap#U#Waxauauap#T..................................auavap#J#V#Lao..avaxao#Lao....#L#Laq....................................", +".z#fbb#ib2bbaU#i#c.5.A#faU.8#lbfbkbb#i.4#cbfbf#m#.bhbmaU#i#b..bf.z.K.z#iaU#b#iaUaU#i#e.4.z.A#faY.5#b.7#mblbf#mbf.4.M.y.x.w#dbg.7.z..bibgaVaP.1a..#..a8b4b0aRaO.H.u.O.I.uaObib7bjaVaO.J.L.N.Ca9aQ.N...#b3bsa..Ea1aQaQ..bqbqa9aQ#8.C.P.val.Cbza3a2aNa0a0brbsa1a..N.C......ac#Y.tac.........#......bzbv.D.D#9aiaLac#PaDadab#2.s.radbSbubtac#4.raqar#0#M#Naz................azaraq#X#Sayarazar#Xaq#1..ao#W#U#JaMayazaq#L#T#T..............................auaAaAao#L#L#U....apap#T#T................................................", +"#cb8bebdbl#i#k#e.7.z#fb8bh#lbe.zb7bc#i.KbUb8bfbhbhbgaYaUaP#b.A#kbe#h.9be.G#i#c.6#e#e#b.K.y#bb1aY#e#ba6a5aR.4#jbb#j.w.4.K#eaV#c.AbTbhb5bjaV#e.J.w....a8a8a5.4.1.x.IaR.xbabmbibxbjaP.4.G.L.Cbxa9aQ.N.Ha0a3a0aNa8a8a1aN.N.Lb4a7aQ#8.P.Nalb1.Pbqbrboa3agbqb3bya0#8.E.B......#R.qae......aGaI#X......aEaEaf#3adaCab#4.raaab#2#2.rbY..aDaHaD#4#P#2#U#M#M#KaM..................#Xar#X#KaybuaGaGar#0.tayawaq#L#LaqayaMazaq#L#Jaq................................atao#L#L#Uax....#L#T#JaA................................................", +"bVbe..bbbcaU.7.7.A#fbebc#k.7.A.7aZ#i#c.ybeaT.4blb4bVaYaT#e.4.y.4.4.4.7.1.xaT.7.5be.5.1.x#fb#aYaW#ea8a8a5aRaO.L.G#bbgbmaX#d.w.zaZ..bxb0b0aXaP.y.w....a5aRaPal.I.x.1.I.1bZaRa6aVaP.4.w.x#da7bxa8aN.P.I.Na.#7a8b3bxaRaO.N.Nbra9#8.N.C.Nb#.Fb7bsbpb4a3aga3a7a4a.#7.C.F..................aGaC#Q#Q....ajaf#5.D.Eab#4#P.Db3.r#2#2am....bRadaa#P.sae#X#0...........................t#Q#QazazaGaGar#M#OaGaLaq#Mawaq#TaAaz#W#M#Mav....................auauap#Lap..#V#L#LaK..........................................auavap................", +"be......#i#k#c.A#caTb2#i#c.z.7aZ#j#k.zbkbdaUbhb0b2bWaW#i#c.K.z#b.8.5.6#h#daWaVaP.4.w#b.4#eb2b0bhbib4bZa5aP.4.L.ubhb7aYaX#d.y.4..aWbgbgaT#d.4.x.1aT..aOaO.O.I.C.1b8.1aRb1.OaXaP#e.1.u.1baa1a1al.N.u#8a9a1aOa8bZbxa1aN.I.H.Oa..N.C.FaQ#8a4a0a3bpbsbqa.a0a0al#7.F.C#7.D................ar#X.taC.......D#2.Bam.r#P.raJ................#R#P.rabaC#NazaGar#XaBak.q..........azazar#X..aqaraIar#X#K#Kazaqawawazaq#W#K#W#L#K#0ao..........auavao....aAaAao#Lao#L..ao..............................................aAaxao#J..............", +".........5#c.A.zaTbd#k#c.z.KaZbd.4.zbkb7bd#jbhblblbcbb#i#b.y.A#b#i.5#cbeaZ.....4bc#i.4.8bgbxaWa8bxb4b0a5aP.4.I.u.Ob0bgaP.M.w.4#j.7aWaT#e.4.w.1#f....a6.I.L.v.1bjaV.I#ebc.I.O.4.G.w.1bVb.#8aO.1.C.Nb7b3a1a5a9a7a1.O.N.H.CaO.N.C.Fbaa1#8.P..a0a2a2a..N#8#8#7.F.C.1bY#5.D................#Q#Z..bpa2#9.B..bzaDab#2ab...................2b6aaaHaDad#PaLar#Q#O#RaGaCas#R...#aLaHar#U.t#U#X#0#X#N.taM#W#UawaMaAaq#W#L#L#J#Uaxapawawaq#T..aKaw#V#L..avaxauap#T#J................................................atavap#T#L..............", +"#i..bf#o#g..#k#caZbe#i.7.7#kaU.8.6#bbkblbd#ebcbdaYaT#k#c.7.A.z#faT.z#f....aWaU#ebjaT#b.yaUaT#ia6bib#a6a6.4.O.x.I.OaW#e.4.w.waP#j#caP#d.4.J.Abab8..biaRaP.1.O.Ibaa5#cbd.......x.L.MaOaV.4...I.H#8b#bxbiaQ.Oa1a1aO#8.I.v.FaQ.C.ualbsaN#7.P#8#7aga.#7.E.C.C.F.Calbaai#5.B....................bpbva2#7.CbzbvaDaj#2.D........ad#4.......#b9aHaDadab#2#1#X#O#RaGbYaC#Z#Q#PazaGas#Y#Q#O.##M#S#S#Oac....#Uawazaq#V#T#Jaq#0aKawawaMayaq#W#Javao#L#T..auaKaAap#T#T................................................#V#V#T#TaM..............", +".5.8bU#n#..6....b8bkbdaT#h#h.8.A#nbfbcaU#i.5aUaUaU#i#d#b.x.y.KaZaW#baT#ibhbVaW#i.z#e.z.y..#ebma5a8a5aRaO.O.x.x.GaS#e.4.J.x#daY#j#c.z.K.4.xaSbV....b0bi.O.G.u.1a6..............bhb4bc#i.4.K....biaVaP.I.O.CaOaO.O.H.u.CbYa9.N.Oa0a0#8.F.Cal...N#7.E.Bala3am..aEbtaJ#3.D#Z..................a2ag#7.BaFbtbuai#5.D.Q....aHbtaD#4.r......bTbzaJaDab#2#4#Q.taGaGaHaC#R.q#PaGaKaI#Z#Oac#Payazaz#0#K......ataq#V#U.t#0....apaoawaAaAao#T#J#W#L#T....atavap#T#Jaq....................................................#V..................", +".5.7.7#m.8.8.#bfbeb4b0#i.5.8bkbd#j#caT#i#c.z#iaT#k#c.5.y.y#bb1b1#b.GaUaTblb0aU#e.z#c.x#e.....4aRaVaPaO.4.N.u.1baaV#d.1.w.1b1bd#c.7.A#l..#d....bea6a6bkbd.M.OaR................bhbjbc#e.y.K..bxbZaVaO.G.4.CbZ.L.I.v.PaSb#....a1aQaN.N.vala1.......N#7a0a2....ahaf#5.D.D#X#Q......bnbnag#5....#7.E.EafaEah#5#2.s#3....aHbvad#4.D.#....aFbvb3aE#5.D.D.t#1aCaCac#Y#Q.q#1aGbuaC#1#Oaa#P#PaLar#X#K........#U#M#J#UaA....#L#Tataxap#V#J#Laq#Mao....aoao#V#L#Wav................................................................auap....", +".7#i.7#m.6#.#o#m#jbhaT#c.yblblbc#j#c.A.4.A.zaZ#e#c.5.y.y.1aZbVaP#d.w.yaUbhbc#e.4.z#f#bb0......aTaOaO.O.G.G.x#db4a6.J.1#daTaU#i.8.A.7#m......b7be#kaPblb4aU#c.A................aWaT#k.4.A#fa8bxbiaX.4.G.MaR.....I.NaQa1.......P#8.N.v.CbY......................#3.B.DaJ.tb5....bpbvbnaf#5.D#3a.#7ag..ajaj#3.s#3ah....aDad#4#2.rab....aDbpaJab#4.Q#2#ZbuaM#Y#Y#P#P#4aCaGaC#0#Q#O#Z.q#Raz#0#M#K..........#U#Vaq......awapaq#W#W#J#UbY#0#M#M......#L#T#Way................................auauap#T........................auaAap#L..", +"#f#j#i.9.6bX..aObfbe#h.6#bbWb2bb#i#b.z#i..#k.....7#b.A#baTbcaX#e#a.w.K#laU#i.4.A.KaUaY.........4.4.O.L.u.I#db#aVbxaY#b.w#j#i#c.z.KbXbdbf#j..be#j.7.Ibkbd#k.7.AaU..............#d#e.4.7aZaYaVa5aR.1.1.xaR.......................v.C.Pa4.......#aFboboa2a.#3......#3..#Oar......bvbvboaf#3.B.E#9.C#7..#2#3.s.Da4......abaaah#5am......ahahad#4#P.Qaj#4aHaCad#O#OaaaMaeaB#Z#R.q#1#P.rad#0#M.t#1....................awaKat#T#L#L#Uasaq#U#K#0.........aavavap#T...........................#avaAap#T#T..................auat#Vat#V#J.#", +"aZbbbcaU#k.7..bUb8#o#h.6aYbkbd#i#c.z.zaU..........bh#b#cbjbg#e#e.K.w.4#e#ebgbbaV#i.4.............w.5.O.LalaO..aWaT#e.y.waZ#c.A.KaZbebWbj#j.7#k.7.7bXaZ#i.4.A#c...................y.K#faY....aOaO.G.uaSa6....................................btbobybsa0a..E.v................aibnbnaf#5.D.s#9.E.C.......D#5ae........bzbzaEaf#3....aH#4#4#5#P.D#6aEab#2aa#4#4#P#P#2aF#Q#P.q#Obw#Pam#Q#Q.t#Qas..........awaw#V....awayao#T#L..aqaq#U#J#Maz.......#auaMawap#V#L..........................avap#V#J#L................avaKat#T#T#L#W..", +"b8bkbb#j#c.5.5bfbf##.8.z#nbb#j#k.7.w.8bb........bkbhbmbmaVaT#d.4.w.w#dblbkbjbcaTaP.5.xbhaU#d....a0be#maT.A#g...4#e.J.JaZaY#i#g#i.7b2bk#j#..A#m#k....#e#c.z.4bda6a5aP.O..........bcaU..a8a6aP.4.O.xaSb.......................................ahbobvbwal#7.E.B............aEaDajaiafa##6.B.Eam.Db#........a2a.........bzb5bnaf#2.BayaGbv.Q.r.s#9aJaDaa#2#2#P.r#2#4aD......#Q..#R#Y......#X..........auawaKax#W#M..ataq#U.taqat#T#L#M#XaK........auauayaxao#L#L..........................#V#T#L#W#J................avat#V#Laqaq....", +"bdb2bb#i#cbmaUaT#e.8.6#l..#k#c.5.5.7bWaU....bf#oaUaTaXaVaP.4#a.w.x.1aWbhb4b2bcaT.4.4.w.4aU.4.z....#h#c.7.8bf..b4bfbe#j.8#j.5.7#c#jaO#j#k.AbhbcaU#i.Kbf.7#cbca8a8a5aRaO.I....bkbWbc#ibib4aWaP.O.xaO..................boa3a0a..Nbqboag.N........a3a2ag#7.E.v.E...........#byaD#5#9#5.E.E.DbTaJ.Dag#3....b4a3#9.E....aEbpbnah#5.D.DayaFaFaaaFaDaLaEab#5.r#2#1................................axao..avaAaxax#W#M#L..#W#T#L#0avavao#Tauavao#L......apavatao#T#Jaq............................#Vao#LaK................aoao#L#L.#......", +"bWbd#jaPbhbhbmaW#i#b.z#o.....5.7bhbbaU#k.4bfbhbhbgaU#e#e.4.4.J.w.1bTbVbhblblbhaPa5aXaO.4bf#n#g......#.#i.#..aVblb7be#j.8.9.7b8a1aO.I.O.8bhb0bkaU#e.z.5bb#ga8b5b5a5aO.4.I.I..bjb0bcaVaVblaVaO.I.w..................bqbqbqa0a..N.Bb3aN.N.E....aEa0ag#9#6.C.Falbqa2#7....aFbpaJ#6.s.D.D.Ealbn.B#3af#3.Ba2bpam#7.Bam....aiah#5#3.s#6bzadaa#PaDaDahad#4.D.ram................................awawao#Uatap#W#W#U#JaM......aq..awap#TauaKaxao#L........aoao#T#J#WaM....auauap#L..........................................#L#V..........", +"bb#j#kbhbhbkbmaU#i#b.z.z....bkbkbhbcaU#e.4.AbWb7bdaU#e.M.4.w.x.1aSbgbmbgbcaWbibga6aVaP.4.G#m#cbcaU#ebkbdaU#i..blbUbe#g.5.8.......NaVaO.Ob0b0bjaT#k.z.zbia6bibxbxa5aO.O.u.L..bcbibgaWaX#d.w.O.x.1..a9a1aQ.H........brb4bsag#7.E.Ba.#7.Bal..bza7bx#7.F.C.Eala2bqa..Ca...ahab#5.Bbw..aj#6bqa3a0#7.F.D.Baga.#7.Bal......#5#6#3.D#2b5bz#P#4.qababab#4.r.DamaF..............................awaAaAao#L#U#T#U#J#Jas............ao#T#Javavap#T#Jap........#L#J#WaA......aAaKao#L........................................................", +"#j#ibjb0b7bVaYaT#e#b.J.K....bkb7b0bc#i#e.z.w#cb2bhaT#e.4.y.4.4#eaVbibgaWaTbibxb0a6aVaP.4.G.GbhbcaWaT.4.5aU#k.7.7#m#g.9.6#l..bWa8b.aVaRaO.xbdaU#c.4.y#bb7b.a5a5aRaO.O.I.u.1a7#ibhb4b.aP.4.w.4.1a7bxbxa1aN.I.I....bobqbqa3a..N.C.B#9.C.EbZ..aEa7bs.v.E.C#7a2..a..N.N......#2.s#6......bqb4a3a0.N.B.s.E...E.Bala3....bnaf.D.D#6bnaFaj#4.s#4ac#2.s#P.ranah.r..............................axaxap#T#Kaq........................#V..aoao#T#Jas........................axap#T#J.b......................................................", +".4.7bhb0b0blaU#i#e.1.y.yaTbdblblbjaU#e#b.z.y#ebhaU#d#b.z.z#e#ibfblb4bjaTaXbib4b5a8aXaO.L.G.Lb0bjaU#i.4.A#j#c.5.6#g.8.9#gbU..bib0b1a5aPaO.G.I#e#b.w#baTbiaWaRaRaO.4.H.u.1aR..bibxblaW#i.4.w.4aZa7b3bZa1.O.H.I....a0a3a0a.#7.E.v.Fa0.Na2....#9aRa1aRa0aO.u.1.....N.#.........#aFaj#2..bobqa4#7.F.Calb5......aHaDaa#Pbp#9.D....abab#2.Q.Eah..#P.rajaM#R.s#1aB#P..........................aqao#T#M#1ax..............................#L#T#0..........................#V#V#Las........................................................", +".z.7bgbjbhaW#e#e#b.y.x#baTbcbdbcaU#k#b.4.x.1aUaU#k#b.3.x.KaT.ybhb0b0bjaTa6bibjbia6aP.4.G.x.MaPbkaT#e.5.y#b.8.z#c.7.7#lbe....bib0bZa5aO.L.G.L#b#b.zaZbjaXaPaO.4.O.H.I.GbTa5..a6bgaW#e.4.5bga5aP.4braR#8.O.u.I..a0..a.a.#7.N.B.FbT............aObqa7a1aQ.Nb5................bzbvaj.r..a2a0a..F.v.Ea3......aGaLaL#Y.qaf#3.Q.......r#2#6bw..awaMaq#1#P#O#2aCad#R#P............aG#Z..........#M#L#0az..................................................................#Tao..........................................................", +"aU#jaWbcaUaT#e.4.y.A.y#fbbbfaWaUaT#c#b.A.K#faU#i#c.K.x.KbTaY#cbcbjbgaT#e.4a5a6aXaP.4.L.x.GaObhaY#e#b.y.w#f.z.z#ibe#g.7......a5a8aVaO.O.L.u.O.1.zaZbcaS#d.1.J.I.N.u.4bab#.Oa8aVaXaP.4.Jbibib.aX.4.G.4al.u.IaQb4ag.C#7#7.E.B.Fala4.............4bxb5a1#8.N.C................aDah#2.s..a.#8.E.C.Nb4..........ac#1#P#P#3.Bba..aiaf..........axaq#T#J#R#1aCaFak.r#4..........aGbu#X#O................................................................................................................................................", +"#i#gaUaUaT#e.4.1.x#aaTaYbf#o#i#k#c.7.z.z#fb8bh#b.z.x.z#fb2#i#baWaWaTaP#b.KaVaRaPaO.L.w.u.OaSaU#i#e.K.x.zaZ.6#fb7#m#g.7#g..bgaVaXaP.4.N.u.Oba#d#e.GaPbV.I.M#db#ba#8aPbiaPa8b4a6aP.4.4bib5b4aWaP#d.G.O.H.ubaa1a2#7.val.F.F.CaQa4..............bqa8bsa3#8.H.uaQ..........a7a1a.#2.Dba..a9.E.N.Na4al..........#R#P#Pbt.EalaHbzbzaf#5.D#2......#U#MaAbS..acak#PaHaFab.r......aI#Z#Q#Q........azaG#0#Q....................................at#T...........................#auat#V......................................................", +".9.7.7#k#e#b.5.K.y#bbXbcbX#o#n.5.z.A.y#fbVbcbU.z.A.z#ibVbb#k.4#eaX#e#b.K.xaP.4aO.O.I.x.1bSbZ#k#e.5.x.2bVaZ.8bX#m#g.8.6bbbhb0aO.4#d.L.I.Ibab#.L.L#db##c..........bgbZbiaOa6aWaPaO.J.JbmbibiaWaO.L.x#d#8aSb##7a..C#7..........................a1a9aQ#8.H.v.F..........bqb4a1aN.Cab......a0al.P.H..............#4........bzb5bqaf#3.B#4.r........bTb8....#PaFbubt#5.r......#S#O#P.#........aGaK#0#O#0...............................#aAauap#T........................avaKat#T#T....................................................", +"aU#j#g.4#b.K.A.x#caZaYb2bX#o#h.8.z.1#caT#l.9#l.8b2#ebkbc#e#c.z.z.4#b.J.A.zaS.L.O.I.x.1aSb##b#b.z.A.yaZbe.y#j#m#g.8.5bb#i.4bgbm.L.O.u.3aSb..4a6a5aP.Lbe............aVaXbibiaWaX.4.xaOaVaVaT#d.M.w.waZ#8.P.O....#7........a8a8a5aR#8.u........aQaN#8.N.C.1b1..........bqbqa0.N.Ca9a0#8..#8.C.Hb1........................aFbpbna#.D.B#9.D.........2b6.a....ahaDab#2.rah....................arar#Q#N................................avauaKao#Lavauap#V................avat#V#Laq....................................................", +"#g#c.5.A#c#b.K#f#eaUbUbU#o#h#..6.9#n#..9.9bS#obV#hbbaU#i#c.1.x.KaU.w.K.KaSaZbf.G.M.G#daRbVbd.A.7.zaZaY.z.y#ibmaTbkbdbd#jbhbZbmaV#e#daR.w.I.Obia6aP.O.x.............4bib4bZaVaP.4.w.4aPaPaP.M.x.1bab1.N.C.N.O............brb4a5aR.O.C....a1aRaO.N.N.v.Na4............a1aQ.Nbqbrbra1aN.C..................a2a...........aiaha##3.s.E.sae..........b6bS......#4#2#2bY......................#X#Q#Oan..................................avap#T#LauaKap#T#T............aK#V#V#L#T.#....................................................", +"#e.4.5#cbcbd#g##bf..#o#n#n#g.9.6#l#o#..9#lbfbd#j.8bhbcaUaT.4.7b1bdbcaU.4.z#n#h.9.8#..z#mbhaWbdbcaT#e.7.x#b#jbgaWbWb4bbbib5b0biaT.4.J.w.yaP.Mb0aWaO.M.IaW#e........bgbiblbjaV#d.J.w.4.Oa7a9a1aQ.Nbg.O.F.u.1.O.u........a7bsbxb#aO.I.u.Obra7a1aO.N.H.OaQ...............N.N.Pbqb3b3a0#8.C.N............bob3a3#9.E........#5a##3.D.Eb5#6aD..........bRb6........#2#5..................................................................ao#T#LaMavap#V#Jaq..........auaxap#L#V........................................................", +"#ebfbe#j.9.7##bU.1bvbU###..8.3##b2#l#obe#j.5bb#kbkbhbgaUaX.4.wbeb4bc#i#c.y.6.8.6#h#i.4bhb4bcaU#i#e#b.w.1#laUb0bkbWbWbdbmbxaU#i#b.4.w.ybgaWaT#eaR.4.x.LaP.8.y........a6a6aV#d#d.w.GaPbrbxbsa1aN.N.u.N.v.Fa1.I.CaN......a5a7a1aO#7.I.Ha8b0bZa1#8.N.v.....................F.Na3bqa1#8.F.v#8............bobrbo#9.E#7.........D#2#6a2#6..............bRb6............................aGaCac#R..................awawaq#U........................ao#V#L#L.#..........apapauauat#T......................................................", +"aTb2bb#g.6.8.I.1a5bo#o#o.9.9#lbe#hbUb7bd#g.7.7bhb0b4bdaU#e.5.y.4b0bc#e.4.z#f.z.9#n#b.ybUbf#m#k#e.5.1.KaZb1b0bjbdbdaU#ibhbdbmaT#e.J.wbhbhbmaT#d.y.L.x#dbe#h.A........aVaTaP#d.y.x.JaWbrb5bxaQ#8.H.C#7.Ib#b#.H.HaQ........aRaQ.N.P.ualbrbZbxaR.O.I.CaQ......................a0aQ#8.N.C.Na1........aFada2a0a.aiaf.D..................................b9b6........................aGbuaLac#R#O..............ayaLaGaq#Mawaq........................#V.#..............#TaKaAap#T#T....................................................", +"aUbe#k.8.A#l.1aR..a.#o#n##bUbf#n#.blbfbe#c.z#cbhb0blbV#i.4.z.y.4aW#i.4.4.zaZ#ob6.5.5bUb8be#j.8.K.5.yaZbVaWbcaTaUaU#ibhb2b0bcaT#k.Kbhb4b5bm#i#e.J.K#dbZ#ma6aVaPbgaW#d#e#d.1.J.w.1b6a9bra7a1#7.N.C.uaOa4a7.I.uba........a7.O.O.H.H.LbZa5a7a1#8.1.C.CaR..............ad......#8#8.N.F.FbT........aLbvab#7aNbpbnag#6.Q.................................2b6..............aGaGaCacaqaGaGaB#1.q#P......ayaz#W#Kayayaxaq#Kayap#Taxao#J....auazar........................avaxat#V#J#W..................................auauap#L..........", +"bh#g.8.A#gbe........#7##bXb8#o#mbmaWaXaP.7.5bebhbhbmaT#e#b.A.y#faUaT#b.waZaYbVbW#mbfbWbU#n#g.6.8b8#f#nbfaT#i#e#b#k.4bkb0b0bc#e.4.ybhb0bVaY#e.1.y.zbg#ma8a8a5aP.L.x#d.x.L.M.xaSb.aWa8a9aRaN.N.H.u.HaQ.O.H.I.1bZ......a7b5bx.I.H#8aR..aRaQaN#8.H.u.OaR............buaa.r.......C.P.Ca1.#a2a..E..aFad#4.sbnb3bvaf#3.B....................aHaDad#4.r....b6.#..........aGaGaLaCac#P#PaB#Y#O.qae....ayaMaz#0#Saybuax#W#LaAaq#T#J#T#M.aauayayar#0.t....................apapao#L#Uax................................auaMawao#L..........", +".6#j.A.7bX...........EbUbXbX#obhbiaWaVaP.1.z#oaWaWaT#k#c.y.y.KaZaU#e.1.y#ebfbe#n#..Abe#n##.8.9#l.6#lbebf#h.4.4.x#b.5bgbhbcaT#e.K.wbgbhaW#e.4.K.x.4#gbib5b5aV.4.G.I.M.w..bk#dbb#cbha5aN.4.O.P.v#3b6#d.H.NalaQ........a9a7a4#8.C.H....#8aO.O.P.H#7b5..............ad.rbY..............bobnaga#.Bab#4.r#6aEbnai#5.D.Bai................aHb3aJad#4.Q....bSb6..........aGaHaLaLaa#P#R#R#O#Oan......ayazaq#Sayayazar#U#J#U#W#J#M#L#L#LataGaLar#U#K................auavat#T#L#LaK..................................avavat#V#Jaq........", +"bXbf#kbb#k............#obfbfbhb2b2a6aT#e.4.x#oaT#k#e.4.J.A.7b1bV.4#c.x.yaT#g.5#..A#.#j#h.8.6#lbX.8bXb8#o#haVaT.4aU.xbcaUaT#e.5.x.zaWaTaT#e.4.x.1#i#ia8bxa8aP.1.x.GaS.1..bfbf#kbWb2a5aR.N.I.C.Nbaa1.O.uaS....bkbha5aRaOaQ#8.H.ual....a3.H.L.uaOb#al................aa..............bpb3bsaf#3.B..#2#5..afafa##2.Bba..........aGaI#Y.qaFaHaJaa#2.rab...2b6..........aIaCaBac#R.sad.....#........#W#W#U#KaMaqaq#W#M#Kas#M#MbY#JaM#Wazazar#W#M#K#M..............avaAap#T.#......................................ataoao#L#U..........", +"#o#j.8.7#c.z..#o#m....#o#o#mblb2b0aW#e.4.K.w.4#n#d.4.y.x.1aZbcaT#k.K.A#baZ#c.z#j#hbUbf#..6#lbU#g..bfbf#m#gbmaV#i.ybi#i#k#e#b.z.KaZaP#e#e.5.y.ybTb2bma5a5aR.4.I.u#d.1aW..bb#j.8bkbia8a5aO.H.NaOa5.1.u#fa5....b4a8a8aWaR.4.w.F.1a4....aNa.#7aO.valb5................................a2boaga#.E.Ba.........aiaf.B#6ai..........aLaC#X#Oadadaa#4.r#PaC....b6..........#Racaa#1.q#1aCayayax#U........#K#Masao#0#U#N#MaM#T#Uas#Las#T....aq#0#M#JaM#L#U............avat#V#Jat........................................#T#L#LaA..........", +"#n#gbU#o#o##.9#o##.9....#hbmbibibgaW#e.4.w.w.4#n#..6.4.1#kaUaT#k.K.z.1b1bd.A#c.#..b2b2#n#g.7#.....#n#m#gbhbgaU#ebib4bZ#c#b.A.w#fbVaV.1.4.x.xaSbVbZbcaRaPaO.L.x.1b7.1.4..bf.7.5a8b5bZaRaO.G.Ibk.G.LaRa5a5aR..a8b3bZa5aO.O.u.O...........N.F.C.Cbs..................................aga0#9.E.Bba.......#bpbzag#6.B............aB#Y.q#1aa#4#4.r#Pb5......bTb6..........#O#P#PaaaM#Y#QaAaq#S#U......auaMav#V#L#M#Maq#J.......a#W......#M#U.tas#U.tas............ao#T#Las............................................................", +"#m#cbXbU#n##.9####.6#h..bf#.bgaYaT#e.4.J.A.yaZ##.9.9bW#nbcbcaU#k#b#baZbc.7.7bX....bf#n#..9.9bf.8.5bgbcbhb4bVaT.4bibZb0aV.5.K#eaT.M#e#d.x.1#eaTbhblbjaP.O.L.u.1b#.JaP#dbWbU#h.5a8bxa8aO#8.I.I.x#c.zbibZa6aR.4a8b0bxaV.4.L.u.O....a1#8.....N.Nal......................................a#.E.Ebzaiag#3..bzb4bqaf#3.B........ai..#Q.t#1.....r#P#2aJ#5.......2b6............aIaGaC#Z#Q#Oaqayax#0......avaxax#T#JaAaAao#J..................#Waq#U#K#1ay..............#Tao....................................................avat#T....", +"##bUbXbU#n##.9####.6#o..bebfaTaTaP#d.y.x.1b#aW##.6#...bkbVbcaUaT#b.ybk.7.7##bU#o#.#n#h.8.9bX.9.9b0bVbmbhbhb.#e.4a6bmaT.4.5.x.JaXaP#d.z.y#daVaTbmaWaTbmaX.4.4aS.y.1aWaVbe#m.8.6aRaVaQ#8.I.uaO.waRbibxb4aWaO.La8a8aVaRaO.L.xaO..bxa9aN.C............boa0#9...............................Nbpb3bnaf#3a3a2a.bna#.D.B#9....bzbnafa#.B..bzbzahbpbpaiaf.D......b6bT............aB#Z#X.q#R#Ubuaz#W#K....atat#V#J#Watap#T#J.b..................#M#M#0ax......................................................................auaKat#L....", +"##bU#o#o##.9.9##.9.6#n..#nbU.4#e#a.K.K.yaZb1bd#n###obhblb2bcaU#k#b.4#baTbWbUbgaWaX#kbc#j#k.8.7bhb2b0aUaWaWaT.4.xaTaXaP.4.wbgbga6aT#e.K.1bg...4aTbibibmaX#d.x.y.wbVba.....8.6bXaOaO#8.I.u.1b5.1a5a8bxbiaVaO.GaVa8a8a5aRaO.uaV..bra9a1aQ#8........bob4a0#7.C......bobna0#7.B......a2a.#8bnbpbvbo#9bqbsa0a..E.E.B.E....bzb4bnaf#3.D..bvbsafbvbvai#5.D#3....bRb8..........az#Q#Q.q#ObYazazaq#U#KaGaI#Y#O#J#Tayazar#UaM....ayay#U........................................................................................avat#V#Jaq..", +".8#o#n##.9.6###o.6#.#obd#gbUb8.5.K.w.1aZbVa6bU#o#h.6bkb0b0bdaT#f.7.z#b#.bhbhbjaWaX#e.y.w#k.7.ybcbhaU#e#i#e#b.y.ybT#d.4.xbhbibgaYaV#e.M.x#ebhbgaTbxb4a6aP.4.w..............biblaX.L.O.ualbV.Ib1..a5aRaXaO.N.ua8b3b5a5aO#8.I.I..aQbrboa0a..C......a3bq#7.E.C......bybsa3a2a2a2a2a..Ea2a..Ea2a0#9#3byb3a0a..E.E.Db5aDbnbobwbp#6.E.Q#9bpaEaiaEai#5#6.B#9....bRb6.......#....#0#O#1#Z..arar#U#KaGbYaIak#P....aKaKaz#0#K....aLaz#U#M...............aap....................................................................aoao#L#T.#..", +".6.9##.9.6.9bX.9#.b2bUbd.7bUbf#obk#d.4aX#j#c.A#n##.9bgbhbcaUaX#c.z.z#ebUbhb7bxaWaP.4.K.J#k.4.yaTaU#e#b.y.4.4.1aZbg#c.M.wbib4b2aWaT#e.J.x.4b7bdbmbxbja6aO.L.x#e............bfbb#c.waV.4.G.IaV....aRaRaO.O.x.Ga8bxbxa5aO.O.I.N....bxb3a0#8.C#7....aNa..E.Cal....a2bpboa9boboboa0#8.E.B#9.E.E#9#3a0bqa2a.#7.v.NbwaHbtacaiag#9#3.B.Dagaf#5#2af#9#2.B#6am.....#bSbS...#.#....#O#Nas.#....#M#KaBaGaGaC#R.q#RayaGaGaq#U#K#0axaq#W#Kar............auaKat#T....................................................................#Lao......", +"#naZbf.9###o#.#.bfbe#m#..7bf#n#mblb7bVaU#j#b.6.8#..6bcbhbhbmaT.4.z.5aUbgblb0bjaW#e.4.J.4.4.A.y#f#e#b.y.zaZbgaT.z#ca6aVbgbhbjbjbg#e.4.w.x#eaP.OaWaWaXaP.4.x.JaV..........bWbWbb#i.za8a5aR.O......bg.O.L.x.xaPa8a8a5aQ#8.H.x.1a0#8bra0#7.N.Cal.......E.Ba0........bqb3bobsb5bra0#7.C.B#7.C.E#3.B.Ba0a.#6.B.Fam..aHaF#4aj#5#3.B.Dbw..#3.D.B#3#3.B.EbY.........2b8.#.....#...#..........az#WayaBac#Y.q.qaCaqazar#W#J#Kaz..#U#J#0..............avaw#V#Lap.............................#avao....auatao................................", +"bb#i.8be......bUb2bU#o#o#n#m##bdbfbWbkaU#k.7.A.8.9.6bhbxbhbmaT#e.1.wbcaWbmbgaV#e.4.y.J#daX.A#baU#j.K.K#ebc#b.4bibia6a5aPbma6aT#e.4.K.x.KaVaP.4.uaXaP.4.GbhbgaWaT#b#o#g..bWbW#j.4bib4a5aR.O.x....aWaW.I.IaS.waVaRaPaO.L.u.IaSa9aQ.H#8#7.Cala0..a3a0.N............a3bqbobqbqa2a.#7.C.Eam.Bal..#3...N.N.C.Cba....adaa.r#6.D.B.Bamaiak#X.....#..#3...#.......#..b6.#.#...#...........#..#X#KaK#Y#1#O#Pbw..#W#0#X#K#NaM.#.....#................aoao#L#T..............................avaAap#JauaKavao#L..............................", +"bb#g.8.5....bfblbUb2bfbeaU#g.7bbbdbdaU#k.4.z.5#i.9bhb0b4bVaU#i#c.y.y#e#naWaXaX.4.K.xbga6aVaR.4.4..............bib7bZaVaPaVaXaP#d.1.x.1#eaUaP.L.w.M.M.wbhbWbWaWaT.4.yaP.Jbe#j#k.7a8bxbibmaWaX.4..#eaP#d.K.waTaOaO.O.L.u.IbTb#a1aN.H.P.C.PbsaObqb4a0.N.P..........a0a0a2a3a2#9#7.E.v#6a2alb7.........F.E#7.........D#5......a#bvad#2#P#Q.....#.......#.#......bSbS.#.#.#.....#.#...#....ayazay#O#N#Y#W....#K#M#QaCaM............awaq............#V.#..............................axat#V#Javaxav#T#J.#............................", +"#j#k.7.7......bebfbkbfbcaU#k.5.zbb#j#i#c.5.z#kbmaTbhblbjbjaU#e#b.y.y#e#gaPaX.4.4.4bibibxa6aX.4.M.x......bf#oa6bjbxbxaX.4.4#e.4.K.J.w#fb7aX.4.G.x.4.L.4bhb2b2aU#e.K.yaP.J#i#kbkbea5aRbhbibmaX#e.J...K.4.x#fbia8.L.O.u.HaOb#a7aQal.C.I.Na9a7a1#8.Pa7aN.Na3a0a.......a.#9aga.#7.E.B.Nb5albs...#..bra5aN.C.....#.#.#.....#.#..aHaF#4.r#P.#...#.#...#.#.#.#.#.#...2b6.#.#.#.#.#.#..........arar#W#M#Uax#W#J......#Y..............awaLax#U............................................ao#V#JaMatap#V#J#L....................avavap#T..", +"#g.8bcbmaWaT.4.Kblb8bXbb#j#k.7.7#g#k#c.7bdbhbibmaTbmbhbcaU#e#d.J.x.1aU#g.5.4.J.wa8bib7bxa5aP.4.M.L.M....b8#o##a6a6aV.4.O.x.y.4.x.waSbVaX#d.M.x.LaV#kbjbcbiaY#e#c.z.zaZ.w.4bfb7bbaRaOb0b4a6aP#d.G.4a8biaP.1bib4biaX.NaNaOa1aN#8.C.Halbxbybya0#8.E.Na..N.Fa0#7.C.....C.Ea##7.E.B.Cbwa2.#......a7b3a8.1.x.#.#.#.....#..bnbnaia..E#P.rae...#.#...#...#...#.#.#.#.ab6.#.#.#.#.#.#...#.#.#.#.##U#L#KaHaB#Y#M......................away#W#Kaq............................................#Tao..#T#V#J#Tax..................auaAaxap#L..", +"#kbhbhbcaUaT#e.y.AbWbW#m#k.4.z.7#i.4bkbkbdbxb0aYaTaWaWaT#k#e.K.x.1#faV#c.A##.4.4bibib0bZaVaOaO.L.w.4..bfbU#n#.aVaPaP.4.w.I.MaV#c#daTaPaO.O.x.1bTaV.4bhaWaU#i#e.z.y#f.4.xaVbkbkbd#cbibjbjb.#e.M.x.1aRaRaO.xbibiaW.4.H.uaO.O.N.P.Hba#8bqbxa6aVaO.G.N#8.C.EaN.N.Ca......E.B.E.E#7a.a2.E.....#.#.#aRaO.H.1.#.#.#.#.#.#..bob5ai#9.E.Ean.#.....#.#.#.#.#.#.#.#.#.#.#bSbS.#.#.#.#.#.#...#.#az#0.##0aGaGaC#Z#P......................ao#V#L#U........................................................#V......................avavap#V#Jap", +"bhb0b4bjaW#k.4.K.x.4#m#i#c.7.A.8bbbeblb7bhb2b0bgaTaTaT#e.4.4.y.JaSb7bh.zbfbf#n##a6bibgaW#d#d.L.G.waObdaU#c.KbkaO.4.4.G.G.1b1#gbcaU.4.4.M.x.G#fb1....bm#e#e#b.K.y#fb8aTbVbfbbaU#g.5aWaWaV#e.4.x.GaS.4.O.u.1a5aRaO.4.ua8a7aRaO.H#8a1#8a1bxbZaVaO.L.Ga7a5aQ.N.B.CaQ............bpb4ag.E#3...#.#.##8.u.1a5.#.#.#.#.a.#bnbpbwa2#7.E.E.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.2b6.#.#.#.#.#aHaLac.saK#0#K..aGbuaB#1#Paa....ayayar#M..........#J#M..................................................................................apap#T#L#W.a", +"bib0b4bVaT#e#k.y.w.4#b#c.7.A#c#lbebkbWbWbibjbiaW.4.4.4#b.z.x.z#bbVaY.z#ibXbf#m#.a5aVaVaP#e.4.I.w.waSbhaU#c.Ab0bW.G.M.uaOa6.9bkbhbb#i.w.L.waSb#.7....aXaP.1#b.xaSbV#daWbkb2bkaRaO.zaTaXaP.4.G.ybaaW#e..aOaVaOaO.O.xa8bxbxaR#8.L.IaR.Oa8b3bxaR.4.Ibrb3a5aN.O.ub5......boa3a0#7.Ea2a#.B#7.#.#.#.#.#.#.#.#.a.a.a.b.b.a#9a2ag#9.E.v#7.#.a.a.#.a.#.#.#.#.#.a.a.a.a.#.bb6.#.#.a.a.#aLaJak.ras#U#O..aGaB#1#P.qacaGaI#Z.q#0#M#M............................................auauat#T............................................#L#Laqat..", +"bhbjbibcaX#e.K.w.w#d#c.z.z.7bTbkbfbdbkbdbmbcaT#e.4.y.x.x.K.z#faZaZ.A#fbbbXbU#h#.aVaXaP.4.4.G.u.1aZaZbd#k.z.zaUbb#kbf.4bf#mbhb2b0bb#i.4.Abd#e.z#c.#b8aU.J.x.z#b.xaSb...bda8a8a9aR.O.u.4.M.x.w#daY.y.#.....4.G.L.L.LbibZbxaP.O.u.Ial.HaWa6aR.4.La8bZbyaVaO.I.u......bob4bqa0#7.Ca#.E.Ebn.#.#.#.#.a.a.a.aa8a5#8.u.a.b.b#9a#.E.B#6b7.b.b.b.a.aaB#R.a.a.a.a.a.a.a.a.abRaB#Paz#0.aad#4.ram#Q#QbY.#ac#Y#R.q#1aGbYaC#Z#O#Uayaq#W..................................auao...#aKaKao#T#T....................................................", +"aWbmaWaT#d.4.J.x.KaT#c.z.7#lbdbbbbaUbbaUaTaTaX#d.y.x#bb1aW#i#e#b.A.1b6bf#o#m#g.7.6aO.4.4.J.u.G.1b1a6#i#b.A#baU#ibUbUb8bU#hbkb2bWaU#e.7.z#i.7#bbc#nbf#h.K#a.1bVbc......bbbxb5a1aO.O.u#m.J.y#daS.ya8a8a1aQ.N.4....a5bra5aR.O.H.H.H.H.CaVaXaO.O.ua5a8aVaO.O.u.I......bobra7#7.E.Ba.#3a7a3a0#8.#.a.a.b.aa7bxa5.O.u.b.c.c.d#3.B#6bw.b.b.c.c.cbtaC#Y#P.b.b.b.b.b.b.b.abtaCazaKar#X.##Pae.#.#.#.#.#aG#R.q#1aCaGaG#Z#Q.qacbuaz#U#J.............................#avawap#V#Lavap#V#Jaq....................................................", +"aWaTaT#e.4.K.x.1#faZ.7.7.8#h.5#g#g.7#i#i.4.4.4.y.J.1aZbcbU#b.7.A.zbTbd#n#m#g.9.3#g.I.L.w.x.x.1b#b##k.8.A#bb8#c.7bfbfbfbe##bdbdbb#e.4.A.zaU#haZbW#m.6#..Ab6#cbhbc#e.w..a8bxbsa5#8.I.uaO.6bV...4aXbsb4a5aO.O.u..aRaOa1aRaO.1.u.3aO.HaN...O.L.u.GaRaRaO.1.H.1aP.#.#..a2a2a..N.v.Ea0bqb4a7aQ#7.P.b.b.c.b.aaRaO.ual.e.e.e.e.e.c.d.dbzah#5.caCaGaaaCaB#P.b.c.b.b.b.aaBaC#YaAaG#0#N#N.a.#.#.#.#.#.##Z#Y.qan.#aB#Z#X#O#Paxayaq#M#J............................auaAaAap#T#Lap#V#J#Tau..............................................awauap", +"aT#e#e.4.K.y.yaTb6aY.7.A.4aU#n#m#c.7#i.8.4.A.5.K.1aZaY#..9##.z.zaUaU..#..8.9.9.9bXbebf.G.GaPaS.y...4.7#cbc.z.7#l#m#n#n#h.8bbaU#i#c.5.z#baU#.#gbf#h.6#lbe..a5aRaO#ba6a6aRa8aRaO.O.u.IaS........a7bxbia1#8.Ia8a7a5aQ.4.4.N.I.HaZbT.........L.1aPa8#8.O.I.IaSa1...#.#a.a..N.C.Eb1a3bqbZa7#8.E.C#8.b.c.c.c.N.ual.e.f.f.e.f.e.g.gbtbvaFaDad.d#YaGbvaB#R.c.e.c.c.c.c.caa#Parar#X.taB.a.#.b.#.#.#.#..#O#1.#..#Q#Q.q#Obuaqaq#U#JaM............................atavat#V#J#T#L#T#Uax..............................................auaAaAau", +".9#b#b.y.x.z.1bTaY.7.y.z#ibb#n#j#c.A#gbf.4.4#ibcaPbUbd#..9.9.9b8bf#h.6#c...8#.#n.7.7#m#.blbb#h.z..............#o#h#l#g.9.7#b#i.4.7.z#cb0#h.6#.#..9#h.#.#a8a8a1aO.O.Ia6aR.4.I.1.I.IbaaR.A......a5a5aRaO.I.ubrb3a9aQ.O.I.L.IaSb#a5..............brbx.x.I.4a5.#.#.#.#...F.E.Fa0.#a0a3a0aQ.N.C.FaQ#6.e.e.e.f.f.f.f.f.f.h.h.f.fa2btaFbtaFab#2#2aCaH#R.qae.e.g.e.e.b.c.a#P#M#Q.t#ZaGaB#R.#.#.#.#.#.#aGaIac#Rar#0#Rar#U#S#L#Kas................................ao#V#L#LaK......................................................atavaoav", +".9#n.y.K.w#faZaY.8.z.8#lb8bW#j#h.8.6#gbf#j.8.8bga6aWaR#d#i.5#obXbd#g.6#g.5be#m#c.A#l#..6bfbkaU#c.7..........bWbUb8.9.8.8#g#n.z.4.A#fbe#h.7.6be#l.6bf#ma8b4bxaRaO.L.xbiaP.4.I.I.H.1b##..z......aQaQaN#8.ua8bxbsa9#8.N.C.O.4aObs................a1aN.P.H.#.#...#...#.#a2a..#.#.#.#aNaN.O.C.Cam.sa0.e.e.f.f.f.h.h.f.h.h.h.h.h.haEbzbuaD#5#2.rac#1#P#4#Y.r.g.gaGaC#Z.r.cbT.c.caGbvaB#Y.t.a.#.#.#aGbuaHaB#R.q#W#Qauap#J.....#..................................#T#Wax....auauao#L..............................................#V#Tao", +"#h#g.6#m#m#f#c#b.z.z#bbXbdbe#j#g.6.6#hbe#g.7bibga6aVaX.4.J.w#h#m#l.7.6bU#o.9#c.7#cbbbf#m.8bW#j.7.7#.......a6bf#o#o#n.9bbaU#i.4.zbXb2bb#g.6#gbfbfbe#j.7a8bZbxaR#8.I.IaOaO.1.x.1aOaR#g.A#l.........O.N.u.Ha1a5aRaN.O.C.HaO..a9a0.O.................N.1a4...#.#.#.#.#bobra0#7.B.#.a.H.N.C.valbZa2.e.e.f.h.h.h.h.h.h.k.h.h.k.h.h#5aDaDab#2.s#4.h#P#PaD#R#O.haGbuaGak#P.d.3bS.baGaI#R#O#P.a.b.#.#aHbubt#Z#R.q#0#K#Mao#L.#.#.......#.....................................#aAawap#T...............aauat............................#V..", +"b8.6.7bW#..7.7#b.A#ibebe#m#j#g.8.A.7#m#n.9bib0b4b.aTaP.4.J.I#g.9.9.8b2bU#n.9bfbb#fbfbfbb#..5#c.A#g#...bgbmaT#b######.9bX#k.7.5bebk#m#g.9.6#mbfb2bb#h.7a5b#aRaO.1.u.IaO.O.x.waV..bgaW#e.J.............NaOaRaQaO.O.P.ubabqbqa7a1aN.H...........#.#.#.....#.#.#.#.#.#brbvag.N#7.b.b.abg.Eala0.g.f.f.f.h.h.h.h.h.h.k.k.k.h.k.i.iaFadab#2.r#2b7.i.i#Z#R.qb5.haIaCacaI#Zad.dbR.d#Z#Z#R.qb5.a.a.a.#aGaIac#R.q.r#U.t#X#T#J...................#............................avaxap#V#L..............awaKap#L..............................", +".8.A#mbe#m.8.8#l#i....#m#h#g.8.A#cbgbmaUbhbhb0b0bjaX#d.M.I.w.4.4#.#nbfbb#.bkbkbb#k.5#o##.9.6.z.9b2#obibZbmaX.4.w##.9#h#l.A.5#ibc#m#h.8.A#lbkbWbW#m#g.7aRaRaO.1.I.FaOaR.G.Ibabibjb2aV.4.w................b7.O.L.I.u.1b3bqb4bxaQ#8.P.H.............#...#.#.#.#.#.#a2a3a0#7.Fal.a.c.caWaX.1#b.f.f.f.h.h.h.k.k.k.n.h.h.k.k.h.kbtbvah#2.s.rbw.k.k.i.i#QaB.i.i#YacaGaGar#Y.qbH.d.d#P.qan.b.b.a.a.#aBaa#R.q.qbY#K#Qas#LaM.#.......#..........at#T........................#Tao#V#Jas..............atap#T#L..............................", +".A#.#o#h#g.9.7b8......#g#g.8.7.4bjbhbhbkbkb.bjb.aV#e#d.J.x.MaX.4.wb2bl#m#g.6bW#j#k.5####.9##.8bebUbhb0b0aWaT.4.y.4b8bb#c#c..bhbc.8.8.A.8bWbebf#m#g.8.A.O.4.O.1.I.2bZ.u.uaSb#b2bibg#d.M.xaV.7........aWbbbe#g.C.IalaR.Gbrbsa7a..O.C.N.......#...#.#.#.#.#.a.#.a.a.aa.#7.E.Bb7.c.c.c.e.K#f.f.f.h.h.h.h.k.k.p.k.k.k.n.n.n.kaEbzbvaj#4aa#4bpbzah#3.s.k.k.k.kaIaGbuaLac#Q.q.3bH.g.d.c.c.b.b.d.a.a..#P.q.qaa.t#NaJ#Vaq.#.#.....#...#.#..auauav#V#J.#......................#L#Laq................#L#L#LaA..............................", +"#.bf#o#m.8.9#m....a9#8be.5.7.7bhblb4bhb0b4aWaWaVaP#d.1.x.G#daV#d.J.KbW#j#c.z#i#i.4.5#j#..6#n.9....bgbjaYaT#d.y.x#ebd#k.z#hbkb7bj#k.4#c....#j#j#i.8.A#ca5.I.L.xaPb##c.6aO#.....aTaP#b.x.M#h.8.#....b0bga8a8a6aR.L.....4a1a1aQ#8.H.Cal.....#...#.#.#.#.#.aa3a0#7.a.b.F.C.Ba4.c.c.e.e.e.f.f.f.h.h.h.h.h.k.k.k.k.n.n.n.o.o.mahaDaj#5bzaEaj#2bsaf#6.D.n.n.n.n#XaGaGaB#1#O.q.fbH.2.f.d.c.dazazar#0.#.a#Rac.##Xas.#.#az#W.#.#...........#avaAav#V#L....................................................................................", +"##.6bf#h.7.8.9..b5a5.1bU#m##bfbhb0b0bhblblaXaXaP#d.M.w.3#db6aV.M.y.z#m#c.z.7#j#c.A.5bb##.9#o.9bfbfaWaVaT#e.1.x.yaV#i.7.8bdbhblbc#k.5.5....#f.4.8.5.8bia8a5aO.O.u.J.J.6#j....bh.4.4.x.1aY#..5......a5a5aX.Ma5aP.O.x..a5aNaN#8.N.valb7.....#.#.#.#.#.b.#bqbqa0a..C.b.b.c.c.e.e.e.e.f.f.f.h.h.h.h.k.k.k.p.naFaiab#2.o.n.m.o.mab#5bzb5aJaj#2.Q#9#2.Q#9.m.l.l.kaBaB#Y#1.qambH.0.0#E.2.daDaAaMar#X.t.a.#.#.#.#.#.#aKazar#M.#...#.#......atatao#L#W....auap................................auavap#L....................................", +"##.A#m#..6#..8..a1aO.ubU.9bUb2bcbjbcbcbhbc#d#e.4.M.J.G.1bTbibga6aVaX#d.K.A#kbb.7.7b1#m.8.6.9bUb8#obf#e.4.1.w.Kb1#g..#.....bbaU#i.z.y#ibb#c..b8#o#.a8b4b0aVaO.L.u.J.L.w......aWaU#g.4.6bX.AbV....bia8a5aR.1.uaO.L.IaP..aU.N.P.u.NbZ.....#.#.#.#..a9aN.abxb3a0#7.E.N.e.c.e.e.e.f.f.f.h.h.h.h.h.k.n.na3a0a.b5aiab.D.o.o.o.o.U.Q.raFbtaE#5.D.D#6.Q.D.m.o.m.m.m.l#R#O#P#1aC.2.i.f.j.3btazaGazazaq#M.b.b.b.a.a.#azaKaK#W#K#M...#.#....aGar#V#L#T.#..aAaAap#L............................auaMaxao#L....................................", +".9.6#n.6#.be#n...L.x.1#o#nbUb2aWaUaTaUaUaT#e.K.M.G.u.1aZbibia6a6aWaT#d.J.wb0.8.3aZ#n#..6.9#obUbUbma6aVaP.L.1babe#g.6......#c#ebfbfbb#g.5#g#obUbgaVa8bxbxaXaO.I.xaO.J.w..bb#e..#b.y.5bc........a8b3b4aVaO.O.u.O.x.IaVaV.O.4.N.NaQb1.#.#.#.#.#.ab3a8aOa0boa2#7.N.Cal.e.e.e.f.f.f.f.h.h.h.k.h.k.n.nbqboa2a..Eai#6.Qae.oaDad#4.X.Xahadab#3.s#6.D.DbY.U.o.U.U.UaHaL#R#R.l.2.0.i.i.haFbuaJaraLaGar#Q#M.b.b.a.a.#arar#W#M#Nas........aAaL#Z#Q#V.#..avaxat#V#Jao..........................avaxap#V#Jap..................................", +".6##.9.6bXbU.#....bfbU#o#obU#oaTaT#e#e#i#f#c.7.y.M.1#eaPbhb4b0b.aWaPaO.L.x.4b8#n#n##.6.9b6bX#obibia6aVaP.4.ubUbf#c.A......#h#gbWbU#m#h.6.8#nbhbjaWa5a6aR.4.N.x.IaX.4a8a5aR.G.z..#k....a5aR.O..a8bxbxa5aO.L.CaO.IbT.M.4bxbx#d#daT.....#.#a5#8a1a7aR.N.Ca0#8.N.valaV.f.f.e.f.f.h.h.h.h.h.h.k.n.n.nbyb3a0a..E.C.D.D.DaHbtah#4.r.W#5#5#2.D#2aJ#3a2.X.X.U.U.U.UaBak.qae.m.0.k.k.k.iahajabaAaGas#0#K#S.d.b.b.b.a.a#U#M#Man.#.....#..aIas#Y.t#1......atao#L#W.a..........................apap#V#L#W....................................", +"#n#####n#h......bUbUb2#n#.#o#n##.4#b.z.1.4.z.A.K#ibVb0bhbxb4b2bgaTaP.4.y.x#a#o#n#..6.6#m#o#hbibZb4b.aVaO.M.x.4#g.6bV..bhaW#ebfbXbW#j.8.A#h#ob0b0aTaRaXaO.4.x.1bTa5bibia5aO.O.uaU..a8a8a7aRaO.ua5a5aRaO.O.x.IaSa5a5.w.4bia6aO.x.O...#..b4a5.O.uaQbqa0#8.N.N.B.CbZ.f.f.f.f.h.h.h.k.k.h.k.n.n.n.oa3bra3a.#7.C.E.DbY.Bbtbtaj#2.Q#y.W.D.D#6aJ#v.W.W.W.W.U.V.U.U.U#Pan.S.U.UaGaGac#P.k#2.Qarar#0#N.t#Z.3.daB#Z.b.a.##U#0ar#Q.#.#.#.##Z#0#S#QaB.#...##T#L#Uax..............................#T#Laqax....................................", +"#obU#o#o##.9#o##bUbUbU#n###h##.9.6.K.1.KaT#b.4#c#ibhbxbibjbxblbgaX.4.M.w.x#dbUbfbU#o#h.6bf#jbibxbxbjaX#d.J.w.4.5#l..bjbjbd#j#i.K#m#g.6.6#naWbiaV#e.K.4.L.I.1aSb#a8b3b5a5aO.H.u....a8b4a8aO.O.IaRaRaO.1.H.1bTaV.O.C.Lb7aRaVaO.1ba.#.#a5a8aN.4.ubqbya0#7.E.g.L.f.f.f.f.g.hbnag#9.E.p.n.n.n.o.ma3boa2a..F.F.Cal.D.DbwaDad#4.r.D#v#y#y#v#v#y.W.W.W.W.W.V.U.U.U.U.U.U.U.S.laHbtac#P#R.i#5.i#U#M#O#N.h.0aGaH#Z#O.b.bazaKas#0#O.#.#....#Q#Nas...................................................#....................................b6", +"bUbXbU#o##.9###n####bU#nblb8.9.9###n.8b2bUbUbfbf#mbhbja6bib.aWaX#d.4.G.x.JaSa6a5aX#e.Lblbd#ma6bib.aT#d.M.x.waP#n..bhblbdbdbb#i.5.5.8.6bT#n#.aT#e#a.xaT.I.GaOaRaZa6bia6aQ.4.I.uaRaTa8a8a5#8.L.uaO.O.L.I.uala5aO.O.CaZ.Oa8a5aR.O.u.#.aaQaQ.N.uboa0aN.F.E.Ca..f.h.f.h.f.gbrbsa0#9.C.n.o.o.o.o.Sbrb3a2a..N.Bala1.Qbnbnaia#.Q.Db5#y#y#y#v#y#y.W.W.Y.W.W.W.V.W.V.U.V.T.U.SaCaHaBak.q#1.k.k.i.i#X#0.j.f.daHaH#Y.q.b.baGaGas#N#O.b.#...#.#.......#.#...................................................................................2", +"bUb6#o#o##.9####.9.9#obU#o#n.9#c.6#gbVbf#nbWb2be#maWaWaWaWaVaTaP#d.J.x.w.1aWbiaVaXaO.O.ubX#jaVaVaXaO.1.x.1.1aV#n#obhbkb7bVaU#e.7#b.A#l#i##.9.4.4.x.1bV.6#m....biaRaRaP.4.G.u.ObVa6a5aRaO.L.u.HaV.I.I.IaOaVa5#8.H.uaObrb4a4aO.O.u.#.a.b.N.ubybxa1#8.N.H.E.f.f.h.h.h.hbobybsag#7.E.E.o.o.o.obobvbsa2#7.E.Ca3.Dafbtb3aga#.Eae#z#z#A#y#y#vaFab.V.W.W.V.W.V.V.V.V.V.T.T.S.Uac#1#P#4aCaG#Z#O.i.j.i.j.f.hac#Y#O#1#E#Earar#X.t#XbQbM.#...#.#.#.#...#.............#.#....................................................auauat#V....bR.2", +"#o#o#o##.9.6####.6##bUb8#o##.9.9.6aZ#o#hbfb2bXbe#haTaTaXaTaTaP.4.M.w.y#bb1aVbZaVaP.4.L.u.O#f.5aPaO.1.G.w.1b1bmbfbfbdblbUbk#i#b.z.7#nbb#g.z.6bdbb#j#c.6.6#n..bfb2b0aO.4.L.Ibia6aVaPaOaO.O.I.IbT.u.1aW#ea1aRaO.L.v.Ia7bsbxbi#8.G.uaO.a.b.ca9bybyaR.O.C.Nb5.h.h.h.h.ha7a7a1aN.P.E.va..o.o.X.Xa0a2ama..N.v.F.B#Ba2bpa2af#3.B#6#A#A#y#y#ybnaEaf#4.r.W.W.V.V.V.V.U.U.T.U.T.S.r#P#4aJaGbtas#R#O.k.j.j.h.g#Q#O#PaC.e.3.2#X.t#X.#bMbF.#.#...#.......#...#..............................................................auayaKat#V#J...3b6", +"#o#n##.9.3#n#o.9#.#nbXbX#n##.9.9#obUbX#obfbfbe#l#g.7.1.1#d#e.4.J.1.1.MbTbVb0bZaVaP.4.G.x.O.7.z.J.4.w.x.1b#aW.8b2be#hbdbb#j#c.K.z#kbk#g#b.6blb2be#j#c.AbXbf#obmbiaW.I.N.ubhb4a6aT#e.K.L.I.1ba.x.Lb7#iaWaT#e.N.H.Ib4..a5aRaO.O.u.L.#.b.c.ca1a7aQ#8.1.ual.h.h.h.h.h.hb3bxaR#8.P.C#6a0.o.o#v#vaga.#8.E.B.Nb7babDbDaiaf#6.B.D.B#A#A#z#Abzbrbpaf.E.D.V.W.U.V.U.V.V.U.U.T.T.U.S.S.S.SaGaC#X#P#R.laq#U.i.j.i.f.h.fayaq#J.0#EbH.#.#.#.#.#.#.#.#.#.#.#...........#........................at#T........................auaKaxav#V#L#LbRbR..", +".9##.9.9.9bX.9.9bU#o#o#o##.9.6#lbUbU#obU#n#n#m#g.9.6#..w.K.M.4.y.walaZb#bib#a6aPaO.L.x.x#d.z#lbV#h.4.1#fbe#m.8.8#n#.aU#i#k.7.A#fb8#j#c.Abkblb2bc#i#b.7#ib8beaWaPaP.4.ubhbjb5bgaP.4.y#a.I.IaO.1ba.4bgbgaU#e.y.La7..a8aQa0#8.I.Nb1.b.c.b.eaQaN#8.O.vala4.h.k.k.h.ia7bxbZaQ#8.u.HbY.X#v#v#v#A#v.N.N.B.Cba#6bDbD#Ba##3.D.DbY#2bA#A#z#zbpbvbo#9.E.B.W.W.W.V.V.V.T.V.T.S.S.T.T.S.S.Sar#Z#1.qaBaKay#W#M.i.i.j.faGaLaq#K.d.dazar#W.3.b.a.a.#.#.#...#.................................#aAawao#T......................auawapao#T#LbY.3b6..", +"#m#g#.###n##.9#n#o#o#n#nbdbd#m#k#o#o##bUbU#h#g.9.7.8b6.8.6.8#h.4.4#eaWaVa5aRaR.4.O.G.u.LaV#k#..Abb.9bfbfbf#h.z.8##.9.8#c.5.z.7bX#h#c.A#fbdbfbf#j#c.5.7bbbWbga6aP.4.x.1bmbibgaT#d.K.w#f.u#daSaU#cbhb7bjaV#e.J.K#d..bqa3a1aQ.N.C.a.c.c.e.f.f.L.H.u.FbZ.i.h.h.k.k.ka9a9aQ.O.N.u.1.X.X#v#v#v#v#B#B#B.Nam#B#B#BbDbDbA.D#3af#3bA#A#z#A#za2aia..E.B#6.Y.V.V.U.U.T.V.T.U.T.T.S.T.S.R.S#Q#O.qaeaxayaq#M#X.k.j.j.iayaq#U#K.daybuar#U#Mba.3.a.a.#.#.#.........#..........................avao#Tao......................atat#L#T#JasbRbS....", +"#m#g.6#n####.9.9bSbU#.bfbfbe#m#k.7.z#i.4aU#c.8.6#gbT#h.9.9.7#.bl.5#cbfaXaXaP.4.O.I.x.1bTaW.8.8bTbfbe#o#n#h.8.6#l.6.9bV.z#b#b#f#c.z#l....bbbb#j#k.9.5#ibbbhb7a6aP.4.xbVaTaWaXaP.4.x.JaT.Ib1.....5biblbjaP#a.w#baZbobyb0a1aQ.N.C.N.c.e.f.e.f.f.h.Na0.p.h.k.k.k.p.kaQaQ#8.N.u.1aRa2aga#.F#B#B#BbD#BbIbDbDbDbDbDbCbCbDaJahbAbA#zbA#z#z#9#9#3.B#6bs.W.W.V.V.V.V.V.U.S.U.T.S.SbObM.S.RbObOayax#0#U#KazaIac.k.j#U#L#MaM#UaxaA#U#M#XawaAaq#U.a.a.#.#...#.#.#.#........................#V#L#L.#......................#T#V#L#LaKb8.3.#....", +"#l.8.5#gbU#..9#n#o#lblb2b2#o#j#g.7.6aT#k.y#k.5#.b8#o##.6.9.5#nbe#m#gb2bX.4aO.1.G.G.Ibab1.9bfbb#gb2#n#h#h.8.z#.bU#gaU..........bmbga6aR.4.G#k#c.7.A#fb8.Kbibjbj#dbc#i#b#j#e#e.4.x.waZaWaV........a6aWaT#d.w.AaZ..a7bybya1a..N.C.N.e.e.ea6aV.4.ha9aN.i.ka2a..j.na0a0.O.N.C.Pb#bvbyai#7.B.E#B#BbDbDbDbDbDbDbCbEbDbCbCb3aj.DbAbA#zaFaDad.D.Eala3.Y.Y.V.Y.V.V.V.T.U.T.T.S.S.RbObF.R.S.SawaMaz#0.t.laGbuas#Q.n.jayaGaz#Maq#W#M.t#ZayaKaq#T#M.2.a.#.#...#...#.............#............ao..............................#V....#Eb6......", +"#c.9.AaU#obU#o#n#..9blb2bWbmaU#k.4.5#j.4.z.4.K.5#n#h.9bfbfbf#m.8#gbUb2bX#m.G.O.u.1aSbxa6.6#h#m#c.6#g.8.8.6#g#obb#k.7..#o##....bib0a6aX.4.J.G.7.z#fbV#e.za6aVbkbhbcaU#e.A.7.y.x.xaTaW............aPaP#d.K.w#ab1..boa9a7a9aQ#8.Cal.e.e.fb4aV.MbrbxaOboboa3aN.P.Fa3a0#9.B.NaQbobsbqag.E.B#9#BbIbIboam#3bEbDbDbCbCbDaEai#3.QbA#zaFb3aFab#2#PbA.Y.W.Y.Y.ZbM.V.V.V.U.T.T.S.S.TbFbC.S.S.RazaAaz#U.t.RazaG#X#Oac.l.kaq#U#N.f#L.t#Xaxataq#T#Jaq.2bRbR.a.#.#.#.....#..........................................................b6.2........", +".8.A.9bebUbXbU#l.9.9bfbhbhbgaU#e.4.y#jaU#i.4.z#bbb#jbfb2bU#n#h.8.6bfbfbb#hbdbd.4.4aX.7#o#.be.7.7.6.8.7b1.8blbW#j#cbhbcaU.4bda8b0b0biaR.4.w.LbmbhbjaT#b.waPaPblb7bc#i#b.y.4b6..aX.9be...............4.y.x#fbV.#b2bra8bra1aR.O.P.N.f.fa6a8boa3a0#8aObob3bq#9.E.Fb3a0#7.C#v#va2a2a.a#.B.EalbDbDbDb5ag.Ebzbta2#9.EbDbA#3.sbw#z#zaFbzaD#4.r#2.W.W.W.V.WbObOaGaBaa.S.T.T.S.R.T.R.R.T.T.Razaq#0.tan.lar#0#N#Q.l.l.n#S#Mas.i.i.f.j.d#W#W#J#LaA.b.b.2bRbH.#.#.#.#.#...........................................................2b6........", +".6.8b2.6#o#o#n##.6bWbhbxb4bgaUaP#b.y.4aWaT#c.z#ibb#ibUb2bW#m#g.6.6#n#n#h#gbkb0bc#i#c.5.z##.9.A.A#l.5be#n.6bbaU#kbhaWaTaU.4.Aa6bib.aSaO.1.x.1.7aWaT#e.y.KaTbdbkblbh#e.7.w#k.............................4....bfbfbrb4b3a1aO.N.H.I.g.hbhbqboa3aN#7.C.Ea2a.#7.v#7a3#7.F.C#v#A#9#9a#.E.Eb1bDbIbEa2ama#.Bbpb3ai#5.E#2#z#z#A#y#y#yahad#5#2.Dam.V.V.V.V.VbMaHaHaCac#P.SaEah#5.S.R.R.R.R.R.R#U#K#X.R.l.R#Q#Qar.l.l.l.k.l.k.j.i.g.h.d.f#M#Xaz.c.d.b.b.a.2bRbR.#.#.#.#......................................................bS#E....at#V..", +".8be#h.6#g#h##.6blb2bhblb2bgaT#e.7.y.4aW#i.4.y.4bb#kbfbf#n##.8.6.8#o#h#.bkbWb2bcaU.4.7.7##.9.z#iblblbf#m.8.6#cbhbjbmaT.4aWaR.4aXaP#e.M.x.waS#c.7.4.y.wbV#.aUbcbbaP#b.w.zaZ.8................................bWa9brbsa8a4#8.N.C.Na7a1bobxb5a7aN#7.C.Ea.#7.B.1b7a..P.CbTa0.Pa2.B.E.Ca4a#.BbIbEbIa#.Ebzbpboaja#.B#3bA#z#y#z#z#y#2#4#2#2am.V.V.V.U.T.UaCaHbuaCak#P#Rbvah#5.Q.T.R.R.R.R.R.R.R.R.R.j.R.R.R.R.j.l.l.l.l.k.k.j.i.i.h.d.d.g.g.d.c.c.c.c.b.a.2bHbR...#.....#.#..............................................#Eb6..aAav#V#J", +"bhbcaU#i.7.9.9#gbebfbhblbjbm#e#c.y.w#e#i#c.5.y#b#k#b#n#n#m#..6.8#l#n.5.8bhblbkbc#k.7.z.K##.9##aUblbmaWaT#e.6.5bhb2bcbibia6aVaO.4.x.O.G.Gbaa5.7.7.w.yaZ.6#obfaT#i#c.J.zbTbb#g.8#h.6..........................bb#ia9a4aQ#8.O.C.ualb0a9a9bqbqa4#8.F.B.F.F.B.FbY.X.N.Balbra0.E.B#7bobvag#7.BbIbEbIbJ#3aiaiaf#5.D.Dan#A#A#z#z#y#z#y.Z.r#5.W.W.W.V.VbGaHaHaCaBaa#2.qaebtaj#3.Q.T.R.R.R.R.R.R.R.R.R.j.R.R.j.l.R.l.l.l.l.l.l.k.i.i.j.j.i.g.f.g.d.d.c.c.b.b.a.a.2bRbR.#.#.#.....#........................................bRbR..auaxav#V#J", +"bjbhaUaT#b.x#b..#n#mbcbmaTaP.4.5.A.1aZaU#c.5.w#i.4bmbmaT#e.K.7bTbk#n#..6bdbcaU#k#c.5.z#faU.9#nbdbjbhaWaT.4.5.Jbjbhbmbxb7a6aX#d.L.w.L.1bab#.8.A#gbX.8#.#.##bi.4#c.y.y#fbd#h.8.8#h.9.........................#.7.5a1aQ#8.N.P.u.1a4bxa5a0a0a0a..N.E.Bal.o.o.X.X#v#va3bqbq#9bpbnagbnag#7.D.BambJbEbEb7#5#9#6.D.Balbs#A#z#A#A#z#y.ZbMbJ.W.W.V.W.V.VaGaLaLaaaa#P.r#1aHaj#5.Q.D.RaGaLac.q.j.R.R.R.R.R.R.R.l.R.l.j.R.l.l.l.l.k.l.k.i.h.h.h.g.d.g.d.d.d.c.c.b.a.a.aalbabR.3...............................................3.#..apap#V#Jaq", +"b8bgaT#k.4.y#b..#o#caUaT#i.4.5.x.KaZaY#i#c.z.7bmbibVbmaU#e.1.xbfbU#h.8.6aUaU#i#g.7.A#caZ.9b9bdbib4b0aWaT#c.J.yaWaTbibxbZbiaP.O.I.xaPaOb##c.z#cb8##.6#o##.9bjb4aV.4#eaW#d.8.A#l.9.6......bd#k...............#...#.P.O.O.C.H.Nb1a4aRaOa.aN#8#7.C.Falb7.o.X#v#v#v#v#Aa0boa0.Ebv#9a.#9.E.BbabEbJbIbIbc#c.Q.E.B#9bwbzaEag#3#z#y#y.YbJbDbJ.V.V.V.U.UaIaCac#R.r.qaead#5#3.D.Db5bAaGaL#Y#O.l.R.R.R.R.R.R.R.j.l.R.R.R.R.l.l.l.l.k.k.i.i.h.g.g.h.f.g.d.d.c.c.b.b.a.a.a.#.3bHbR.2........................................bRbSap#V..#T#Jaq..", +"b0bh#i#e.z.A.4aUaT.4b8#e#c.K.A.y#bb1bm#k#b.5.4biblb4bcaX#e.4.Jbe#j#..6.Abe#k.8.5.A.zbTbb#obXbbbhb0b0aW#e.4.y.y#e#eaWbia6aP.4.1.x.MaW.8.8.A.9bV#..9#.#o##bmbia8a6aRaO.waP.z#l.6.9b6....b0be#k#b.........#.#.#.#.#.a.x.H.CaOa7bXaN#8.N.u.E#7.E.C.NbT#m.o#v#v#v#v#AbBbybrag#7.B#7.B.E.BambIbIbJbJbI.4.AbVbA#A#zbpbybnag#5.B#y.Y.W.W.U.V.V.V.U.Ta9#8#Y#P#O#PaI.B.S.l#2#2ae#O.Zac#Z.r#PbFbCbMbFbB.R.R.R.R.R.l.R.R.R.l.l.l.n.l.k.j.j.i.h.f.h.f.g.g.g.d.c.c.d.b.a.a.#.#.#.##EbSbR.#..................................auaAat#V#L........", +"aUaT#c.4.xbhbhbcaU#k.5bh.J.A.A#bbcbm.w.4bgbmaVaP.1b0aYaT.4.K.J#e#g.9.6bU#obf.5.A.KaZaY#gbUbdbebmbmaW#e#d.K.x#baW.K.AaVaPaP.O.x.1aS.9.9be#g#gbgbdbb#g..bf#obib4a6aP#d.I.O#l.8#.#h....aU.7#j.7#f.............#.#.a.b.c.c.e#c#n.h.i.I.uaSa5bf.N#7a0.z.X#v#v#v#v#B#Bbobvbsa..E.E.E.Fb7bIbIbIbIbJbEbDbDbDbA#AbA#Abpb3bpaf#3.D#3.V.WbNbE.V.V.V.Vbobr#8aL#R#1#R.q.D.R.R#S#Q#OaGbQ#P#O.qaMbB.ZbF#zbC.R.R.R.R.R.l.l.l.R.l.l.l.l.l.l.k.k.j.i.i.h.g.h.g.g.g.e.d.b.b.b.a.a.#.#.#...b.2bSbS.#............................bRauaAax#V#L........", +"aU#i.4.AbhbxbhbcaU#k.4.xbWb0#eaT.4.J.wbibga6aVaP#d.IaT#e.z.w.1aP.9.z#lbUbUbU#n#g.6##....bWb2beaWaVaT#e.4.x.waX.6b6.6#c#d.M.L.wbab.aWaT.4bf#jblbWbe#k.7b8a8bxbybjaP.O.I.O#h.6......bWbcbf#m.6bd.............#.#.a.c.e.e.f.f.h.h.k.k.n.n.nb2bW#k.zbX.Xa0a.#A#B#BbDa0a2a.#7.C#7.BambJbIbIbJbEbEa3.N#BbD#BbDbCamaibnah#6.E.D#9bNbJbJbF.V.U.UbMboaN.PaCaB#Y.q.r.EbA.l.l.l.jbAbMbC.l.jaHac#z.R.R.R.R.t.Rawaq#M.R.l.R.R.R.R.l.l.m.l.k.k.i.i.h.h.j.h.g.g.e.c.c.c.b.b.b.#.#...#.#....#EbSbS.#......................b6aSatat#V#Jaq........", +".4#c.K.zbhb4b2bcaU.4.z.z#caYaT.4.4.xbib4b0a6aVaP.4.w.L.4.x.A#faTaWaT.4bUb8bW#m#g.7###.bkbWb0bd#e#e#e.5.w.yaZb6#n##.9bU.G.G.1aSb#aVaX.4.M.Jblb2bW#j#g.7#caVa6a6aR.O.G.uaS.8.7....bkbkbXbX#j.7#h...#.....#.#.#.a.b.c.e.f.f.h.h.haSaR.I.n.pbd#j.7.z#vbqa7aQ#7.EbDbIbD#9.E.E.Fa4bIbJbEbEbpbnag#3a1.N#BbAbBbA#AbJaiafa##3.s.DafbNbCbMbMbFbJaCaHaCak.P#Zak#P#PbubYbM.lahajbFbMbC.Z.jaHaLaa.r.R.R.t.R.RawaMax#U.R.R.R.R.l.l.R.l.l.l.l.k.k.i.i.i.h.h.f.h.g.d.d.c.a.b.b.#.a.#.#.#.#...#...2bRbT....................#Eb6..#T#J#T..........", +".4.A.x#fbhblbkbcbgbmaU#i.KaX#e.4.x.wbhb4b0bmaX.4.M.I.LaR.x#bb8bgaWaT#b.xbfbe#g.8.9#h##bTbfbb#j#c#b#a.x.y#fbVbf##.9.9bU#mbha6bibia6aR.4.x.Jbebfbb#k.7.z#laVaVaP.4.I.uaSaV.6bX....aU#jbU#na8a5aO.O.f#o#n.9.#.a.a.c.e.e.f.ha7a1#8bxaR.O.Ibm#ka3aN.Nbqb3bra..F.CbDbEbIbI.F#7ambJbEbIbDbnbybsag#3.E.vbAbNbNbMbNbN#5#5.E.B.Bb1bNbJbMbCbEbJbBbtbtadaa.rbC#P.raDa2.S.RbzaEaj#2bF#zbGbBadaa.ram.RaqbBbA.Raxaq#W#Jar.l.l.R.R.l.R.R.R.m.l.l.j.j.j.i.h.g.g.g.g.d.d.b.d.#.b.a.#.a.#.a.#.#.....#...2bRbS.#............bSbT..avat..............", +"#h.4.4#ibcbcbjbhbhbmaT#e.y.y.4.y.xa6bgbjbib.aO#d.J.x.MaP.1b#bcb0aWaP.4.1.4#h#..6.6#n#o#jbb#j#k.7.A#g.1#aaT#nbmbgaWaP.Mbib7bib5b4a5aP.M.w.4#j#j#l.8.A#gbb.6.4.4.L.I.3bZ.8#hbb.8bb#j.5#ma8b0a5aO.N.wbU#n.6.a.b.c.c.e.fbgbrbxa1#8.CaR.N.Ibqa3a3aN#8.Ca9aN#7.C.NbIbDbIbU#n.9bJbDbDbDbDa2bpa2a#.B.DbabDbNbEbEbFa6a5.D.B.Ba4bNbNbEbJbCbIbKaHbtbtad#4.r#4bPbMbBbBbMbzbvbt#5.D#3bFbCbBbP#PaabBaLar#QbC.Z#U#V#L#T.l.R.l.R.R.laq.R.l.R.l.l.l.k.j.i.h.g.j.g.f.d.d.d.d.a.b.a.#.#auauap#T.#.#.#.#.#.#.2bRbS...........2..auaKatao#L..........", +"bXb0bVbbaWaTbhb7bZaZ#i#e.K.z.y.x.1aZa6aWaVaP.4.M.x.x.1aVaZbjblb0aX#e.J.w#a.8.6.8b8#o.9bU#g#c.7.4.7bV###h.8#gblbjaWaP.4.wbVa6bxb.a6aO.G.xaP.8#c.8.z#cbX.w#f.L.x.L.MaSa6bfbebhbhbdaU.4.AbibxaR.1.L.O#n.9.9.b.b.c.e.ebia7bxbyaQ.N.uaQ.ualbqb5a4a..N.Ba.#7.C.Fb8bIbEbXbU##.9bEbDbD#BbDagaga..E.BalbCbh#ebJ#Abib5a5.O.LbNai#3bJbCbEbAbQ#FaDaCad#4#P.qanbEaGaHaB#RaEaEae#2.s#5bEbA.ZbFbF.jarar#X.tbB.RbB#z#W.R.Saq.l.R.laKax#U.SawaAap#J.k.j.i.i.i.h.f.g.g.d.d.c.b.b.a.a.#axayap#Lao.........#...#aSbRbSataobSbS..auawap#T#T..........", +"bkb2b2bb#kbhbxblbWaU#e.4.y.z#e.4#eaYaVaXaP.4.M.G.x#faZaT#cbmbmaW#eaW.y.yaS.9#.#lbT##.8bU#m.7.5#cbebe.9.8#gbgb0b0aVaP.K.waWaVa5aX#e.M.x.waV....aW#c#d.x.1aWb2aT.OaO......bdbhb7bdaU.4.AbmaWaP.I.xaR.9#h.a.b.b.e.f.fa6aRa9aR#8.I.FaR.O.1a7bqa3#8.E.CaN.C.EbabDbIbI#o#o##.9bDbD#B#B#B#B#3.E.B.NbJbhbc#b.1#ya8a8aO.L.Obpa2#9bK#AbEbEbK#Bacabaa#P.sanaebJaLbuac#R#5ab#2.Q#6aEbBbMbB.ZbFbB.jaI#Xbtazazaq#M.RauaKax#V#Latax#V#Jaqawax#V#J.l.l.j.j.i.h.h.g.d.g.d.b.b.b.b.a.aavap#V#J.#.#...............#auaxap#T....atap#W#Jaq..........", +"bdbkbe#k#cbmbgbcaU#e#b.z.x#baZ#n#h#g.4aP#d.M.G.w.1bTbi#e.4aUaT#ebibmaV#e.4.Jbf#m.9.9bUbU#n#.bmbmaT.5.9#h#.bmbiaY#e#e.w.1aTaPaRaO.4.x.1bTa6.....4.4.K.yb1bhaW.4.y.yaU..bhb2bhbkbc#k.5bia8aWaP.4.xb4...#.a.b.c.eaRaR.4aP#8.O.H.Hb1.1.o#va1aQa..E.v.Na7a9aQ.O.HbIbIbD#.##bK#B#A#A#A#B#BbObN#7bCbC#f#e.zbc.WaRaR.1.HaSbna..DalbIbCbMbEbJbF#2#P.s#4aJbKbIaGaB#R.qae.r#2#9btbBaGaI#0#zbB.ZaGaz#UayaKaAaq#X.tawayao#M#W.R#V#M#T.RaoazaraB.l.k.k.i.i.h.j.h.f.g.d.c.c.a.b.b.a.##T#LaA.#...#...#...#....auaAayao#L#V....#T#Jaq............", +"bb#m#j#c.5.yaWaT#i#d.z.A#a#faUbdbb#i.8.M.4.x.u.1aSb..A.4.K#b#ebibib.aV#e.4.xbf#m.9.9b8bU#nbhbjaY#i.4.x#nbiaWaTaT.4.A.wa6aWaP.4.4.u.Iala5bmaT#e.z.K.KaS#baX#e.4.zbT#obUbdbhbbaU#i.7bib4b0aT#e.M.wbcaU#e.a.ca8a8a5aRaN.G.I.N.Pba.o.o#v#v.N#8.P.F.Nbrbxa9aQ.O.HbIbEbDbIbD#B#B#B#AbNbNbDbNbIbJbNbJbAbPboa0.NbJ.O.uaSbM#6.E.EbEbCbFbCbPbMbBbM.Z#4bAbAbI#D#Zak.q#2#4.YbB#AbFaGbYaI#X#ObBaCadazaraAaGaG#0#Q#Kaqap#W#Jax.m.l#V.l.RaAazar#X.t.l.j.k.i.i.g.d.h.g.g.c.d.a.b.b.a.#.a.#.#.#.#.....#........avaxap#V#Jao......................", +"bW#i#f.8.5#b#f#e#e.4.y.zaTb8bkbdbb#j.4bjb7.M.JaOaV.y.w#b.1aUbib0b4b.aTaP.J.w.4#h.9.9bU#o#hb0b2bm#e.K.y#.bh.4#e.4.J.ybia8aWaX#d.x.M.4bjb0bcaT.4.w#i#c.z#i.J.y.x#fbU..#oaUaT#f#f.5.5bgbjbjaX#d.G.yaTaU#d.ybfa8b3a6aRaO.N.I#na9aQ#8#p#v#v#v.E.F.Na4bxb3bqaQ.O.C.NbIbE#BbA#A#A#A#BbJbNbDbJbJbPbJbJ#AbJbqa..CalbNbEbKbIbJbNbJbBbIbJbKbDbCbMbCbJbE#FbJ#AbCbG#R#4abbE.WbBbGbFaIaG#Z#QaHaHaFac#R#Pazazaq#U#K#NaIar#Jaz.S.R.Z.R.RazaMaLar#X#K#W.k.k.j.i.i.h.d.d.g.d.d.b.b.a.b.a.a.#.#.#...#.#.#........aoao#V#J#W.#......................", +".wbd.7.z#fbV#c#b.7.A.z#cbXb2b2beaU#gbhblbmaVaX.4.4.y.y#e#n#ibgbjbhbi#e.4.G.x.4.8.6#g#obfbmbhaWbdbb#i.7aTaW#eaWaX.xbib4b0aWaP.4.G.Mbgblb0bj#e#b.y#e.A.z.#..bU#n.6....#n###c.A.7.5a6a6aWaT#d.1.x.1bWaT#c.ya8bxbZb#aP.4.P.La8a0a.aN.I#v#v#v#B#Bbja1a7a7a0.O.N.CalbD#B#A#A#v#A#B#B#BbJbIbJbDbJbJbD#zbPa..E.EbIbJbIbK#BbJbJbDbIbJbMbJ#BbJbFbDbD#BbL#BbBbKbKbP#ybJbDbGbD#y#z#Z#Z#X.taHbuaLaa#P.rar#0#U#K#ObYaLaB#X#O.RbC.Z.R.RazaGaz#0#M#K#0#M.l.i.i.f.h.g.g.g.d.d.c.d.d.a.c.a.a.a.#.#...#.........#..#L#L#W..........................", +".A#j#c.K.z#i#g.6.7.7#kaPbkb2b2beaU#kbibibiaWaX.4.J.w.zaT#.##aWa6aVaP.4.M.x.waT.6#.b8blbgbmaT#e.5bb#k.8.5aPaPaP.4.4bib0bZaVaO.L.w.MaWbhbcaT.4.J.waT.yb2.5bfbX#h.7......b7bb#gbibibgaPaX#e.M.x.1b1aT#c.z.xa7a8a5aRaO.N.ubqboa2ag#7.B.H#v#B#B#BaU#ea1aQ#8.1.v.FbabC#AbNbJ#A#AbDbDbDbJbEbDbEbDbNbN#vbJbzah#5bDbN.WaE#6bIbDbIbJbJbK#BbDbD#AbDbDbG#C#CbCbDbJbD#zbQbK#B#y.YbGbO#O.qaeaCaDac#P.q#4.W#Q#K#NaCaGaHar#Q#O.R.Z.Z.S.Rarar#0#U.t#N#L#J.k.j.i.h.h.g.g.g.g.c.c.c.bauat#T.#.a.#.#.#...#.#........b8.2............................", +".x.K.8.A#fbebb.5bcaU#e#cbdblbkaU#g.4bjbVbja6aT.4.K.w#aaU#k.5aVaXaP#d.1.x.1aZaV.7bVbbbhbhbmaU#e.K.w#k.5.6bf.K.J.4.Ma6bmaVaO.4.G.x#e.4aVaT#e.K.y#eaW.K#c.5bia6aX.4#b..bdbf#ga8bib7bjaX.4.K.x.Jb#bm#e.4.yaZaRaRaRaO.O.ubobybZa0a.#7.C.F#A#BbIbIbIbD#8#8.N.H.FbTbD#AbNbNbDbI#B#BbDbDbDbDbDbNbNbIbIbJbzb3ai#5.DbPbpbp#9.BbKbIbMbKbK#AbL#BbIbG#C#BaB#R#ybBbDbC#BbP#CaGaCac#QbObGbB#Aacaa#4.r#Pb4#AbB.Z#0#0as#Z#R.t#1.S.S.R.R.R#0#0#Q#S#NbY#J#T.l.k.i.j.h.f.g.g.d.e.d.b.caAaw#V#T.a.a.#.#.....#.#.....#bS.#............................", +".x#a.8.7bXbbbbbhbhaWaT.4bdbb#j#j#cbibhb4bVaVaP.4.z.x.4aY.7.zaZaP.4.4.J.G#db1#m#g.7bib0b4bgaV#d.y.w#c.z.7#j#m#g#dbcaVaRaP#d.L.x.1aZaVaP#e.K.K.1b1.x#f.za8a5aRaO.L.x#b#o#..7bgbibia6aP.O.x.MaP.##b.5.w#bbc.eaO.O.O.I.Hbobybva4a..E.C#7#m.8#BbIbIbDa5.H.I.IbabD#B#A#AbJbMbJ#BbNbNbDbDbDbDbMbIbObMbKaFbnaf#6.QbDbnal.E.EbI#B#BbD#BbGbDad#2bKaCbtaBak.qbGbD#B#A#BaGbYaC#Z#Q#ObDaFaHaF#P.q.ran#SbCbC#z#z#K#Y#Q#O#Raz.RbB.Z#z.ZaG.t#S#QaC.t#U#J.n.k.j.i.j.h.g.g.d.e.d.c.bavao#Lax.a.a.#.#.#.#.#.....#b8#E..............................", +".y#eaWaZbdbdbhb0bjaWaT#caUaT#i#cbkbibjblbjaW#e.4.J.w#e#h#g.zbRaU.M.J.waSb.bf#m#g.6bhbjbxbm#e#b.w.yaP.A#fbf#j#..5#jaOaP#d.1.I.LbVaVa6aX.4.x#faU.z#bbkbia8a6aRaO.N.xaO#o#h.6aWaWaVaP#d.x.GaZ.#.#.#.a#e.e.ga7bx.N.I.Lbaa3a3a0a.#7.C.Bal#m.7#m#BbIbJal#8.H.ObDboboa0#7.vbCbJbNbNbEbJbEbNbJbA#AbQbJbDahab#3.s#6bNa#.E.DaEbIbKaLaF#4aHaHaD#4.saGaGaBak#P#x#B#v#x#CaGaGaC#Y.q#ObGaHbYaLae.r#2#Q#Xazar#QbObMbFbB#XbB.SbB.Z#z.Z.T#Z#X#OaIayaz#U#K.n.l.j.i.f.h.d.d.g.d.c.d.c#T#J#W.a.#.a.#.#.......#.#.#bS.#..............................", +".1aT#nblbdbhb0b4bVaUaP.4.J#c#.bhb0aWbgb.aV.4.4.1.x.JaT#m#.#hb2bhbcaW#i#bbgbmaW#e.JbcbgaVaP.4.1.w.1aZ#cb8#m#g.z.8#m.z.M.M.u.1aZa6b4aWaP.4.x#h.1.4aU#hbxb4a6aRaO.I.HaS#n#..9bgaPaP#d.I.wbTaW.#.#.a.b.c.e.fa1a5aQ#8aO.Ca0aga.#7.F.B.Ea1#..8bDbDbIbIbIbJ.1bD#Bbrb5a0#7.Ca2a.bJbDbJbIbnai#6bNbNbJbCahbN#2.s#2bwbJbL#FbIbDbI#BbtaJ#2bzbtaD#4.QaGbYaC#Y.qaHaBaa.raGaBac#Z#R.q#1bDaDaDab#2.rab.tazaMar#X#MbFbF#zbB.Z.Z#z.T.Z.Z.R.S#Q#zbEaq#0#J#W.m.l.k.k.i.j.h.g.g.d.d.c.c.d.b.b.b.a.b.#.#.#.#......b8bR.#..............................", +"bVaWbkb2b2bcaW#i#eaT#e.5.A.4.7bkb2aVaVaX#e#d.K.x.1.1aW#.bf#obhbhbdaWaT#b.y.5#j#e.4aTaTaP#d.1.x.1b1#fbV#h#g.7.7b2.9#faTbg.4aPbibxbjaWaO.L.x#d.9#m##a8bxbxbiaO.O.I.uaP#g.6bUaXaP.M.L.1aSb#.#.#.#.b.c.e.e.faOaN#8.I.C.O#7#7#7.E.F.FbY#8.Ebfboa3a..PbJbIbD#Ba2bra7a..N.va.ag.Ea2bDbzb5aia#.BbMbPbpbn#9.Dbna2af.Eag.C#C.UbIbIad#4.saDadaa.r.raGaHac#RaHbuaD#4.qaL#Y#Y#Q#P#1aA#y#4ab#2.r#6aDaCaAaG#X#Q#O#M#A.Y.Z.Z.S.S.T.Z.T.T.R.R.RbCbC#M#0.S.S.m.n.j.j.g.g.f.g.g.c.e.b.c.b.b.b.a.a.#.#.#.#.....#b6..................................", +"b7bgbkblbhbhbcaT#e.z#b.y.w#fbcbhblbdaP#e.4.J.w.1aSb6aY#lbUbkb0b7bhaU#e.4.y.KaT#e.5.A.4#e.z.z.1bTaY.A#ia6aVaP.4.H#.bUbibhaWaXaWbmaV#e.M.w.JaZ......a5a8aVaR.4.H.u.LaP.6#g.....K.xaTa4aQaO...#.a.b.c.e.gbfbW.I.N.ualbsa5.C.P.B#8a4a0a..E.Cb4a1a..E.EbEbC#z#ya0a.#7.B#7bvboa2ag.E#7bpaf.E.BbEbza7a2aNbpbva2af.E.B.EbK#BbKbKbD.Dama.#4.r.rbYacac#R.qaCaCaa#P.raCar#O#O#1aC#y#y#A.s.r#5ahbKbJasar#X.t#ZazaqbB.R.R.R.l.S.S.T.R.R.S.T.TbA.S.T.S.S.Uayaxaq#K.h.h.j.g.g.d.d.c.d.d.#.a.a.#.#.#.....#.bbR..................................", +"aU##bcbhb0bZbm#i#e.y.y.A#faZ.9bcbcaU.K#a.J.x.I.1bTaW.9#o#nbhbWb0bjaT#e#b.y.4aU#e.K.zaT.z.4.KaVaY.Abibga6a5aP.O.u.xbb#cb2aW#eaPaXaP.4.w.1bVaV#g.6#naRaRaR.4.N.u.1aS.O.G.7#.....a8a7a5a1aN.I.C#b.c.e.e.fbebe#c.7.Oa8bra8aR.4bsb3bsa.#7.E.EbraRaO.C.FbD#B#A#y#7.N.C.Fbsbob4a3a..E.E.B#3.D#6bDbqb4a7bobrb3aiaf#6.Q#8bKbIbK#BbKbI#G#Gadakaa#w.l#R.q#Raaaa#P.qbY#Y#Q#OamaIac.YbG.X#w#y#B#A#AbK#Q#Q.taaayaGaq#M.ZbCbB.Z.l.S.T#z.S.R.T.R.Vax.S.S.Uaybuax#W#M.i.j.f.f.g.e.d.c.b.d.d.a.a.a.#.#......b6b6...........#......................", +"##.9#mblb4bWaYaP#c.y.z#ebVbc#laUaU#i#k.w#a.w#faTbg.6bXbU#obcbhbcaT#e#b.w.w#c#f.4.K.zaP#i#j#k#c.z.5bib7bjaVaP.4.xaObb#g.AaT.4.x.1.4.x.waSaVbb#g.z#hbb.4.4.N.L.Ibab#aO.G.Ibkbca9bxb4a5aQ.O.I.H.5.b.e.f.h#.#g.Ab1bfa8b4bxaQa2bqa3a0#7.N.B.Na8a5aO.L.IbD#A#v#A#B.E.Eam#7a3boa2#7.B.E.B.D.EambDbqbra7bnbna2a.#6.B.BambIbD#BbI.U#CaHaHaCak.r#x#xbL#F#C#x#P.rae#C#x#PaaaGaGac#P#BbL#G#p#yaHaFaabG#y#X#UayaA#0#K#0#z.ZbB.R.SbB.Zaxaq.T.TaMav#T#T.TayaAar#W#J#W.i.hawawap#L.d.c.c.b.b.a.a.#.#.#.#..bRat#T................................", +".6.6bgbhblbhaT#e.4.w.yaTaY.8bU#f#k.4.5.5.KbRbVaP.9bU#ob8#oaUaUaT#e#b.J.A.1aZ#d.z.A#baU#g.7#c.z.5a6biblbjaX.4.G.x.OaS.8.5#g.y#aaZb8.1aObUbe#g.7.6.6bd.4.L.I.4bab#aR.O.I.Lbra8a8bxbybraO.O.C.IaRaU.f.f.h.h.k.h.n.na8a8a5aO.La0aNa.#7.B.Calb2a5aP.I.G.E#v#y#A#A#Ba2a..Fa2ag#9.E.Ca.#3.EbIbIbIa2a0aN.Nafafa#.E.B#3bPbK#CbGaEah#3aHaLadaFaDabaa.s#x#E#q#p#x#wbG#C#GaGaLaLaa.r#1#F#x#F.jaHaL#R#P#A#AbFaqaq#M#K.S.m.Rawawao.Sawawaq#Lavaxao#L#W.Saqaq#W#J#Kat.j.kaKaAaq#T#L.d.b.b.a.a.a.#.#...#avauavao#J...#..............avao........", +"be#jbkbcaWaT#e#b.x.w#eaU.6bfbfbk.w.4.z.1aZbjaWaX#e##.9#o#o#eaP#e#b.K.w#bb1bV.z.A#baTbc.7#c#l#caUaVa6a6aXaO.1.u.GaS#cbdbdaU#caYaZ#o##.9#n#l.8.zbXbUbe#h.6a9a8a8aR#8.I.uaObrb4a5a8a1aQ.O.F.C.IaZ.e.f.haU#e.k.n.n.oa1aRaO.L.u#7#9.N.E.Cbaa3.CaR.1.I.I.E.Zbqa3a2bpboaga#.B#3.E.Eba#6bDbCbPbJbIala..N.C#6#3.D.D.DamaDab.Dbvbpah#3.QadaHaFaDab#2.Q#C#x#pbG#w#v#F#v#w#vaB#Z#O.r#C#p#x#F#wac#R.raC#A#AbI#M#M#JaMbMbFbBayax#UaxazaAao#Jaqao#L#TbMbJ#V#U#J#MaMat#VawayaAao#L#M.dbO.#.b.b.a.#.#.#.bavaAat#V#J................auaAap#L......", +"#h.8bkaTaT#e#b.y.y#fb1#l.9bW#hbcbd#e#caTblb0bbaT#c.A.6#o##.6.7.4.z.A#baZaY.K.y.zbTbj#c.6#c.7bUbf#oaXaPaO.O.I.1baaVbfblbd#j#c.A#h##.6#n..#c.6#lbUb2be#g.9bfaRaRaO.N.u.Oa9brbsaQaRaQ#8.N.v.1aSbU#n.fbWbc#i.AaX.1.o.4#8.N.1.Ib1.P.N.Fbaa4.F.CaO.I.CaS#7bqb4a3bpb3bsa..E.FbJ#7a..1bIbDbNbPbJa2#8.C.Falba.B.E#9aHbvaFab#2.Dbuaf#3.QaFbvbvahaa#2#2ab#CbL#D#v#v#s#x#x#p#R#P#Pbw#x#v.i#v#v#E#R#ybQbDbQazaraz#0bObMbC.Zaq#W#JbYaxaq#U#KbBbO#VbBbFbBbC.T#Uavavao#Lapaxaq#T.tar.dbPbF.b.a.a.#.#.#b6atat#V#J#T.......#avao...#awaxao#J......", +".7bdbk.4#e#c.J.K.zbTbc.6##bdbb#j#j#i.4bhb2b0aW#k#b.y#a#o.9.9b2...7.4#k#b.5.x.1aSbV#k#b.z#c.6b2bX#n.4.4.O.J.L#fbZ.8bkb2bU#ibhbcaU.8.1..bUbUbU#hbhbcaU#b.z#maO.O.H.L.GbTa1a7a0aQ.4.O.I.I.Hbaa9#o###.bWbdbgbf#m.8.w#v.u.N.Oba.Na1bqa4a.al.C.F.1.Hala5#7a3bqa3a2boa2#7.E.Ba.bJbIbJbK#CbPbKbva3#7.NbIbK#BbIbIbKbpbtah#5.r.Daf#4.B.DaDaJaEae#4.r#2#v#C#x#GbL#w#x#p#p#q#w#w#w#F.XbG#B#v#x.o#A#AbG.YayaGazazar#Sap#UbD.S#WbFbB#U#M#KaM#zbMbFbMbFbB.T.T.Uaoao#T#LbM#V#T#M#U.f.gbMbF.c.d.a.#.#.gbR.##T#J#Tau...#auaAaxap#T..apao#T#W......", +"bbaUbkb2.K.4.A#daZaY#f#.bkbkbc#j#c.7.zbhblbkaU#k.1.y#a#g##.b..bba6aWaX#d#e#b#e#j#i#b.3.7bbbfblbl#j.8.G.L.xaSa6bd#kbfbe#jbkblbcaT#c.y....be#mbhb2bj#i.K.z#fbi.L.L.1aZ.G.MaQaO#8.F.H.N.HbaaZbU#o.8a7a9aR.Nb2#m.8#..Xa7brbyaQ.N.Ca0aN#7.F.Fal.HaSb#.Fa0a2aN#8afa0#9.E.v.NbJbDbMbLbQ#vbJbNa2a..CalbIbIbNbIbKbKaDah#5#2.r#2#5.D.BbZadadad#4.r.Dan#G#p#H#F#x#w#w#p#p#w.o#s#FbK#w#B#v#C.obL#D#w.X#AaGaAaLaG#0#M#M#V#J#zbB.ZbJ.ZbJbMbFbBbF.ZbPbF.T.TbMbB.UbP#TbEbFbB#U#V.i.f.g.g.d.b.b.b.#.#b6bR.#...#........auaAaAao#Lao#L#T#Lav......", +"bgaTbkbWbWbk#iaT.z.z#f#ob0b2be#i.8.z#cbmbmaU#e.4.y.KaT#e.ybfbfbibga6aT#d.J.J#j#g#b.z.7bTbV#nbe#j#c.5bhbhaUbbbb#k.5aU#jbhb0b2bc#i.4.A#e..#g#.bdbhaW#c.y#bb7a6b#a6aO.O.G.4.N.O.P.C.HbZ.G.bbUbX##brbxa9aQ.N.Ca8a1aN.Ia3a7a0.O.P.P#7#7.F.Pbaa3#7.C.Cbaa5#8#7.F#3#7.E.B.Eb1bJbA#A#F#F#FbIbI#7.Pbna2ag#6bKbKbK#Baeae#2.s#2b4#2.EaHaHaF#4#2#2#2alaD#P#x#x.X#x#G#q#w#x#v#x#p#F#F#w#p#B#x#D#D.W#A#v#varazazaq#U#K#0#T#L#zbBbPbDbBbBbMbMbBbPbBbFbCbMbFbM#zbMbFbCbM.nbE.k.i.i.h.h.g.e.c.c.b.a.#bR.#.#............atatao#T#J................", +"b0#ebdbdbbaU#c.7.A.7aUbfbkbd#j#c.5.5aUaTaT#e.4.w.Abdbb#j#c.4bgb0b2aYaX#d.J.JaY#b.z.zaZ#n.8#m#h#g.7bhb2bkbfbfbd#j.4.5#cbdblbcaT#c.z.w#i....bmaWaX.M.5.1aZblaVaRaP.4.x.Gbaa8bx.O.1aN.x.O.b#n#na7bxbxa1#8.H.CbZa1aO.HaQa9a1aO.valb2.E.Pala3bD.C.Ca4aQ#8.H.C.Eal.B.Dala2bIbM#AbNbNbKa8a5aObKbpboa2aga#.E#FbIbL#F#2.s#6bY#F#p#GaHb3aFab#2.r#5aD.qae#p#G#q#w#q.0.p#E#x#w#pbG#wbK.o#v#x#qaxar#U#C.X#0araq#X#N#Nas#JbYbCbAbFbObB.Z.TbCbBbFbBbObMbMbBbCbFbBbF.U.RbM.n.k.k.i.h.f.g.g.d.c.b.ab8.2.#.#.#..........#V#V#T#T#Z............auau", +"bcaUaUbb#j#k#b.A#b#fbb..bbbkbd#j#c#f#c.5#c#b.A.5bkbdbc#j#k.5bib0b0aWaP.4.w.KaVbWaW#i.1.z#lbebe.8.7bhblbfbWb8be#j.7.7#.#jaU#i#f.7.x#caZ.9bxbZaWaX#a.xaZbb#c#d.4bjbgaUaP.zaOa6aVaO.L.uaSa5aR.4aRa5a9aO.O.C.IbxaR.O.ubra8a9aQ.N.EbU#h.6#mbIbDaR#A.O.1.H.IbT#BbDboboa2ag#9.EbKbNbIbib4a5aO.Gbzbybrafa#.E#3bKbKbKbK#Bbaa.#p#H#xaFaHaD#4.Q#P#R.rae#H#F#E#r#s#r.X#x#F#E.X#E#C.X#x#w#CbHaybuaq#U#C.X#v#D#K#N#1aK#W#D.XbG#zbObNbCbBbBbB.ZbMbBbPbFbCbBbA.V.T.U.UbMbFbMbM.k.i.h.f.f.g.e.c.b.ebT.#.#.#...#.#..........#Tao............auaMax", +"bdaU#k#i#f#b.7.A#fb8#j..bUbkbd#m#g.5#c#c#m.5.Ablb2bXbbaU#c.zbmbgaWaP#d.J.x#db0b0aU#e.z.KbU#obkb2bdaWaUaWaP.4bd#g.z.7aWaP#e#e.K.z.Kb1##.9b0b0aWaP.L.waPaU#b#bbgb0bjaW#e.K.yaOaO.L.uaOa8a8a1aN.PaNaN.O.H.LaOaQ#8.I.ua8b3a1#8.H.H#h.8bUbe#g.AaR.O.H.H.F#8a0aNbobpboa2a0#9.E.B#CbJa6bia6.L.ubnboa2a#.E.B#6bK#B#F#Bbqa3a0aHaFadaDadaa#2.rae#Pahab#x#w#w#s#s#p#w#x#F#w#x#x#paGac#w#w#xaxaq#U#Jas#v#w#x#D#C#x.X#B#vbBbB.Z#zbFbFbBbB.ZbBbBbBbFbBbBbFbC.V.V.V.W.UbBbMbBbF.h.h.h.f.g.e.b.cb6.2.#.....#...#...#.....#................avawav", +"bf#m#k.5#c.5.A#fbV#gbVblb8b2bb#j#c.5#cbfbf#n.8bkb0bWbb#i.8.zaWaTaP#d.1.x.1aSbgaU#e.4.x#fb2bdbb#i.5#cbhbcaT.4.A.7.A#iaRaO.H.5.z#cbeaZbfaVbiaW#e#d.w.waT#c.5#fbhb0b0aT#d.y.K#o.L.uaOa8b4a9a0aN.G.I.N.u.Cbaal#8.I.CbTa9a7#8.N.u.N.8bkbWbb#c.7aQ.H.O#v#vbqa3a.bnbvb3bnag#7.E.C#FbPaSaR.1.xaOaiag#9a#.B.Dam#F#F#G#Cbyb3albubuad#4#4#P#Pam#xbzaFah#5.Q#s#G#p#p#s#p#w#x#G#FaHbtac#P#p#w#W#W#M#X#x#CbG.0.X#w#w#B#v.X#A#AbG#v#vbNbE#z#z.Z.Z.ZbFbBbB.Zavavat#VbBbGbFbFbF.n.k.h.h.g.g.e.c.bbR.#.#.#.#.#.#.......#...#................atapao", +"bfbb#h.7.7#c#c#i.8bWbfbfblbW#m#g.7.z.8b8#o#m.8bdbdbd#f#c.5.A#eaP#d.M.w.wb#bjaT#k#b.A#bbcblb2bb#k.zbhb7bgaT.4.w.za8a6a5aX.4.G.y.x#daY#j.7aVaP#e.J.x#b#j.5.zbcbgbgaT#e.1.x#b...#.1aPbrbqa7a1aN.N.u.I.OaR.o.U.H.Hba.NaQaN#7.u.1b7bJbbbb#g.A#f.O.vba#Abobvbq#7bobwbpbo#9#3.B.EalbJbK.O.x.1aEa#a#.E.E.DbT#BbK#F#Fa0a7a1aFbtaFaa#2.r#P#4#Fbzb3bnaf#3.Q#F#G#H#x#w#w#s#E#q#paCaBak#O#qaI#0#x#UbK#x#D#v#D#B#xbHbHbD#w#BbD#B.WbObNbBbBbBbBbBbF.T.T.ZbBaAaKat#V#L#z.Z.m.l.n.k.ibF.f.g.e.cb6.2.#.#.#.#.#...#.........#..................#V#L", +"bf#j#g.7#cbbbc#k.zbfb2bdbebb#g#c.z.7#lbWbf#h.8bbbbbgbgaWaX#e.y.J.K.x.waSbe#o.4.7.A.1bV#obWbWaU#c.zbhbjbm#e.K.wa6bZb3a5aP.4.I.waSaW#m.8.8#d.4.M.J.1b..7.zbeaVaPaT#e.4.x#baZ.#...K.La7b4bsa1aN.N.u.IbZ.o.Sa6a5.N.H.Cal.N.C.HbsbMbEbD#c.z#cbe.uaQ#y#Aa6aX.O.Ea2a2a2a..N.E.B#3bKbJbI#FbQbJanaE.E.E.Eamah#B#F#F#B#Fa.#8aDadab#1.s.raHaBakaFbnai#5.D.D#p#I#s#p#E#w#G#E#p#Fac#Y.saJaAaz#Z#X#u#F#v#v#E#C#C#w#wawaq#y#vbG#A#BbObCbCbF.ZbBbPbMbCbObObAavat#V#L#Tavap.m.m.k.jbPbF.d.f.e.cbS.b.#.#.#.#.........#.#........................#V", +"#n#g.8.5.8#j..bf#o#hbW#m#j#g#c.7.7aZbe#n#h.8.6#kbibjbhaWaX.4.J.yaU#iaP.9.9####.9#ebfbe#j.8aU#c.5.5aWaUaP.4.x.4bib0b0aVaO.L.x.M#h#n.9.7..bd.y.L#daVaWbhbha8aWaX.4.Aa9aRaQ.N.#.#.#a3bsbybxaQ#8.P.C#8a9aR#8b4aV.4.x.4#BbDbNb2bb.1bDbDbDbDbJbE#y#y#AbibxaXaO.xagafaf#7.F.B#3a0bN#FbJbKbK#CbPaf#6.D.BbRbIbI#F#F#F#F#G.P.C#5#2#P.DbYbuad#Paiaf#9#2.s#3#H#u#s#x#w#w#s#p#p#x#x#PabaGbYaMar#X.t#qbK.X#w#C.W#vawaLaq#K#A#vbPbKazaqarbFbBbBbFbBbNbFbFbMapao#T#JbYaKap#T.m.n.kbFbB.f.f.eb9#E.a.#.#.#.#...#.#.....#...#......................", +"#j#c.6.7#l#h.6bU#o#h.8#h#c#b.z.7.8b2#n#j#..6.8bdbhb4b0aW#e.4.y.1aU#e.K.z#nblbe#gbUb8be#g.8.8#b.zbV#e#e.4.y.Kb8a5a8a5aR.O.w.IaObga6aT.4bUbkbW#jbhb2bhbib0bZaVaP.4.xa7a9aR.O.u.#.#a1a7a7aQ#8.O.u.PaQa7a1#8.HaO.L.xbhaU.AbDbd#c.AbDbDbDbD#A#y#y#AaZb0bxaP.O.w.B#7#6.E.E.EbTa2#BbKbIbKbIbzag.D#2.s#9aJ#H#CbL#B#F#F#x#q#x#F.D#2aJaCadak.q#1#6#2.D.Fam#s#p#u#s#r#H#u#H#p#q#w#q#sazaGaG#0#S.tbK#x#w#C#v.XbG#Baq#Mat#W.XbKaAaGaq#W#K#z.ZbBbBbMbFbC.Z.V#T#Laxavax#V#Lap.l.k.i.h.h.f.eb9.a.a.#.#.#.#.#.#.#.#.#.#..........................", +".y.9.A#lb8##.6bX#n#g.6#.bd.8.9#g#h.9bf.8.6#g#obcbgbjbjaY.4.K.w.1aV#c.y.1.Ab2bebfbUbU#m#g.6#c.zaZbf#m.z.5#fbg#eaVaVaX.4.L.u.IaVbdbdbb#k.wbbaU#cbcaUbcbib0bxaV#e.L.I#da5aO.N.CaOblbWaRaQ#8.N.C.Cala0bxaQ.O.H.O.ub#bl#k.z#i#c.zbTbDbDbD#A#y.W#y#AaVa6aRaO.G.G.BbP.E.E#6amambIbNbDbPbKbpbyaga#.B.PaQaJahab.r#4bL#C#F#F#F#G#F#x#Gakak#P.raC#r#3.F#I#t#r#p#p#u#r#G#H#E#E#x#p#E.0asar#0#Q.t#N#x#D.X#C#C.X#vbG#yawaAao#JazaGaKar#U#KarbFbCbMbMbB#zbMbFbA.V.Vao#V#L#VbJ.n.k.i.h.f.fb9.2.b.b.a.#.aauat#T.#.#...........#..................", +".z.A.8bX#l.9.6#h#h.8bhbhbhaU#k.5.6bUb8#o#j.8.8aTbmaWaT#e.4.y.w#f.4.K.w#f.6be#gbUbe#n#g.9.6bebfbUbe#g.6#.aUaT#c.4aOaO.1.G.1b1bdbWbkaU#i.5.5#c.A#i#caTa6a6aVaP.4.w.GaVa5#8.H.u.ObWbk#8#8.N.P.P.Nb1a8a4#8.N.Cal.1a5aP.7#eboa3aQ.PbDbD#B#A#y#v#v#A#BaPaO.x.xb1b1bKbI#B#y.W#v#vbJbKbKaEbtbwaf#3.B.PaHbvaDab#2.D.r#x#x#F#w#G#G#u#u#t#P#R#u#s#r#u#u#u#t#s#q#s#q#r#I#q#p#p#H#H.p#x#Y#0#Q#O#QbY#w#v#p#v#w#F#w#v.Xaxaxayaxaqazar#U#N#KarbFbBbFbFbF.TbFbCbA.V.V.W#V#VbMbB.n.n.k.h.f.gbSb9.b.b.a.aauaKat#V#T.#..............................", +".z#i#n#h#..A.9#n#..Abkb7bk#j#c.7.4bUbf#n#..6.8beaTaXaP.4.y.A#daP.K.A#cb8.8#h.9bX#j#i.7.zbTbU#n#n#h.8bmaU.4.4.wbx.I.L.u.1ba#dbkb2bW#j#c.z#c....bU.7bhaVaRaP#d.w.1aZaVaO.O.u.Ca1a3a7a3.P.N.valb#a1aRaO.N.u.Pba#v#Aa7a0bqbsa3aN.H.CbD#A#A#v#v#y#Aa2a..M.1b#a0#6.E#BbIbIbKbKbNbKbN#F#Bagaf#3.sbtaFbtbtah#5.r.r.r.D#x#x#x#q#G#q#s#u#u#p#H#saDadab#t#t#r#t#t#u#paGaB#Z.B#u#p#p#x#p#O#Q#OaC#w#xbL#G#x#w#x#w.X#vaqaybtaz#Waq#X#M.taJbBbM.ZbB.Z#z.V.VbC.Y.W.VbObObBbCbF.n.k.k.h.f.f#E.b.b.b.b.aavax#V#T#T...........#....................", +"#d#i#h#..9.9bX.8.6.8bhbjbj#i.4.z.1bf#n#gbdbmaT.4bf.4.4.wbga6aVaP.1.wbV.9#o##.9#o##.7.6#jbU#..6#.bhblbgaT#d.K.4bibgaV.4.y.waTbdbdaU#e.8.y#j....#o#maWaT.4.4.J.L.1a6aO#8.I.uala9brbra3aQ#8.O.F.G.I.O.O.H.Hb1#v#ybrbqa3a0#7a1#8.C.NbD#A#ya3a0a.bqbra..Ebybsag.E.EbKbNbJbJbzbnah#6.E#Fa##3.D#3btadaDad#5#2.s#3.r#4#x#w#H#saHad#4#u#I#t#GaHaJad#4.r#s#s#t#I#IaGbYaC#Y#O#q#H#s#p#x.p#E#p#w#p#pbL#x#w#w#F#B#x#w#vawazaz#W#K#M#KaBbGbBbF#A.Z.Z#z.VbCbC.Z.Y.VbNbFbB.UbKbB.n.i.h.fbTb9.b.c.b.b.aapap#T#LbY...#............................", +"#e.J.6.8#.be#g.6.9#nbcbcbc#j#c.K#fbc#hbhb0bcaT#c.wbf.4bibZa6aX.4.J.x#c#lbU.9.9##bUb2#n#..6#g#...bhb4bcaX#e.y.4aWaX#d.1.x.1aVaWaU#i.4.A#faY.......8.8#b.w.M.waSaZ.O.N.H.I.FbTa7bZb5a3aN.N.C.N.k.n.n.O.NaQ.X#v#ybrbybxa0#8.v.N.vaQbqa2a..Fa0#7.vbsa..Ebpama#.B.EbEbJbPbJbvbwaf#6.Q#F#7#2.EaDbzbzab#5#2.s#2b6.ram#w#GbLaHbvaB#P#2#s#saHbtbtad#4.r#2#I#t#u#taGaHaC#Q.raeb9#s#p#q#x#q#rar#Y#x#p#F#wbK#F#v#w#p#xaxaqaq#K#K#B#D#z.ZbAbCbBbBbBbB.V.V#z#A.Y.VbCbM.Z.UbMbB.k.k.i.f.2.c.c.b.b.b.b.a#L#LaA.#...#.#.#........................", +"#d.K.xbkb2aZ#i.6#caTbhbhbcaU#e.zb8aZ.9b0b2bb#e.5.z#jbgb4b0biaT.4.J.w#d#g.6#ib8.9bUbf#h.8bgbgaT.4bhbhbm#e.4.w#b#e#d.M.L.1b2#d.5a8a6aV.1b1..........bd#j......aYaT.7.H.N.OaQ.7a7bra7a1#8.N.u.N.k.kaV.4.o.X.X#va8a3bsbraN.Na0a.ala1b4a3a..Fa0#7.Ba.#7.va.#7.F.Fb7bJ#ybJbzbpbp#9.E.D#6bIbKbzaEai#9.D#2.s#2bw.DbT#u#t#u#Iaead#4.ran#u#tadaDad#4.r.raj#u#r#t#uaBac#R.q#O#s#H#q#H#x#p#EazaI#Z.q#s#w#F#pawayaq#Jayap#U#J#NaK.ZbD#vbBbObN#A.Y.Z#y#z.Y.V.V.TbObE#zbAbObObB.n.i.hbHbH.c.c.b.a.a.b.a.#.a.#.#.#.#...#........................", +"#d.J.x.4bl#j#c.z#cbhb2b0aW#i#e.5.zbb.8bhaY#i#c.w.zaTbgbxbga6.4.4.w.yaP.7.z#m.9bgaWaX#dbhblbgaVbgbmaU#e#b.x.yaZ#b.J.K#db#.4.ybibxa6aV#d.x........bfb2a5aXaO...5.4.wbbbf#j#c.Aa1a1aQa..N.C.CaQ.pa1aQ#e.x.x.Xa6bxa0a3boa3aQ.NaN.N.Cbqa3#7.C#7.E.Cal.B.N.E.E.BbabA#zbna2ag#9.E#3.B.DbK#Fbtbvbnai#5#3.D#2#2.D#5#u#t#q#u#t#R#4.r#2#p#q#u#4ab#1#2.ram#u#t#r#r.9#R#1.q#Obp#G#p#u#q#s#paGbuaC#0#O#X#x#x#xayaA#W#Kayao#L#UbC#y#AbCbNbCbObFbBbBbB.ZbB.ZbFbEbObPbC.W.UbCbCbM.k.h.hal.g.c.d.b.c.b.a.a.a.a.#.#.....#...#......................", +".4.y.w.4bb#g.5.zaUbjb2b0aU#i.4.y.z.8.8aU#i#e.y.zbTaUaVa6aX#e.4.G.x#daX#i.4##bibiaWaV.4.wb2bibjb4aP#ebmbmaT.5bmbgaWaX.y.K.4.Jbib4biaR.4.G.4bd#jbc#gbibmbia6aVaP.O.7..#j#c.z.8aNaNaN.N.H.CalbZa7a7a1aN.Pa0.O#vaRaObqbsa3aN#7.C.E.C.N.O.E.C.F.CbT.Eala4bIbNbNbNbDbpbza2a2#9.E.B.DbZa4bzbtbybpaf#5#2#3#x#H#x#F#H#q#G#q#H#q#s#uaDaa#t#u#t.Q#P.sah#u#I#t#r#u#r.p#sak#p#q#p#u#I#u#t.paBaI#Z#Q.q#u#q#E#waq#W#Janao#JaM#C#A#D#BbJbM#z.ZbJ.ZbB.ZbF.V.VbFbAbAbFbMbCbC.U.m.l.k.hb9.2.d.c.c.b.b.c.a.a.#.#.#.#.#..............................", +".K.x.w#e#g.7.5bdbbbhbhbcaT#k.5.y#aaW..bb#c.z.z#bbm.8aPaPaP.4.J.xbmaWaP.4.4.Abxb4bgaX.4.w.4bgblblaWbha6a6aXaO.LbjaWaP.4.J#j..a6a8aXbia6aV.4.5#j.7a8b0bibibiaVaP.O.u.....7#gbd.4.N.N.C.C.Nbsa7bybZa1.O.P.N#8.v.O.Lbrb3bq#8.N.C.C.P.H.N.FaQ.BaS.N.valbDbDbNbNbIbBbpb4bqag#9.E.Eam.D#8aEaLbza2#5#3.D.Dam#x#H#F#F#H#w#x#s#s#GaLaDaa.s#I#t#u#I#t#u#I#I#t#t#t#I#u#u#t#u#G#H#E#u#u#r#q#x#0#R.taM#w#F#p#v#D#Nas#D#Lax#B#w#vbPbQbJbCbFbDbM#z.ZbFbCbF.ZbBbB#z#z.WbC#zbJ#z.n.k.h#E.g.e.e.e.c.c.a.a.a.#.a.#.#...#.#..........................", +".w.w.MaV.7blbkbhbcbbaUaU#e#b.x.y#i.4....#i#c#ebb#h.6.4#a.4.G.xbhbgaWaT.4.y.A#kbia5aVaP.4aOaVbgaWbhbibia6aVaO.L.xaX.J.5.4..beaVaRbibjbgaVaP.J.G.7a8bibib4bjaRaO.L.u.1.#.##e#d.w.x.L.N#8.7.za7bxbsaN.O.C.N.N.CaN#Aa3a3a..N.C.E.B.N.CalalbM#A#BbKbIbJbMbDbJbJbIambpbpboa.a#.B.Bag.D.Hahahahaj#5.D.D#6#C#q#G#w#H#q#H#G#u#raHbtaJ#4.r#3#I#u#t#t#t#u#uaCaGaB#Y#I#t#u#G#I#r#s.p#s#s#x#w.X#O#YbL#F#E#FbQax#Var#UbL#x#v.0#vbKbKbF#AbPbD#AbF#ybB#zbBbB#z.W.V.V.W.W.UbCbD.k.kbS.0.g.d.e.d.c.c.a.c.a.#.#.#...#.#............................", +".x#bbSaZ#obkb7bVaU#iaT#e#b.z.z#fb8.4.5..bUb2bW#m#..5#gbT.G.Mbib0bjbcaP.4.w.4#kbibia6aX.4.JbiaT#kbgbxb4a6aX.4.G.x#e.4a8a5aRa8a6a5bhb7bVaRaP.G.G.5a5a5bibib#aO.4.I.uaO.#.a.a#a#e.bbc#e.zaT.Aa4a4aQ.O.P.vaQ.P.uaQ#AaNa.#7.C.Nb1.Ea4ala1a4a3al.ubJbJbDbDbDbDbDbJ#9a2a2aNa#.E.B#3#3.B#9ab#9#5#6.D.s#2bY#x#x#x#I#I#r#s#qaEaFahab.D#P.r#I#I#t#t#r#I#u#raHbuaB#Y.q#X#s.p#q#u#s#r#r#E#p#p#x#t#tbL#x#x#Fauayayaz#W.t#x#w#CbGbMbGbI#BbD#AbObObB.Z.T.Y.ZbB.YbC#z.W.W.X.obM.k.hal.f.g.g.e.c.c.c.a.b.a.a.#.#.#.#.#............................", +".ybTbV..bdbWb0bW#j#k#b.4.y.z.1bV#c.z.zaUbebf#m#g.9.zbe#k.5bib0b4bVaU#e.1.y.4bhb4biaVaP.4.J.M.M.4a8b0b0b.aP.O.I.GaO#ebZb#aRb0bZbmbjbjbiaP#d.w.waTaOaOa6aVaP.4.I.u.LaV.#.#.a.b.c.ebgbcaU.4bcaNaN#8.P.va3a3a2a0#7.EbA.F.C.Pba#7#7alba#vbsbra..F#B#BbDbBbobnaga#.Caga.a##3.B#6bZ.DaEaha#.D#6.D.v.Dam#F#F#F#F#u#s#s#s#rbtbwah#5.D#2bY#t#taDacak#u#tadaHaC#Z#O.q#X#Q#q#p#s#r#r.p#H#E.p#t#I#r#x#w#vauaAaAaLar#M#KbI#B#BbDbD#B#A#DbM#zbMbCbNbJ.V.V.V.VbCbB#y.W.X.UbObPbBb9.0.g.g.e.g.e.e.b.b.b.a.a.#.#.#.#.#.#..........................", +"aSb#..bUbbbdbdaU#k.4.z#b.1#faT#c.1.x#faU#m#m#g.8.6#lbebdaUbmbjbhaY#e#d.K.x#dbhb5bxaT#e.M.G.MaW#ka6bia5aP.4.N.u.LaX#e.K.KaRb0bZaVb.aVaP.4.J.x#a#....NaRaP.4.O.u.MbVaV#d.#.b.b.a.db4bjaT#c.w#k.N.N.uaQbsbra0aN#7.C#7bAa7bybsaQ#7.C#A#ya7boa3a0.EbNbMbpb3bnaga#.B#3a#.D.E.Eba.Ebzbzah#5.D.Q.D#6ag#F#x#x#x#G#x#u#s#qaFbvbuaj#4.Q#2#P#taHaCaBaa.B#I#uaB#Y#Q.q#1#N#1#u#r#u#r#r#t#p#p#q#s#t#r#wbQ#F#wataxaq#W#K#M#C#v#v#vawaxaq#LbQbA#zbObN#z.Z.V.V.YbObM.ZbFbEbMbFbFbM#E.f.f.g.e.c.d.c.b.b.b.a.a.#.#.#.#...#..........................", +"aV....bUbUbb#j#i.4.z.A.7bbaT#k.5.A#bb7bb#g#..8.6#fbXbkbhaTaTbcaUaT.4.K.x.yaZa6bga6#d.4.G.waOaW.4aVaVaPaO.L.u.1#faVaT.K.zaOa8aVaVaTaP#d.K.x.1b7bU.......O.G.I.Ibaa5aP.4.xa6aWaXaO.Kbj#i.z.z.7#ba6a.bqb3b5a0#9#7.E.Na5aRaObra..N.Cal#yaQb4a3aN.P.EbEbpbvbo#9.E.C#7.B.E#7an#F#5bvbyah#5.D.EbzaJaj.Q#G#x#u#H#H#H#p#raFaEah#5#2.s#5anaHbtbvadak.r#uac#R#Q.q#Oas#N#I#s#s#p#r#I#t#s#p#r#p#p#p#sbL#x#F#T#W#W#M#Kaz#x.X#vawaMawaq#LbJbGbMbFbGbP.Y.Z.Y.ZbObM.WbB#AbObC.navauat#L.e.e.c.c.c.b.b.b.a.#.#.#.#................................", +"......bf#n#i#k#c.7.5#cb1bdbU.4.A#fbVbX#n#..5..##..bkb0bha6aWaX#e.M.4.x.1b#b8aWaVaX#d.M.x.JaZaT.4.GaPaO.O.G.IaSb1aT.4.z.4aVaRbga6aXaO.G.w.1bV.7........aV.L.LaOb4aWaP.M.Mbxa6aX.4.x#i#b.A.1#b.kaPaObobqboa3#7.E.B.Na8aRaO.H#7.C.F.EbNbobrbq#8.P.NbEbna2#9a#.E.Bambra..E#7#FaibpaE#5#3.s#9bubt#5.Q#6#G#G#p#q#H#G#Iahadab#2.s#6ai#uaDaHaDak#P.qabaC#Y#O#2#t#M#H#s#raFaCak#t#t#q#r.0#u#x#w#s#q#p.X#E#x#L#N#F#w#w#C#Cawayaz#W#J#0bFbCbC.ZbQbF.V.Z.ZbFbC.W.W.VbPbB.naAaAap#L.g.e.c.e.c.b.b.a.a.a.#.#.#...#............................", +"#c....#h#.bb#b.7.A#faZbb.9#n.9.6bfbUbe#h.8.zbe....bgaWbibga6aVaP.M.x.4#fb1.xaPaO#d.M.w.xaZb1#e.4.x.1.O.G.uaObjaT#e.K.x#f.Ibibja6aXaP.M.GaP.w.4...........4bmbib.a6.4.y.waTbiaP.L.x#d.y.1b7a6aV.4.La2a0a0a..N.C.CalbZaRaO.I.N.Eb5.EbAa0bobna2#9.EbCag#9#7.E.B#6a0a..E.Ea0bKbDah#5#2.B#6aiaDaj#2.Dai#H#q#H#w#s#H#u#t#2#2.Q.DbsaHaHadaBaa#4.q#PbuaB#Y#P#t#taCac#RaHb3ad#4.s#H#H.p#s#x#F#C#x.o.oawax#W#C#C#x#p#v#v#xaqaq#V#L#JbNbBbQbF.ZbMbF.Z.V.V.Y.W.W#v.UbEbFbHaxat#V#J.g.g.c.c.c.e.b.a.a.#.#.....#...#..........................", +"#c.......6#fb8bU#c.8.7#m#.##.6bX#nbe#m#..A.9...#bjbZbhb0b1a6aX.4.M.x#a#i.y.1bZ.O.L.x.G#db1aP#a.w.1aV....alaTaT#c.4.x.1b8bib0b4b.aR.4.G.Ga5aRaO............aVaWaPaP.L.x.1a6aX#d.1.uaS#dbca8b4a5.4.xa.aN#8#7.F.CaSbYa8aR.O.I.Lba#7.Bal.Nbqb3a2a..E.E#B#7.B.B#6bnbD.E.BalbDbI#B#2#2.B.DbY#2#3.D.DbYbLahab#p#t#r#q#s#t#I#2.D#6#uaHbuadak#P#P#PbvaBak#O.qaCaGaGaB#Y#OaF#4#P.r#q#p#G#s#p#F#x#wbLawaKaq#W#L#v#w.X#w#wbG.W#W#J#LaMbMbBbMbF.TbQbC.ZbM.Y.W.YbE#A.X.m.nbHao#T#Lan.e.g.d.c.c.b.b.a.a.a.#.#.#................................", +"be.8......bf#n#h#h.8.8#hbbaP.K....#h#..7.8aUaUbib0b0bgb4b0aWaP.4.y.w#daW.4aTaZbc.w.JaSaV#e#a.J.JbTb.....aO#d#a.y.w.1bja8a6bibia6#d.L.x.GaRaVaN.I.O..a8a8a9aR#ebma5aP.Jb8aXaO.L.x#eaVaVa8a5aO.I.I.u.o.N.N.C.C#7a3a5aR.4.I.uba#7.E.Bambobqb3am#7.E#7#BbM#6#3bJbCbMbJbPbDbD#BbKbK#B#3bvaj#2#3#B#5#HbzaEaj.D#H#q#q#q#H#u#t#u#s#raDadak#P#P#Pad#Z#Y#R.qamaGbtbuac#Y#O#R#P.raM#p#I#H#G#F#x#G#s#C#waq#V#K#T#w#v#C#v#w#D#A.U#U.WbObObBbC.Z.ZbFbFbPbMbB.W.YbE#A.o.mbM.0.f#Vao.f.e.e.e.c.c.b.a.a.a.a.#.#.#................................", +"bU.8.8..bUbW#o#h.7.AbhbhbcaT.4bhbdbbaT#c.zaWaTbgbibgb.bxbgaW#d.4.x.waPb2bmaV#e.Jbc#jbfbf.x.M.GaZaY#b.z.....J.L.4.K#kbxb1a5a6aRaP.4.G.I.1bxaQ.4.GbgbmaVaO.LaObibiaWaP.M.x.4.L.G.ObZbjbra7boa0a..Fb#.ob2bd.N#8#Aa3a3a0#7.ubaa5.E.BbT#Aa2a2a2#7.N.valbJ#AbIbJbNbJbEbqbn#9.BbKbKbK#BaJah#4.Qaf#x#qaFbvbpab.Q#5#p#q#x#u#I#r#s#r#raaab#2aCacaa#u#r.q.qan#IaIaGaH#Z#Q.q#Y.ran#r#p#E#q#G#x#q#G#s#s#p#T#J#W#w#C#BbG#v.o#BbGbG.Y.WbMbFbMbF#DbF#z#zbFbC.Z.V.WbJbA.o.mbQbC.j.h.g.g.g.g.e.c.b.b.b.a.a.#...#..................................", +"#b.y#...bUb2#n#g.7#hblb7aW#ibkblblbb#i#c.Abc#eaWaWaTaWaWaXaP.4.y.x.1aZb0bjaVaP.J.J.9#o#mbhb0b2aW#e.7.K..bibhbmaX.4a6bibiaOaPaO.4.G.w#db8a5aO.Nbibxb#aV.4.G.Gb3b2aW#e.L.x.w.J#daX.f.hbqa3a3a0aN.E.B.obb#i.K#iboboa3aQ#7.Cba.F.CalbJ#Aa.aga.#7.B.Bam#A#z.Zboa0a#bKbrbra#.CbJbK#B#Caj#5.D#2aJ.K#G#GaEaj#2.s#F#G#E#saF#5#u#s#r#r#t.DaHaHaCaa.r#4#s#I#E#IaBaB#Z#R.q.qaB#Q.t#p.pawax#K#q#H#F#q#x#x#p#w#C#w#C#v#y#AbG#y#ybPbGbMbJ#z.Z.TbCbC.Z.Y#z.Y.W.Y#ybMbA.o.RbJbJ.f.f.f.f.e.f.e.c.c.b.b.a.#.#.#.#.#.#..............................", +"#c.y#i..bf#n#h.7.8bdbWbWbc#kbkb7bWaU#i.4.z#b#b.zaT.4aXaX#e.4.J.x.1b1aWb0bZaT#d.y.K.8b8#.bhb0bkaU#c.z.z..bib4bgaP.MaVaVaXaO.O.M.w.w.1bVaRaO.O.ubxb2b.aX#d.G.MbibgaP#d.x.GaVbe.e.e.g.fbpbqa3a0#7.P.va.#c.A#fa3byb5a1a..N.C#7bIbMbDbJbD#A#7.E.B.Bam#y#ybJbpboa2#7.Ca2#9.E.EbD#BbI#BbI#2#3aiai#9#x#q#4#2.Da4#F#p#saHbvab.Q#paGaCakaFbYbuadaa.r#2#r#t#q#t#t#X#Q#O.qbwar#Q#Q#saybuaq#M#p#G#G#w#H#E#p#E#C#v#x#w#p.XbG.WbBbI#AbEbBbFbPbMbAbA#ybB#zbM.Z.W#vbCbFbA#E#E.h.h.h.h.f.e.e.e.e.c.b.b.aauauap.#..................................", +"aU.zaUbUbfbb#j.7.7#obhaU#k.4bkbWbjaU#c.5.A#c.1.w.4.J.x.4.M.J.J.ybab.a6bgaV#d.K.x#d......bbbcaU#c.5.x#e..bgbiaV#d.x.1aOaO.L.x.G.O.1aPa6aO.N.N.IbibiaV#d.L.x.1aVaP#d.w.u.1.b.e.cbiaW#ebqb4bra0aN.E.vaQ.o.U.Xa3brbqa2#8.P.ualbNbJa5al#A#AbMbJ.Eal#y#ybMbqbvbva0#7.B#9a#.EbMbI#B#BbKbK#Abzbnaiaf#3.Q#x#xaf#H#q#w#paDae#2#2#qbYaCakaHaHaFaa#4.r#4#t#s#u#s#r#u#O#Pan#Z#Q#N#1#qayaq#U#J#p#G#x#x#x#p#q#C#x#x#E.o.X.0#D#v#v#ybObD.ZbObPbBbF.Z.Y#zbMbM#z.W#v.WbCbAbE#z.h.h.f.f.f.e.e.e.c.c.b.a.baxaKap#L..................................", +"bVbTbfb2bW#m#g.7.7..aUa5aVaP#dbbaU#e#b.z.zaZ.A.1b8.......J.M.1aSaW.zaVaX#e.4.x#db.......aUaT#e#b.A#cb8.JaVaX#e.K.zaS.7.M.xaSbTaObgb4b#aP.I.LaVaVaXaP.4.x.GaZaP#d.L.x.MbZ.b.c.cb4a6bqbsbsbsaN#7.E.C#8.o.U.Wa0a2a.#8.N.B.Fam#Abxa6#8.CbJbMbEbE.W#y#y.Ybsbnama#.E.CagbDbPbD#BbI#C#CbKbnbtbyaiaf#3.B#p#H#q#G#H#x#x#s.r#2#raCaC#Y#OadaBac#4.r.ran#r#t#r#r#G#s#I#u#Z#Y.t#Ob5#H#U#W#Kac#G#G#w#C#w#x#E#F#xbG#v#v#B#v#D#y#A#DbJbG.ZbNbFbC.Z.Y.YbB#zbB.W#y.YbPbCbJbE#z.h.h.h.f.e.f.e.c.c.b.b.a.aavav#V#Jap................................", +".1bXbfblbd#i.8.A.5bibia6aVaRaN.G.I#b.z#bbSbc.zbVbg......blblaWaPaU.7.8#e.1.J.1bV........aW.4.5.A.zbVbdaU#k.z.J.JaZ.7.8bia6aP.M.wa6bia6#d.G.yb4aPaO.4.G.xbVaOa8.G.xaSbg.aa9aQ.OaVaXa3a3a2a.#7.N.v.Eam.m.obrb4a.#8.N.C.Fb1#AbAa7aR.L.IbJ#ybE#y.W.W.Y.Waga.#9.E.BbabDbDbIbD#B#F#B#FbGbzbtbpbn#5.E.D#x#x#p#H#G#F#p#p#G#r#s#rak#PaC#4aa#2#P.rbw#u#t#t#r#t#s#s#u#t#p#O#SaC#H#x.X#x#0#x#p#H#H#F#v#w#w#C#v#x#D#C#B#v#w.YbG.XbF#zbBbFbC.YbA.Z.Y.Y.Z.Y.Y#v.WbEbC#D#B.i.h.h.f.f.f.f.e.e.c.a.b.a.aapao#L#W..................................", +"bbbUbbbb#j#k.6.5bdbjb0b#a5aR.4.L.H.z.7#lbh#a#eaT........bWbhbhbhbc#j#c.4.M.M#e.............4aW.4bhb2blaU#k.5#caPbfblbib2biaP.L.GaVaV#d.L.uaSbia6a9boa1aQal.Hb3aRaO.Ibra9a1aN.N.C.GaNa0aN#7#7.C.Cal.m.m.oa8a8aO.N.v.Fa0bJ#zbqa7a1aN.NbE#y.W.W.W.W.W.W#7.E.E.BambEbDbJbJbMbLbL#x#C#Cahaiaf#5.D.B#3#C#q#w#C#p#p#w#q#w#s#s#r#saHbtad.r#P.rae#t#t#r#G.p#H#q#q#s#q#p#r#s#q#G#p#H#x#x#w#p#w#w#w#qbK#F#v#p.X#w#waz#0bGbPawayax#UbBbJbCbBbA.YbB.Y.Y.V.Y.W.W.obH#D.h.hbNbM.f.f.f.f.c.e.c.b.b.a.#.##L#W.b..................................", +"..be#h#h#c.7.6bSbibib4bxaRaO.O.I.O.4aTaU....bf#mbcaU#ebebhb4blb0bc#i#c.y..bb#ibfbe#g.5.4bgbj.K#ebjb2blaUbmaP#dbfbf#ma6aVaO.M.x#d.G#d.J.J.1aVaSaObxbsa3aQ#7.Ca5aO.Gbrbqa7a1aN#7.C.O.f#7#7.N.F.CambZbc#b.SaQaO.N.Ib7bAbJbD#zbyb3a1a..N.HbJbA.X.W.W.V.V.VbMbJbDbDbIbJbA.UbK#B#F#F#B#B.Saf#5#3.B#6b5#F#x#w#G#H#D#p#G#HbzaFahaa.QaIar#R#P.p#s#s#r#s#r#s#p.p#t#r#p#s#r#u#G#G#w#s#x#F#p#E#p#w#F#HbKbK#C#vbG.Xayazar#UbBawaMaq#U#UbCbCbB#zbA.Y.V.Y.VbQbC.W.Xaxap.i.hbPbE.h.f.e.e.c.c.c.c.a.a.#.#.#.#....................................", +"aW.8bhbh#c.7bebea8bxbia8aPaO.L.I.GaO......bUbfbhb0aW#e.ybibhb2b2bb#k.4.y#kbd#j#cbb.8.7.4aWaVaP.4bcbcaWbibmaWaP.KbfbibmaVaO.G.Lb7b2aR.M.4b.aTaOa7b3b3a1#8.N.u.O.La7brb4bya1aN.N.C.N.g.f.F.F.PalbwbW#j.7a1.O.N.Hba#A#z#z#Abqbxbxa0#8.C.PbCbJ.W.VbObPbAbNbJbDbDbPbDbK#AbDbKbJbD#BbG.m#FbL#3.B#7a2#6#G#x#GbL#H#w#s#GaFbvbtad#5.Dbz#Z#P#R#r#r#r.p#r#s.p#p#u#u#r#s#p#E#s#p#qazaB#0#p#w#w#wbL#G#qbQbQ#A#w#DayaMaKaq#S#Kaxax#W#J#0bJbB#zbB#z.Z.Y.Y.YbFbE.Xayaxaq#L.hbFbD.f.f.e.e.e.e.c.b.a.b.#.#.#......................................", +".4bfb2bgbgaVaP.4a5a5a5aR.4.O.I.I.1aQ.....#b2bWbjb0aU#b.waZbdbhbcaU#c.z.zaZaU#d#b.z.9.8.z#e#d.1.1aUaUbib0biaT#e.M.Jb4bxaP.4.G.Lb3bxaR.4.x#e.y.Ja3bra3aQ#7.F.Calbra9bxbZbxaR#8.N.C.Na7a1aO.fb2be#g.5boa3a0.E.C.N#y#y#zbB#za1a7aQ#8.N.u.1bNbN#A.UbMbzbzaiaj.BbAbJbAbDbIbQbDbK#A#CbDbK#BbIbGaFaHaD#4.r#x#C#H#H#p#s#HaHbtbtah#4.Q#2#1#O#R#r#E#G#q.p#r#r#GaAayar#S#x#s#p#qaAaLas#Z#K#x#x#C#w#q#s#B#C#F.0#Caxazar#U#K#Mao#W#M#LaM.Y.Z.Y.ZbC.V.Z.W.W#v#vawaAayao#J.i.h.h.h.f.f.e.c.c.c.a.a.#.#.#.#......................................", +".5.zbjbibgaWaP.4aRa5aRaO.O.L.u.1aSaR....bf#o#gbmaU#e.AbUb8aYaUaT#c.K.x.1aWaT#f.w.7.9b8.yb8...M#daVa6bZb0biaT#d.y.JbiaW#d.O.x#dbxbjaP.J.G......a0aQaQ#8.H.v.Na4bxa1a7a7a1#8#8.P.u#8b5a1aO.NbW#j.4.4b3braN#7a0aN.N#y#y#AboaQaN#8.N.C.Nb7.ZbEbJ.U.Ubzbya2#5.D#3bJ.m.SbDbMbGbDbI#B.Rahaj#A#AaFbtad#2.r#F#C.o#x#C#paHaDaDab#5.r.san#O.qaD#E#HaHaL#4.p#q#qaMaGar#Kas#u#t#GaGaHaI#X.t#X#v#w#w#w#w#CbKbQbK#x#War#0#K#NbY.Y#J#JbC#z.Y#ybBbJbC.Y.ZbMbE#v.Xaqaxaq#L#L.h.h.h.h.f.f.e.e.c.a.a.a.#.#.#........................................", +".y.ybib7biaVaP.M.4aOaO.4.L.u.HaSb7....bf#n.7#g#k#e.1.y#o#o.y#i#c.7.z.7b6bb#i.4.y#e#m.M......b4bjaPaWbibgaV#d.1.x.1aVaO.4.x.ua6a5aP.1.uaO......#8#8#8.N.C.Fb3aRa7a7a1aRaN#7.N.v.FbabsaQ.O.I#8#k.AbobsbqaNbqa7a0a8aVaP.Gbnbo.N.N.u.Hb#.N.E.W.V.maEbtbtah#5.D#2bMbC.SbJbD#BbNa0#9bzaJaj#2.YaCad#4.r#4#C#w#D#x#p#FaFajab#5#2.s#6am.qaM#x#q#GaCad#P#H#H#sazar#U#K#u#u#t#qaIar#Y#N.q#w#w#CbL#w#CbQbKbP#BbGbK.t#M#Nas#vbJbG.Y.Y.Y.W.Z.ZbBbA.Y.VbO#A#y.Uat#T#M#LaA.h.h.h.f.f.f.e.e.c.a.a.a.#.#..........................................", +".AbmblblbjaX.4.L.x.4.4.I.u.IaSbZaU..bfbf#n#.be#j.7.K#f#n####.9.7.A#fbdbcaT#e.z.K#e........aWa6aX.4.xaWaXaP#a.w.1aZaO.O.G.IbTa7aO.M.I.Ob#....a5aR.C.N.C.1a4....aRaOaNa.#8.H.C.HbTb#aQ.N.P.I#c.A#fa2a0aNbobybxa8b4a5aO.I.Oag#7.E.Nala..F.E.Y.TbpbyaEaf#5.D.BagbNbAbP#BbKah#5bvaFbubtab#2#2#B#4.r.raC#w#v#x#H#p#xaCac#2#P.s.Dbw#R.qbv#H#G#G#s#Pazar#X#q#W#X#Nae#E#u#t#x#X#Q#O#OaMbL#wbL#F#w.obI#CbI#B#v#v#BbG#D.X.ZbPbI#A.Z.Y#ybB.Z.Y.YbFbBbFbCbDaKavaoavavatao.t.h.h.f.e.e.c.c.a.a.#.#.#..........................................", +".yaVaWaWaP.4.M.w.Jbibg.I.GaSaRaZbg..bgaUaP.4bf#j#c.A##.z##.8bhbcaU.4aU#i#f.1.A#caU..bmaVaObmaP#d.w.1#e#d.4.y.xbTbj.O.L.IaZaV.....L#d....a7a8a5aR#8.u.u.1...#...O.O.I.N.H.C.Hala7a3a0#7.vb#.f.hbhbm#7#7a3a3a3aNa..E.O.I.O#3.C.Ebaal#7.va4bJbnbvbvaj#5.E.B#6aDbCbJbEbtaHahab#2aDaFah#4.r#6#A#x#2#H#q#F#B#p#p#waGaGaBaa#O#4#w#p#w#F#p#p#G#I#paGaHaB#Y.q#p#w#0#DaGaB#R#w#p.t#O#Y#x#C#x#w#v#F#v#C#v#v#p#w.X#DbF#B#y#y#A#A#y.Z#zbG.Z.Y.Y.YbE#zbFbAavawav#VauaMatao#J.h.f.f.e.e.c.c.a.a.a.#.#..........................................", +"aZaYaTaTaP.4.x.wbiblbjaWaT#d.J.J..bjbjaWaP.y.K#j#b.z.L#c..blb2bbaT#c#k.4.K.x.Kb2bgbibmaT#d.G.4.K#fb..x.K.1.1aZaYbZ......................a8b5a7aO.O.uaObs...#...#...I.1.N.N#8bqb4a7aN.N.Cal.hbhb7aW#e.Pbobqa3a0a..E.C.Ia5#y.E#z#y.N.CalbJbD.Vaiag#3#3.salbnbF.l.lbzbtbYaDab#2#2af#5.D.Qb4#D.l.S#G#G#q#v#v#BaHbtbvadak#O#R#w#p#F#H#p#q#G#q#GaGaLar#Y.q.X#E#paGbuaB#Q#Q#p#p#w#C#B#C.X#wbK#F#pawawax#W#J#C#ybJbPbJbC#A.ZbMbF.Z.ZbJbCbB.Y#ybC.W.Waoap#V#Javax#V#T#L.f.f.f.e.e.c.a.a.a.#.#............................................", +"#g.7#e#d.4.A.x.1bhb4b0aWaP.4.G.JaPb2b2aV#e.y#b#g.5.7bbbdbdb0b0bc#i.4.z.z.w#bbca6bhb4bxaP#d.G.M#d.w.5#j....#a#daX......a6aR.O..........bma7a8aR.O.I.Ia4aR...#.....#.#.#.#.a.aa4bqa4#7.F.Cal.fbibmaX.4.Jbob4bra0#7.E.CbT#y#y#z.Z#z.ZbMboa2#7.V#9#7.D.Eb1ag#2bC.l.laDbzaEaD#2.r.D#2.Q.sambG#A#v.l#GaHaHad#R#vaCaHaFac#R.q#1#x#p#F#G#F#E#q#x#paIas#1#O#S#r#q#xaBaB#Y.qan#w.p#p#x.0#v#v.obG#A#DayaMaq#V#J.W.WbIbObDbFbAbJbMbBbNbFbE#zbDbCbAbMbB.X#D#L#Lasapap#T#JaM.f.f.f.e.c.c.c.a.#.#.#.#.#........................................", +"#k.7#c.J.w.x#db#bibjbiaW.4.4.w.MaVbhaW#d.4.x#e.8.A#gba..bbbhbc#k#c.z.zaU.7#i.4blbibia6#e.M.x#d.4.xbW#m.7............bxbxaR.O.Mbkbe#i.5..aRa9a1aQ.Nb#b4aV.L...#.#.#a9aR.O.a.#a0a0a..N.v.Ea0.faTaT.4.xbobwbvbra.#7.C.Cam.W#y.Y#z.ZbJbobvag.E.E.V.B.sa4bYag#3.DbC.laFahad#4.r.safbK#ybGbI#D#BbG#C#vaHaLac#4#PacaBacakaCaB#R#p#E#F#G#w#x#F#w#s#Y#X#O#ObY#p#F#F#w#R#O#1#w#w#C#w#p#p#x#D#p#w#Catayax#W#M#J#A.W#AbCbCbP#zbPbFbMbMbBbJbCbA#zataobA#D.0.n.mbO.k#T#Jas.f.f.e.e.e.c.c.a.a.#.#.........#....................................", +"#c.6#kbdbhbhaWaTaWaWaT#e.1.x.xaP.4aT#k#e.x#fb..7#cbU......aUaT#c.1.yaZaY.4.xbgbxaVaVaP.4.x.1aY.J.xaT#h.5..........bibxbiaO.G#db2bb#k.5a6bra7a1aQ#8.vaO.I.x.#....brb#aR#8.u.##8aN.N.C.Fb1.I.f.f.K.x#fa2a3a2a.#7.F.B.F.W.W#y#y#y.Z#za0ag#7.Ba..V.VbCbpbp#9.D.DbE.laD#5#5#2.r#6aJbQ#BbGbI#A#AbNbKaDaHaD#4.r#4#w#Y#RaGaCaB#Y.q#w#x#H#x#p#x#w#x#p#O#O#Z#p#w#F#E#w#w#F#C#v#w#F#C#w#x#p#G#F#F#w.Yaqaq#T#Kan#v#C#ybJbKbObCbJbMbAbCbJbAbBauauavap#L#D.n.nbNbFbFbObNbA.h.f.f.e.c.c.b.a.#.#...#avao........................................", +".z.6aZaTblb4bmaPaTaP#e#a.w.y#fb8#e#e.4.z#bbV#b#kbb........#c#c.5.z.7bX#d.x.4aWaW#e#e.4.G.ybV#a.x.1#g.7#l............aVaP.M.waVa5a9aRaNa7b3bZaRaN.N.C.4.xbZ......byb3aR.O.C.abq.E.N.Na4.B.g.g.f.f.f.h.ha.a.#7.F.v.Nam.W.W.Y#y.Y#y#y.Z#3.C.N.VbMbC.Uagaf#3.BambA.k#4#4.D.raeaJbJbIbK#B#ybFbDbK#B#Bacak#P.saeadakaGbubuaB#R.raa#x#p#p#w#E#p#w#s#q#x#E#p#w#F#x#x#wbG#w#v#w#C#C#x#w#EbL#x#x#v#x#L#U.t#0#B#v#vbDbJbEbQbFbNbNbA.ZbJbC#zauaKaxao#L#D.k.k.jbE.i.jbCbK.f.g.e.e.c.c.b.#.#....aAavao#J......................................", +".AbTbebgblblaW#e.J.4.K.y.y.1bV.1aWaP.K.J#f.E...................7#f#i.M.x.1bV..aP.4.G.K.JaZ.K.J.Mb..8#l.1.O..........#d.M.uaVbrbia9aR.4brbybxaR#8.I.C.1.IaU.4..a1a8a1.O.P.uaQbobsbr#8.P.Ca0.e.g.f.h.h.h.N#7.F.C.FbT.o.W.Wa2ag#6.Y.Y.Y.Y.Z.WbMbMbA.V.S#3.QambE.Ra8aR.r.DabbDbJbD#AbC#BbIbGbG#B#BbG#P#P.saeaLaD#4aGaHaC#1#P.qac#w#p#x#pbL#F#D#G#E#x#C#F.o#w#G#C#x#w#v#v#p#p#w#Eazar#X#w#BbG#FbNbDbB#A.XbGbPbN#AbCbMbFbFbFbJbGbEbB.Yavavap#T#Jao.k.n.k.ibObF.h.f.f.g.e.c.e.b.a.#.#.#auawax#V#J......................................", +"#fbeaW#ebmaU#e#b.w.K.M.J#daS.1b1bh#e.y.Jbf.........................M.wbV......aXaX#d.w.1aZ#d#b....aV.O.Ga5..............aR..a8b4a6aO.Oa9a7aR#8.1.C.IaR.I.O.zaU..aRaO.O.uba.#a1a0a..N.v.Fa1.c.g.f.f.h.h.i.C.E.Fal.o.mbqbtbpag#3.B.Ybnaiag.E.YbCbF.T.UbJ.SbFbAbMb4a5.O#d.jbMbJ.jbEbObNbK#vbG#yaHaCaa#P.laHaLaD#RaBacaa#R.q#1#O#q#C#p#pbL#F#C#q#DaAar#Q#C#w#CbG#w#p#w#x#x#xbHazaGar#0aGazar#X#NbI#w.X.XbDbM#BbG.Y.Z.Z.Y.ZbCbFbAbB.Waoao#V#Jas.o.k.k.h.hbNbC.h.f.f.d.e.c.b.b.a.#.#.#apapao#JaC......................................", +"bgaWaP.4aT#e#a.x.1bSbh.5.w.yaZbm#e.4.x.1..........................bdbb#j.........M.G.wbaaX.GaV..b0a6.4.I..................a5brb#a8.4.Ha1aQaN#8.H.ubaa4aR.O#k.#.#.P.N.ual.#.a#8#8.N.C.Eb5aR#8.P.g.f.f.h.h.i.k.k.n.m.obnbpa8a7aRaObpbvbnaf.E.E.V.T.VbMbCbA.lbMa5a8aO.CaO.jbMaFajbFbPbDbCa7a1aGb3aC#Y.rbGadad#4.q#2#1#O.q#OaM#Y#xbI#C#C#x#x.X#CaGaLar#Q#K#0#x#v#w#w#DazaIar#QaKaMarazaHaKar#X#K#A#v.XbG#BbFbDbD#A#D.V.Z.YbB.ZbA#z#A#y#J#Laq#D.n.p.k.h.h.h.f.f.f.gbObM.b.b.b.#.#.#....#T#J#T........................................", +"#caP.4.y.z#b.w.waSaW#a.w#e.ybdbb#i.x#aaYa6aV#e........bqa0.NbiaVbfbkbd#i.5..........blbf#h.A....bxa6.L.L......a8a5.O........a5aRaN.O.u.x#8.O.H.P.FbZa5aR.4.u.#...#.#.#...#.a.#.E.N.Na4a0#7.P.F.e.g.f.f.h.h.k.k.ia5aRaNa2bibZa1aObobrbo#9.D.C.T.Vaia#bA.S.lbCbCaO.I.FbC.jbzb3af.DbCbDbOb4a1aCaFaFah#5ae#Aak.r#2bK#C#R#R#P#PaCaGazar#OaCac#G#pazar#X#K#Y#0#K#A#H#paGaLaGar#R.qaI#0ayaGaKar#Q#K#0#DbCbD#y#A#AbPbC.Z.YbA.V.Z#zbCbA.YbMbFbJbBbObE.k.h.h.h.h.f.f.f.gbFbC.b.dbPbM.#.#.#................................................", +"#c.y.y.yaSaY#daTaP#e.y.waXbkbdbia6aVaP.Lb2aW#d.w....a9b3a1bib7aSbkb2aU#k.z#f........b2bc#i.5....aQ.4.xb8....bib2aR.O.Ga8a6aRaQaO.O.I.ubaa4.H.uala5b4a5aO.Oa9aQ#8...#.#.#.#.#.#.O.Obqbsa0#7.C.N.e.c.g.f.h.h.h.ibra7a1.O.HbxbsaQ.Oaiag#9#3.B#6bzbzaE#5.B.S.l.l.l.j.1bCbBbKaDah#2.DbC#za9a9aOaFaHaFad#5#2#2.X#v#B#CaGac#O#PaC#xaLaLar#OaJak.q#p#X#X#N#Qaq#K#M#C#C#waGbtaC#Z#O#O#0#Uazazar#X#S#K#B#vbPbJ#AbD.YbCbB.Y.YbMbE.Y.ZbA.ZbObPbFbFbObObB.k.p.h.h.h.f.f.f.f.e.b.a.abMbM.#.#...#..............................................", +".8.A#i#daW#d.y.waX.1.x.1.Kb2bibia6aV.4.O.xaX#d.xaP..a8a6aXaP.L#ebdbd#g#c.zaY........bkbd#j#c.z.....Ja9aRaO..a6a6.4.Gbibxa5aR.L.H.C.Halbs.uba..a6a8a8a6brbqa9aRaN.N.C.#...#.#.#.abobsbsaN.N.B#8.eboag.N.h.f.ha7b0bZaR.N.P.OaQ#8.I#9#9#6.B#6bsbzbvaia0#9#5boboa2a..BbAbBbFah#5.sa4bF.ibF.4.4aHbvbvad#4.r#2#D#AbHaLaLac#O#B#BaIaGar#X.tas#P#PbH.X#E#X#M#N#1#G#x#p.XaIaC#Z#Q.q#Q#Q.t#0#0#X#N#NaMbObMawavat#V#D#A.Y.Y.ZbFbB.V.Y.Y.W#ybMbFbCbEbFbM.k.i.kbM.f.f.f.e.e.c.c.b.b.b.#.#....................................................", +".z.5aUaT#e.4.A#d.4.L.1b1bda6bxb4a8aP#d.L.x#d.J.L..bibia6aVaO.L.xaU#c#b.AbR.#......bkb4bk#i#b.7..a8a8a5aR#8.HaRaO.1.IbibxaVaO.x.1.zaO..........aVaVaRaObrb4a9aQ#8.H.u.#.#.#.#.#.a..a2a0#7.E.Cala3boa2#7.B.f.fa9a8a5#8.N.CaO.4.IaEah#9.B#9a2bEaiboboa3ag.Ebqbya2#9.Ea#.jaHaFaD#5.DbF#z#ybN.OaFaFaE#5#4.s#2bGbDaGaHaH#Y#P#R#D.X#Z#Q.t#1#P#Pbvazar#QazaGaB#X#x#w#w#D#Z#Z#Q#O#Pb6#L#Q#C.t#Q#QaCbDbQbMauaMap#TaxaxaqbMbFbAbA.V.Y.Y#y#v#ybFbB.n.k.nbObMbNbM#B.f.f.g.d.d.a.b.a.#.#......................................................", +".A#caZ#k.4.KbmaWaP.4aZ.Jbcbmbibib#aP.4.I.x#e.wb1bkbjb4a6aRaO.G.xbb#e.zaT..........bdbdaU#c.z.7.Ia8b4a5aR#8.H.H.L.xaVaVaVaO.O.uaS.A#i............aOaOa9bybxa7aO.O.H.HaNa1#8.#.#.#..a.#7.F.CbT.cbobya0#7.C.h.haRaRaO.1.u.Ca1.Nbpbpaia#.D.T.VbAa#bqb4a2a.bobsbvai#7.E.Ebzbybpah#4.DaCad#PbQbDahahab#4.r.QanbK#A.YaBaa#P.qaD#B#v#v#Q#Z#x#F#waGbYar#QaGbuaB#X.q#wbKbGax#Q#O#O#1.tbY#y#D#v#vawat#TbQbMavax#VawaAawaq#TbCbBbA#z.Y#y#y#v.X#D.n.n.k.hbMbCbFbC.h.f.e.dbObF.b.a.#.#.#......................................................", +"#ebX#d.G.4bhbgaWaT.4.y.y#kaVa6aVaP.4.1.u.LaV#g#bbibxbxbiaP.1.G.G#d#c.7#k..........aUaU#k.5.KaYa5bxbxa8aO.O.P.N......aOaO.O.x.1bV#cb2...............La3a7a7aR#7.N.C.IaRa1#8.H.#.#bqby.P.Ca4#7.Ca2a0#7.F.N.g.i.haO.N.H.Fb3.Caibybyaia#.B#5bC.T.Tbobra2#7.Ca2a0#7.E.Ba.bzbtbtab#2.r#2aa#PbJbJ#Aaa#4.r.DamaJ#A#ybBak#P#Oam#B#BbG#BbI#v#BbQbKasaI#XaIaGaH#Z#O.qbDbKaMax#W#J#B#Laq#B#AbNbDauaKat#TbMbCao#W#LawaKaA#V#L#U#z.Z#z#y#y#y#vbG#DbNbC.h.i.hbJ.h.f.h.f.ebNbMbB.b.a.#.#.#.#....................................................", +"#e.y.K.xbibxbjaWaT#d.y.yaS.4aPaPaO.M.x.1aSaV#k.AaVa8a6aP.4.L.u.NaV.7.z#j........bWb0#b.z.zaZ.4bia7a5aQ.O.I.ual....a5aR.O.IaOb##fbebhbc#i.y.........4aQa1aQaN.N.C.Iala9al.Hal.#.#a0bob3bsa..E.C#7#7.E.Eb4.f.f.h.h.N.NaQ.C.Caibpaia#.D.BafbAbA.Ta2a0a..E.Ba.#9.E.B#6a2aDaEae#4.r.Qafak.qaB#P#B.Q#2.Qafah#z#A#A.YbF#zaAaIar#N#x#ybQbK#wbK#B#Q#Y#O#RaB#Z#R.q#ObGawazaz#T#J#y#A.ZbD#AbK#Bavaxao#L#V.Y#A#L#Maxaxaq#U#Kasauat#T.Z#y#v.X#D.mbMbD.kauao.h.h.f.f.e.g.dbJ.b.a.a.#.#...#....................................................", +"#a.y#d.4bxb4b0aWaP.4.w.yaX...4.4.M.1.wbTa6#i.7.AaXaRaPaO.O.x.1aPaV.A#f..........blbca6a5aO.I.IaVaQaOal.N.ualbaa8a8a5aRaN.Ia9aRaNbhb7bc#i.z..........a8#8#8.N.H.CalbZ.N.C#7boa0.N.#a3a3aN#7.C.F.g.c.N.c.e.g.g.j.f.h.h.i.k.k.kag#9#3.s#9.SbC.S.S#7a#.N.Ea#a3#3.BalbaaCabab#5.D.salaF.raHaCaa.r.ZbBbJ#BbD#AbG#AbG#ybBaHaH#Z#S#wbDbKbDbKazaGar#Y#X.X#R#Q.q#O#A#A#Waq#U.taMbJbA.WbB#ybD#Bapao#T#L.V.YbFbD#A#W#W#U#J#0awaAat#V#L#v.X#E#D.k.n.kavayap#L.f.f.f.e.e.c.b.a.a.#.#.....#....................................................", +".K.w#abmbhbjbiaT#c.1.w.4aXaT#b.y.L.LaTaZ#j#c.A.8bc.4aO.M.L.xbab#.A#cbX..........#ja8b4aVaO.x.Ib#.O.O.I.F.Ib1..bib5a5aR.O.G.LaR.4.Cbhbc#b.yaU........a5aR.H.C.CalbY.#.#..bhaW#e.xa.a.a.#7.E.Ca0ag#9.d.c.e.g.f.f.h.h.h.h.k.i.k.E#3.s.Nam.o.S.SaFaE.C.Eala4bzaEaf#5btad#4#2#2.s#5aD#PaHbvaD#4.raBbG.ZbObM#A#B#A#ybGaraG#Z#Q.t#ZbKbI#B.WaGaGaI#Z#ObCaq#0#R#XbObP#A#L#JasbQbFbNbC#D#ybPbD.0#z#Laq#T.Y.Zazaq#W.V#L#0bAaxayap#T#L.X.X#D.n.n.k.haxawao#J#V.h.f.e.e.c.b.a.#.#.#...#......................................................", +".w.yaVaVbmaWaV#d.7.y.w#baTaU#c.x#k#b.A.7.4.5.7bWbb.4.G.G.Gbab#..#c....a8a5aP.I....a8bxaR.1.uaPaOaO.O.N.OaO..a8bxbZa5aO.L.I.LaR.4.uaO#f.y#fa7a1aQ.F...4aO.G.G.1b1...#..bib4aW.4.wa0.#.N.C.Cbpboa2#9.E.c.e.g.f.h.h.f.h.h.i.k.k.k.n.m.m.m.m.U.TbuaFab.D.Sbpbvbnaga#.D#4.r.Da3#8.EbBbCaDaCab#2.qadbMbObMbF#ybIbGbNaC#Z#Z#X.q#QbPbQ#AbKaGbuaLaI#X#O#QbQ#M#YbJbMbFbCaGaAao#JbBbCbC#D#CbF#A#zawawax#W#Mayayaz#0#M.VbBbEavap#V#Jao.X#E#D.k.n.k.katap#T#L.h.f.e.e.c.c.a.a.#.#.#..............av#V........................................", +".wbSbmbcaTaT#e.4.1.x#daZbc#i#b.A#i.7#i..bc#cbdbb#iaV#e..............bib4a5aO.IaO..a5aR#8.u.Ha5aN.Ia8a9aQ.O..a5a8aVaR.O.I.uaRaNa7a1aN.N#ba7b4a1aN.I..a7.I.L.1b...bqa3a0bgbga3a0#7aT.#.#.a.#bpb4ai#9.E.E.d.g.g.f.f.f.i.h.h.k.k.k.k.n.n.m.m.SaEaJah#6.DaEbrbvbnaf#3.B#6.rb5a4.N.NbBbBaFaDaj#2bwbAbNbObCbFbBbBbQaGbY#Z#O#S#YbC#A#BbK#CazaGaI#X#O.t#ZbDbBbPbObOayar#Uaq#T#J#WbJ#DbG#B#v#z.YawaAaq#T#MawaKazaq#K#VbFbA#V#V#L#M#v.o#D.k.k.p.h.i#T#L#LaK.f.e.e.e.c.c.b.a.#.#...#..........auauap#L......................................", +"#fbmbWbb#d#e.4.y.J.ybTbjaY#e.z.x#i.4.z.4.5a6a5aP.4aWaP.L.4..........a6a8a5.O.uaRa9aO.O.I.Ib1a5aRa8bxa7aR.O.uaRaRaOaO.G.xalaVbra8a9aN.4.Cbqa8a9.O.uaObxaQ.P.N....braWaX.4bobsa2a..E.#.#.#.aboboa2#7.B#6a#.e.e.g.f.f.h.g.f.h.i.i.k.k.n.m.m.S.mab#4.D#6aibnaEaf#3.D.BafaaaN.N.Ca3bMaHaFaEaj#2.Q.ZbPbJbMbBbB#z#AaBaB#O#PbEbJbA.Y.Z.U.T#Z#Z#Z#X.t#1aB.U.XbQbPaybuar#U#K#JaMbB#A.W.Z#DbB.ZbBaxaq#W#J#Waxay#W#U#Jaq.YbC.W#v#V.X.obH.2.k.h.h.h.h.h.h.f.f.f.e.e.e.e.b.a.a.#.#.......#......aAaAao#L.#....................................", +"..bWb0bb#c.J.K.w.1aZbgaU#e.4.A.K.z.z.Ka8bia8a5aRaN.G.4.G.1..........aRaR.4.u.1aVa9.4.u.OaRa8bsa1bxb3a4a7a0aN.N.4.4.P.1.Jb5a7b3b5a9aN.4.PaNa0a3a3a0aN.N#8.C#8boa0bibiaVa3a0#8a0#7.C#7.#.#.aaga.#7.B.Ba2ag.g.e.g.g.h.f.i.h.h.i.i.k.k.k.l.m.m.m#2.r#6.S.Rahafa#.D.s#7ahab.raDab.SbFbpb3aJab#3.QbFbFbAbPbAbCbB.ZbM#R.raIbPbCbA.Y.0.U.U.S#Q#O#O#1aM#K.U.XbKbDayaA#W#N#NaqaMbD.Z.W.0.YbB.ZbB#z#V#L#Lapar#W#U#J#N.Z.Y.W.W#v.X.o.obNbJ.k.h.h.h.h.h.h.f.f.f.e.c.c.c.a.a.#.#.#..............atap#T#L......................................", +"..bdaY#g#c.Abdb2aTaU#i#e#b.yaZ#e.K.z#ca8b5bZa5aP.O.G.L.xaO.............O.I.IbxbcaT.4.C....bsbxaRa8bra8a8a1aN.H.C.G.GaOaR.Na9bra7aNaNa3boa1aN#7.Ca0aN.N.v.I#8.Cagb0b4bqboa2a..E.P.Ba4.#.#.#.E#3.B.EbTam.b.d.d.g.g.g.h.h.h.h.h.i.k.k.k.k.n.l.m.l.R.S.R.l#3#3.E.E.DbwaDabaFaFad#2ahbzbpaD#5.Q.QbB.Z.TbFbBbC.Z#zbMbObMbAbFbB.0.0.Y.TaGayar#S#1#U#Kan.V.Z.W.Yar#0#M#KbYbB#yauat#TbE#zbGbA.W.ZbBatap#V.t#U.t#XaAbNbMbM.W#v.o.o.lbObF.j.h.h.h.hauauatao.e.e.c.c.a.a.a.#...#...#.#........#V#T#Tas......................................", +"aO#j#i#c.z#cbcbkbb#c.4.4b2bWaT#e.y#bb8bxbxbZa5aO.L.H.O.4aV..........bhaWaT.7bhbgaW#e.y..bda5aQ#8aRbrb4bsaR#8.N.Nb2#8#8.N.CaRa1aQaNbobrbqa1aQ#7.E.PaN.N.C.N#7.C.Ebia3b3byag#7.C.Eba...#.#.#.#.a#7.e.a.b.b.c.dbnaiaf.B.f.g.haiaj.i.j.k.kaFah#4.l.l.R.R.R.R.R.D#6ag.R#4aFb3bpad#2.sahahae#2.s#2#z.Z.Z.SbCbF.Z.Z.ZbMbBbJ#zbB.Z.V.W.SaGaL#Z#Oar#Mar.V#D#z#A.Y.Y#M#SaB.W#zauaKap#TaobAbCbB.Y.V.Z#L#T#L#0avapbNbObObFbCbE.U.o.nbHbDbD.i.h.h.h.fauaKat#V#J.c.c.b.a.b.#.#.#....................................................ap........", +"bb.4#b.A#fbV#gaU#i#c.ybca5aRaO.4.w#b#ca6a6aRaO.1.G.IaSbVaZ........bkb4bbaP.4b0b0aU#e.J#bb0.O.O.Ha1aN.NbsaQ.O.F.CaNaT#b.NalbcaO#8.Na7b4b3a1aN#7.F.C#7.F.C.NaR.F#9aRa3boa3ag#7.C.E.#.#.#.....#.a.a.#.a.b.c.dbzb5a2#9.B.fbzbzaEaf.D.iaFaHaFad#4.s.l.m.l.l.l.S.R.R.R.R.RaDaFaD#4#2.Q#5#4#2.D#2am.Z.T.T.tbF#zbMbF#N.Z.T.VbGbB.Y.0.Y.Tazar#Q#ObFbF#z#z.Z.Z.Y.YbB#DbBbBbLbBavat#V#J#y.WbBbCbGbC.V.T#zbPauaAat#V#JbMbGbF.WbQbF.l#D.h.h.h.h.h.h.favav#V#T#L.c.b.a.#.#...#.#..................................................auavatao#J..", +"bb#k.z....#fa3#e.4.z.5a8a8aVaO.N.IaZaQaVaRaP.O.1.u.Ib.aZ..........bkblaW#ebgblbk#i.1.A#faU#cbra7a9aQ#8.C.O.I.C.1aR#b.AbVbV.....P.Cbqbxbra1#8.N.C.P.N.C.Cal.C#7..a0a0amaN#7.E.Ca4.#.#.#.#.#...#.#.#.a.b.b.bbnbnaf#3.B.gbzbybn#5.D#3aFbYbtab#4.r.m.l.l.l.R.R.R.R.R.S.Radadab#4.s#2.R.R.D#6.Z.T.Z.S.RbObNbObMbBbF#z.T.TaIac.T.W.0.T#O#Q#OaMbBbB.Y.V.V.V.V.Z.VbA#z.YbQbMbM#V#LaqbB#y#zbMbMbF.Z.T.TbFavaKat#V#LbMbB.o.XbMbFbH#E.h.h.f.h.f.f.fapao#T#LbY.b.b.a.#.#.#...#.#................................................auaKat#V#L..", +"aU#k.5#e....a.#7.5.zbibxa8aRaO.O.u#8.H.NaO#8.I.L.IbZ.#............bcaU#e.1.waW#i#b.x.zaW#k.5bsb0a1aQ.O.H.H.u.Nal.H.4aZ........a0aNa3a3a0#8.N.C.C#7.C.C.Pa0.Balbqa2#9#7#7.F.Bbwa3.......#...#.#.#.#.#.a.a.baiaf#3.B#7.gaiai#9#3.s#9aDaJad#4.D.Qae.l.l.l.l.l.R.R.R.l.R.l#4#2#2.DaF.R.R.R.Z.R.R.R.R.RbFbFbObFbC.T.Z.ZaAaGar#O.TbBaGaM#Z#O.V.V.Z#z.V.V.Z.T.TbB#z.Y.VbMbC.VbC#zbBbB#zbBbMbBbFbC.VbC.Vavax#V#L#WbBbM.U.mbM.l#E.h.h.f.h.f.g.f.g.d#T#Jaq.b.b.a.a.#.#.#.....#................................................auavao#T#L..", +".4.4.waU.......E.Na2brb0bxaR.4.I.xaO.#bhbc.L.ualb.al..............#e#e#b.A#b#d.4.1.za4a7a1brbZbZa1aO.O.P.H.Nbab#.Ca0.Dai..bqa7a1aNa0aN#8#8.P.v.1a4.C.Nb1.C.Fa0b3a2#7.B.E.Bama0...........#......a6aP.#bzbnbnaf#3.B.H.da#af#6.B#3aEadajab#2.s#6.n.l.l.l.m.l.m.m.R.R.Ra7b4aQ#5.S.R.R.R.R.R.R.RbMbM#zbB.VbFbCbB.Z#zazaLaH#Y#O#QbBaIar#Q#ObB.V.V.T.Y.Z.Y.VbBbG.Zat#W.TbG#z.ZbFbMbJ#z.Z.ZbF.Uaq#L#zavawawaq#W#KbCbPbBbObMbBbPbB.f.f.f.f.f.e.e.e.c.c.c.b.b.a.#.#.#.#.#.....#..............................................apao#T#JaM..", +".8.A#faW....ayar#N..a8a8a1#8.O.u.GaR..aT#eaP.O.u.NbZ.................5.z#fbj.#.4.K#ibxbia1a9a7a9aQ#8.N.u.OaQa4.Nba.Dam..bqbybsa3aN.O#8#7.P.P.FbT.v.1ba.F.EbZa3a0a..F.F.......................#aEa2#3.4bzb5aiaj#6.BaS.g.g.D.Dala4.i.i#5#2.D.rbw.l.l.n.l.l.l.S.R.RbM#za3a0.N.C.R.R.R.S.S.RbFbBbMbFbBbFbFbF.RbB.TbBaIaGar#R.tac.T#Y#Q#QbubA.V.VbC.Z.VbBbBbBbGawazaq#M#z.T.VbBbMbB.T.T.TbFayay#WaxavaAaMax#W#JbAbFbFbFbC#EbMbM.f.f.g.f.e.e.e.e.c.c.b.b.a.a.#.#.#.#.#.#....................................................#T#Lax....", +".z.zbV......aK#0#Kara1aRaO.O.I.IalaR.....4.5.N.1b...........a7aQ.N..#b.4.KbT......brb3b3a1a1aQaQ#8.1.u.CaSaTa3a1aQ.N..bqbob3b3a1aN.N.P.P.C.Na4a1al...N.Eal....#9.E.CbZ...........#.....#.#.#btbvah#5a2bpbtai#5.D.B#9.g.d.d.g.g.f.h.h.h#2#4ae.k.k.l.l.l.l.l.l.l.RbFbB.S.N.Ca5.R.R.R.l.l.lbFbBbJbB#zbMbMbM#zbFbB.S#z#Z#Q.q#1ayazar#N.VbCbF.T.VbB.YbCbC.Z.ZayaKaz#V#L.VbMbFbB.ZbC.T.T.TayaAaxavawaqayay#W#M#J.mbCbI.jbPbEavavap.g.e.g.e.e.e.c.b.b.a.a.#.#.#...#.#.#................................................................", +"#fb1....a5aOar#M#X..#8aN#8.I.u.1b1..............bhaW#e.4..brbsa0.N.C....a9a5aRaO..a9a8a7#8.O#8.1.N.H.Cbaa4bqa7a1aQ.N.vbra3bra4a3#8.C.C#7.........................Ea............#...........#bpbtaf.D.Damafa##6.Q.E.c.d.c.d.d.g.f.dbzaEaj#3.D.i.k.k.k.l.lbna2a#.CbF.R.l.R.l.R.R.l.R.R.RbFbFbC.RbC.RaGaB#RbFbFbAbC.S.S#Oaa.WaAaLar#Oar.VbBbJ.Z.V.V.V.ZbJbBaxazaq#U#JapbMbBbE.S.T.T.T.Uaxatao#Jap#Vaqaq#U.tan.n.k.k.hbMbCaxayap#TbMbA.c.c.c.b.b.b.a.#.a.#...#......................................................................", +".L.Ia8a8a5aO.N.I.#...L.N.N.v.1aV..............bhbibmaT.4.xbxbxaN.H.H..a8bia7a1#8.Ha1aQaQ.1.H.u.F.C.LaRa9.vbxb5a1aN.N.va3a0a0aN#8.N.C.CaS.......................................#.#....ab....aiaf#6.D.E#9#5#3.D.Db4.b.b.da7a1.4.gbzbpaEaf#3.Q.i.j.k.l.kbvb3aga#.B.l.m.R.R.R.R.l.R.R.RaDaabBbC.l.SaGbvaB#R#Q.R#z.R.S.S.SbBbAasar#M.t#B.ZbNbMbC.VbE.TbAbF#zaq#W#U#J#0bCbA.U.S.S.T.T.U.U.U#T#J#U.X#L#M#L#J#U.n.k.h.ibH.0auawaAao#L#TbJ.e.c.c.b.b.a.a.a.#.#.#.#......................................................................", +".I.Na8b4aRaO.G.I..bgbmaT.4.J#e..........a6a6aVaP.LaWaP.4.xa9aQ.4a8a1aR.Nb4bxaR.O.H.OaN.N.P.Calb#bsa7#8.Na7bsb#a1#7.F.CaQ#8aN#8.N.C.FbTbs............................................ai#9.D..#9#3.D.Bbs.##3.B.Bam.b.b.c.ab5a5.OaEbvbvaEaj#3.D#5.h.i.j.kbobo#9.E.B.l.l.l.l.l.R.l.RaHaHaFad#2#PbE.RaGaC#Z#O#Y.R.S.S.S.S.S.T.S#X#Q#SaJ.ZbFbFbCbBbFbH#z.Z.V.T.W.Z#KarbAbB.Z.T.U.T.U.U.V.U.W.U.X.o.U.U.m.m.n.nbM.j.i.ibH.fatatao#T#Jaq.e.c.b.b.b.b.a.#.a.#.......#....................................................................", +"bhaU#e.zaQ.O.u.1bjbVbmaT#d.x.y.z......bibibiaVaP.4.x#d.J.waP#8a8a8a1aQ.O.ua1al.I.uaObh.I.vaQa5a1a0#8.N.v.Na1aQ#8.N.v.Hbi.N.N.P.B.Cala4............................................bzbnaf.Eah...##6.....#.#.#.a.a.a.b.b.caRaO.HaEbpbnah#3.D.Bafaf#9.h.iaga.#3.B.E.l.l.l.l.l.R.R.RaFb3aFab#2.rbC.ZaB#Z#RaCaBaa.R.T.R.S.R.T.R.T.T.R.T.TbJbBbB.S#zbBbB.Z.S.SbGbBbF.TbM.Z.U.U.U.V.U.U.V.U.X.U.o.mbMbObE.n.nbObObB.hb9#E.g.d#V#T#Jas.e.b.e.b.b.b.a.#.#.#.#.#.#..............................................auap......................", +"blaW#i.z.K.I.1bgb0b0aW#e.1.w#e.yaR.Obobib7bxa6a6aRaO.M.w.JaVa8b3bZa1aO.O.C.O.N.u.HaVbgaWaP.M.x#a#8.N.P.Hb#aN#8.N.v.1b4b3bZaR.4.N#8..............................................bzbvbv#9.B.D.#.....#...#.#.#.#.#.a.a.b.b.N.u.1ahahaf#5#2.s.Dahaiaj#3.0.R.E.B#3a2.n.l.l.l.l.l.l.laHbtaJ#4.Q.QbB.S.R#OaHaGaDac#P.R.R.S.S.S.T.R.T.TbPbBbE.Z.S.S.Y.Y.T.T.S.SbAbPbFbObMbB.V.U.U.U.X.U.o.U.o.U.m.mbEbObC.n.kbJbFbM.hbH.g.g.d.c.e.c.e.c.b.b.b.a.b.a.#.#.#.#.#..............................................auaxat#T....................", +"b2aT#c.y.K.Hb#aWbib.aX#d.w.yaT.xaR.O.ubibxbia8a6aVaO.L.xb1.Na8bxa5aRaN.O.C.O.H.Ib1.waXaP.4.w.1b8bs.N#8a0aWa0.N.u.1baa8a6a5aO.I.GaRa0#8............................................aiaf#3.Bam.....#...#...#.#.#.#.b.a.a.b.baCad#4#5#5#2.D.Db1b3aD#9#2.s#3.i.i.k.k.k.k.jbPbF.l.l.RaDahab#2.r#2.R.S.R.RaHb3aDaa#P.r.R.S.S.S.S.S.S.RbFbF.SbF.S.S.S.T.T.S.S.T.TbFbObMbF.V.U.U.U.o.m.o.o.m.o.m.m.n.m.n.l.k.k.h.h.ib9#E.g.e.c.c.c.e.c.b.e.b.b.a.a.#.#.#.....#............................................avaxaAao#L#T..................", +"aW#d.7.x#b......aTaT.4.1.wbTaW.w#e.HaNa5a6bxb4a6aR.4.G.Ial.Na9a8a7aRaQ#8.I.C.O.H.4.waX.4.xa7a1aQ#8bobmbiaW.N.N.EaVaPbib4aVaO.I.Ob3a2#8.E................................a3a0a..P..a#.D.Da4.......#...#...#.#.#.#.#.#.a.aaHbtadaa.r.D.D#6ambvbtai#6.D.saf.E.i.i.i.i.k.kbMbB.R.n.lab#5#2.r#2b5.S.l.R.maHaHaDak.r#PbC.S.S.S.m.S.S.S.T.S.U.U.S.U.U.U.S.U.U.U.VbMbPbF.X.UbM.S.m.o.m.m.o.m.m.m.n.n.k.k.k.k.k.h.f.hbH.d.e.eavao.c.b.b.b.b.b.a.a.#.#.#.#....................................................atap#V#L.#..................", +".G.4.w#daY......#d.4.5.K#aaY.A.Jbra7aRaPbmbibxbiaP.4.x.IaV.Ia8bxbxa5aQaO.P.C.O.H.O.waTa7bra7a1aQ.O.ubhb4aW#da8a8a6a8bxbxaR.O.x.Ob3a0#8.Ea.............................bqboa0a..E.C...#......aCad.q.#.#...#.#.#.a.#.#.aaFbubvah#4.D#4.d.c.daEai#5#3.Q.D.Ea#.g.j.j.i.j.i.j.k.k.l.l.l#2.r#5am.R.S.l.S.ladac#4#P.sab.m.U.m.m.U.U.U.U.S.U.S.U.U.m.U.U.TbMbM.Z.U.UbFbB.mbMbPbB.n.m.m.m.n.l.l.n.k.n.k.k.h.h.h.h.fb9.2.e.eavayao#L.b.b.b.b.a.a.a.#.#.#.#.......#............................................#V#T#Tas....................", +".J.J.5bV........bjb0.5#eaZ.A.4b1b4a7aWa7aVa6aVaP.4.G.x.1a6.Pa8b4bZaRaO.O.H.uaQ.H.ObV..brb4bxa1aQ.O.I.HaVaP.Jbib4biaPa5aRal.G.Hbaa0#8.F.Ea...........................bqb5bZa0#8.E.C.......#..aHaa.s.#...#.#.#.#.#.#.a.#aDaFaE#5#P.D#4.b.c.caf#5#3.D.DbY.C#E.0.g.i.i.f.i.j.i.k.k.k.l.n.l.m.m.laCacak.m#Pak#P#Pam#N.S.m.U.S.U.m.m.m.m.o.m.U.o.m.S.RbM.ZbBbF.m.m.m.m.n.nbFbCbE.n.n.n.jbPbE.j.n.h.i.h.h.h.f.f.gbR.g.c.cavat#V#L.c.b.b.b.a.#.a.#.#.#.#.....#..........................................................................", +".w.JaV........bgb0b0aW#e.Ja7a1aQ.Nbgbma8a8aRaP.4.L.u.1ba.Ma9a8a8bsaR#8.N.H.HaO.ual....brbybya1aN.N.P.H.x.1.wa6a6aP.4aOaO.L.u#dala..N.v.1a0..............bzai#9......a3brbqa.#7.B.F..........aa#PbY.#...#.#...#.#.#.#.#adadaa#2.r#5an.a.2.2.D#2.Q.Dam.g.g.0.0.0.0.d.daB#Y.i.i.i.k.k.k.k.n.laHaHadak.qaGar#4#Q.qb5.m.m.m.m.m.m.m.max#W.m.m.n.l.m.lbFbB.l.l.mbMbM.k.k.k.jbMbA.n.n.k.kbMbB.k.i.ibNbN#A.h.f.g.g.2.c.c.cap#V#JbY.c.b.a.a.#.#.#.#.#....................................................................................", +".x.1......a9a1aWbiaWaP.4bra7a1aN.O.uaWaVa5.4.4.J.1.IbTaP.L.Ja9a5aRaO.O.H.u.NaQ.Ha1....a9a7a9aQ#8.H.Cal.xaVaPaRaRaO.G.1.L.IaV.....E.v.Cb#................b5ai#6.B....a0a0a.#7.E.val........a1#8.....#.#.#...#.#.#aHaD#4.s#4#2.s#2bs.3bHbHbR.d.b#4.d.b.d.d.d.g.0.2aGaGaIac#O#5.i.i.i.j.jaGaHb3btac#4.raI#Z#Q.taC.m.m.m.n.m.l.n.maAaxao#J.n.n.l.k.k.n.k.k.k.kbMbCbC.k.i.k.kbD.k.i.i.k.i.ibMauapbEbFbJ.f.g.gbSb9.c.b.b.b#V.b.b.b.a.a.b.#.#.#.#.#....................................................................................", +".JaS....brbra1#8aT#i#da7b3bZa1aO.N.u#8aOaQaO.G.L.1aSb1aVaR.GaQaQaN#8.H.u.1aQ.HbT.C.C..aRaRaQaO.P.v.Ha4.1.......L.w.xb#............................a7a9aQ.Na2#3.B......a.#7.E.B#7a3......a8a9aN.C.....#...#...#aFbvaDak.r.abp#6ag.Eb9.c.b.b.b.b.d.d.d.b.d.c.d.d.daGbvaI#Z#P#O#2#4.iaFadaaaHaHaFaa#2.rab#Q.taM.n.n.n.k.l.k.n.kaxayax#U#J.n.k.k.k.k.k.h.j.i.i.ibF.iavao.i.h.i.h.i.i.i.hbNaxayap#T.f.f.f.e.b#f.b.b.b.b.b.b.b.a.a.a.#.#.#.#.#.#.#.#.#................................................................................", +"b#bgaX.4bxb3a1.N.1#b.wa7bxbsaR.O.P.C#8.J.O.N.I.uaObZa8a5aO.I.N#8.1.H.I.Ib#a4a5#8.C.N..#8.4#8.N.C.HbTa4b.........................................a8bxa9a1aQ#8.vbabzaEaha#.N.Bala4......a7bxb#.O.C.......#.......#aCaa.r#2bpbybnaf.E.B.a.b.#.b.b.d.d.d.c.b.c.b.d.daGaHaC#Y.q#O.D#2aHaHaBaaadadaa#4aCaIac#R#K#Nawav#V.k.k.k.k.k.laq#V.tan.k.k.k.k.k.k.h.i.i.i.h.hauavap#T.f.h.h.f.i.h.hauaAaAao#L#TbC.d.cb9bR.b.b.b.b.b.a.b.a.a.#.a.#.#...#.#.#....auat#L..........................................................................", +"aVbgaVaP.J.waO.N.Ca1.4a1a1aQ#8.N.u.Ha1a6aVaO.LaObib4bZaX.4.L.I.I.I.u.1a4a5a3a..N.Cal.....N.L.v.Ibaa4bia6aO.x..........................bzai#5....brb3bqa7a0a..PaEbvboag#3.B..............aRal.C.H....aFah#4.#....#4#P.raDbnbtbn#9.D.D.a.a.b.a.b.a.b.baiaj.b.b.d.caCaB#Y#O.qaa.DaHbvbuad#4akak#5aGaGaCar#R.q.kaAax#L#W.i.i.k.i.i#J#Las.i.k.h.i.h.i.h.h.ibPbB.havaKaAap#T#T.h.f.h.f.h.hatatap#T#JaxbF.c.cbR.b.b.b.a.b.a.#.a.#.a.#.#.#.#.#.......#auaKap#T..........................................................................", +"b4biaV#d.J.L.N.ubaa1.P#8aN#8.N.C.NbTa7bjaVaO.L.La8bZbiaR.1.I.IaXaV#d.xa0a0a.#7.C.Ca1..a8b4a5.O#8.IaOb4aVboa2a0.E......................b3ah#5.B..a3a3b3bZa0#8.P.Nbtbzaiaf.D#9.............N.F.Fa4..btbvad#2.r.#bT.2bSb6b6aiag#9#3.Bal.b.a.a.a.a.b.abvbn#5.D.b.b.c#Y#Y#R.q#RaCamaDaLaD#4#2.s.raGaHbuaCac#R.qaxaq#K#U.i.i.i.i.i.i.i.i.i.h.h.i.h.h.f.h.h.fbFbC.hauawat#V#Laq.f.f.f.f.g.g.g#V#T#L#Z.c.c.cb9bH.a.a.b.a.a.a.#.#.#.#.#.#.#.#.#...#.#..avav#V#Jax........................................................................", +"b4bla5aVaO.OaXalbaa..N.H.N.N.C.Cbaa1b3bxaR.4.G.OaWaVaR.4.G.x.ObjaP.O.waP#8.Na8a7a9aO.Lbibxb#aO.L.H.OaWbob4a3a..E.E..................aibn#9.D.E..aQa7brbraQ#7.C.Nbzbqai#9.D.D......................aFaE#4.r.r.2bSb6...#.#.#a#.E.Dal.b.a.#.#.a.#.baEbpaE#5.Bai.a.b.a#P.qaeaC.baLadadaa#1.r#PaDaIaGaCaC#Y#O.qac#U#K.k.i.h.i.h.h.h.h.h.i.i.j.h.j.f.h.h.h.g.h.f.faoap#V#L#Uax.g.g.g.g.e.g.e.e.g.e.e.c.b.cbR.a.a.a.#.#.a.#.#.#.#.#...#.#.#.#...#....ao#V#L#V..........................................................................", +"bia8a5aVaR#8.IbZa1#8.C.N....#8aQ..a6a6aR#d.M.waSaPaP.4.L.u.1b8aX#e.x.1..a2a8bxbxa9aO.N.Ca5aR.O.I.CaS#dbobsbo#7.B.E....................#5#2.Bb4....aRa1aQ#7.P.CaSbvbvaf#3.B.D#Y....................ah#4#2.Danb6...#...#.#.#.#.E#7.#.#ay#X.#.a.#.#..aj#5.D#6as#X.q.a.a.#.a.b.baraz#4#P#P#PbYaraBaBac#Y#P.q#R#W#N#U.f.f.j.h.f.h.h.f.f.f.f.f.f.h.h.h.h.f.f.g.g.gbO#T#V#Uay.c.d.e.g.gbObO.d.c.c.c.c.b.bb6al.#.a.#.#.a.#.#.#.#.#.#.#.#.#..............#T#W.#..........................................................................", +"bib4biaRaO.4.I.Na..F.CaQ.N........aXaP#e.1.u#daZaN.I.L.x.Ib#.M.4.J.Gb1....a8b0b0aRaO.I.IaR.O.I.ualba..a2a0#8.F.Cal.......................D..........a.#8.H.Bbaaibzai#5#3.Bai#9.r................bTadab.ram...........#.#.#..aCak.#aAaG#0#N.#.#.#.##4.D#6aLaI#Y.t.#aGaGaB#Y.a#Oarar#P#P#Sas#0#K#Y#1#O#P#ObY.t#X.f.g.f.g.f.g.g.f.f.h.f.g.h.h.f.f.f.f.g.g.g.g.dbMbMbM.e.c.d.c.c.e.cbObFbJ.c.b.b.b.b.abR.#.a.a.#.#.#.#.#.#...#.#.#.#.#.#.#..........................................................................................", +".Gb4biaRaO.O.x.L.N.C#7a1al...........4.J.G.Gb1al.P.C.C.O.........4a2#9a5a5a5a8a5#8.O.u.IaR.I.u.1b#....#7a..E.v#7a3......................aHaHab.r.......N.Cala1#9afa##3bzbzaiaf.E.B..........aHaHaFaDad#2.D.............#.#bvaCak#Pazar#Sas.#.#.#.#azaHar#Q#Z#O#NazaGbuas#Q.q.a.a#QazaI#Z#K#N#Q.3#O#O#1aC#X#K.e.g.g.g.g.f.f.f.f.f.f.f.f.f.g.f.g.f.g.g.g.e.davap.e.c.c.c.c.d.b.c.bbFbC.a.b.b.b.b.ab6.2.#.#.#.#.#.#.#.#...#...#...........#........................................................................................", +".Gbia6aO.O.I.x.1aVala4ala4..........a..M.L.C#7bZ#9boa3aN.N.FaO.Iboa2#9bxbia1aRaO.1.I.Ialai..al.............EaQ#6.B......................aHaL#4.r................#3.D.Bbpb3aEaf#3.Q....b6.3bRbuaFb5adab#2.r.....#...#bnai#5#3aa#P#4.##N#X.#.#.#.#..aGaH#Z#O#Q#NaHaIaHaH#Y#Q.q.#.#azbuaG#Z#O#U.b.b.caras#X#N#N.e.c.d.g.g.g.g.g.g.g.g.g.g.g.g.g.e.e.e.d.g.eauauat#V.c.c.c.c.b.b.b.b.b.b.a.a.a.a.a.#bT.#.#.#.#.#.#...#.#.#.#.#auauat#Tat#V..........................................................................................", +".LaPaPaO.L.x.LaS#d.C.Nbs...............F.Ca.a4.Bbob4a3a..E.BaO.xbvbna8b3bxaRaO.O.H.Hala5..a5aO.L........aEbpam#3.B......................adaa.r#4................a0aQaEbtbtai#9#3.B#6.2bSb6b6acaFaLaD#4.r#P.#bzai#9bvbrai#5.B#P.qbu.#.#.#.#.#.#.#.#aI#Z#Q.qaB.#.#..aB#Z#R.t#1.#.#azazar#Q.tar.a.a.b.b#X#N#ObY#E.c.c.c.e.e.g.g.e.e.g.e.e.e.d.e.eauap#L.d.caxaKap#T#L.c.b.b.b.b.b.b.aauawap#V.#.#b6.2.#.........#.#.#.#.#.#auaAaAat#T#Lao#L........................................................................................", +".1aR.4.O.u.waSb6aP.O.w..........aVaO.x..#7.E.Ebabobsbq#7.E.Ca0.xaOa7a5a7a5aO.O.P.uaPb#a2bxbiaP.L.L......agafa#.B#3........................#P#5.....................N.PaJai#9#3.Q.Dafb6b6.....raDad#5#P.r#5bvbqaibzbybvaf#3.D#5...#.#.....#.#.#.#.##O#Q#Oan.#....aC#Z#P#O#R.#.#.##Z#Z#X#O#1.#.#.#.#.#.a#X.b.a#EbHbR.c.c.c.c.c.c.c.c.c.g.c.c.eauavat#V#L.cavat#V#Jaq.a.b.b.b.c.a.a.aawaKax#V#U.#bS.#.#.#.......#...#.#....avaxaxao#T#L#V#J........................................................................................", +"aS.O.L.x.x.1b1a5aP.L.G........a8a6aR.O.ua8a5aO.Ia0a0a..N.val.1.IaRa8aRaRaO.O.u.1aR......bxbxaO.I.O........#3.B#9am......................ad#P..........................af#9#2.D.BbT............#4#4#2.r#2aDbvbvagaibnah#6.D.Bam#O...#.#.#.#.#.....#.....#.#.#.#aGaIaB#Y.q.#.......##Q#O#OaC.#.#.#.#.a.#.#.a.a.a.c#EbRbR.b.c.c.b.c.c.c.c.c.c.caAaAap#T#L.c#V#V#L#T.b.b.b.a.b.b.#.#axawayaq#M#Lb8ba.#.....#...#...#...#.#..atatap#T.t#W#J#T........................................................................................", +"bZ.I.I.uaOb#bxa6.4.I.G....aEbib4a6aO.L.xb4a5aO.I#7#7#7.B.Fb4.ub1bxb##8#8.N.I.HbT.uaR....aRaP.L.Iba..................................aFaHaD#2#P......................bR.D#3.E.BanaE................#Pan..bzbnaia##9afa##3.safai.t#Z...#.#.#.#...#......aGaB#YaGaGaI#0#Q.q.#.......#...#...#.#..aCac#R.#.#.a.#.b.b.a.##EbRbR.a.b.b.b.c.b.c.b.baxap#W#L#L.b.d.a.c.b.a.b.a.a.#.#.a.#.#aqaq#U#JanbS.............#.......#....au#V#T#T#U#L#L..........................................................................................", +".va0bqa2#7aVaVaO.L.xaS..bza8bibia6aO.G.GaVa5.O.u.4.E.Fala4.IaVaRaRaO.L.x.L.Nal.u.1....a1aQ.N.Iba......................aGaI#R........aFbtad#2#2..ad#2aCaa.........2.2bSb6b6#3#9.qae................aGaB#Y#9ag#9#3.B.E.D.B#6am#O#1...#.....#.#...#aGaGaGbuaBakaGbYaI#Y#O#Oac.............#.#aGaGaIaB#Y.q.#.#.#.#.#.a.a.a.a#EbRbT.c.a.a.b.b.b.bao#V#L#Mav.a.a.a.#.a.a.b.#.a.#.a.#.#.##T#U#J#Wb8#E...................#......auaxat#V#L#V............................................................................................", +".N.Ea0#7.N.E#d.L.IbaaW.Pboa9a1aN.N.Ia0ag#7aO.I.IaV.L.Ib#.........4.I.Iba.L.O.H.Ib#..a8a7a1aO.u........................aLaB#O#Y......aCad#4.sambuaD#R.rak.rb9.2bRbSb6b6....#R#OaJah#5..............aLaC#P#R.D.D.B#3bw..#6....aa....aq#U.#.#......aGaLaGaLaBaGaKaLaB#X#O#O...#.#.......#....aGbuaLaB#Y.q...#.#.#.#.#.#.#.#.#.a.2bRbR.#.a.a.a.aauaA#L#V#L.b.a.#.#.a.#.#.a.#.#.#.#.#.#...#...#b6...........#.#.........#....atap#V#J#V..............................................................................................", +"#7.u.N.E.Calbo.Ial.N.Ba7a8a7aRaNboa3a2a0#7.E.HbZbY..a8a8aVaO.G......aO.L.ub#.O....brbxb3aR.1.C........................ac#Y.tas....aFb3aD#4#PaDaHaa#P#4#P#PbRbSb8...........#bzbzah#5.B............#Z#R#PaC..bpbvaf#3.D..........ayaEaj#4........aB#ZaCaB#X#PaIaI#0#N.tac...............#..aGaGaC#Y#O.qac.......#.#.#.#...#.#.#.#.2bRbR.2.a.#avaAap#T#T.#.a.#.#.a.a.#.#.#.#.#.#.#.#.#.#...#bR.....#.....#...#..............#V#L#L................................................................................................", +".N.C.N#S.Nbob4boa..E.Ebrb4b#aQaNbrbya2a0#7.E.C......bxbxaRaO.I.........I#d......a8b4a8a5aO.I.uaQ........................#OaB......aCaD#4#2#2..aa#P#PaD#PaGaIak............bzbvbrah#5.Q#2#4..........#OaCaI#Kbzbn#5.D.E..........bzaFah#4.s........#P#Z#Y#Q.q#Z#Y#R.q#1bu....aIaIar#Y...#.#aBaB#Z#R.q#P.....#.#.#.......#.#.#...#.#.##fbRbS#Eatat#V.tax.#.#.#.#.#.#.#.#.....#.#.....#.#..b9b6....................................................................................................................................", +".F.C#8#OaIbnbqa3#7.B.EbrbxbyaQbobyb3a0a.#7.C.Ea0..a5bxa8a7a7a1aO.HaI#Z#O........a9a8aRaQ.N.uba......................................#4#P#2bwbS.3#PbSb6b6bYaCak#OaAas#X....aFbubuaj#4.Q#2aa.r....ac#RaIaGaEah#5aj#6.ram........bzbvbtaj#4.Q....axaq....#O.qae..#Q.t#1aL#O..aGaHaGaB#Y.t#Y.#..#Y#Q#O#ObY...#...#.............#...#.#.#.#.#..bRbR#T#Jar.#...#.#...#.#.#.#.#.#.#.#.#...#...bbR.........#....................................................................................auauat#V................................", +".v.Fa4ae..a0aga..E.Cala7a1aQ.Oa3boboaN#7.F.B.N......a5a8bia8a1#8.P.H#Y.q........a1a1aN.H.u.1a1ab.....................................##RaH#Z.qb6b6b6....aC#Z#P#PaLaz#S#Q..aiaEah#4.D.sana..raaaGaI#Y#Obpbnaiaj.D.sa2........aEaEbzah#5#2.QahaGaI#Z#K.....#....aGbuaGaa#P#YazaLaK#Z#X#O#Y.q....#P#1#Z...........................#.......#.#.#.#bRbSbR...#.#...#.#...#.#.#.#.#.#.#.#...#b6bS..............................................................................atao............avaAatao#L..............................", +".CbTa9bqa9aQ#8.N.FaQ#8aRaQaN.1a0a0a.#8.E.v.Eal.#....aOa8b4bxaQ.O.P.H#O#O........a7a1aQ.N.P#2.r......................................aHaCak#Y.q.#........#Y#P.qaCar#X.taC..#5ab#5#2.s#6am#P.saGaH#Z#R#OaFbyai#5.D#3aHaC#ZaFaCadaaadab#2.s#6aGaI#Z#Q#O#Q........aGaLaCak.q#RaIaIar#Y#O#O#Z.q.........#.........#...........#...#.........#.....#....bRbRbT.#...#.#.#.....#...#..........bR............................................................................auauavao#L..........avavap#T#L..............................", +"ala4bqbqa9aQaN.P.Ca9aQ.OaN.P.H.H#7#8#7.F.Cbabs....brb4a7a8a4#8.1.u.N#RbY....aFbrb4a9aN#8.H.D..................................bS.2.2bvaCaa.sbw................bpa2agaDahab...D#2.s#9aJbs.rbwaBac#1.tacbnbnaf#3.Q#5buaCaaaFaFad#5.D#4.r#PamazaGaB#1#O#Y.......#ar#Z#Y#P#OaD#Z#Z#Y#Q.tanaIaB#Y#O.....#.......................................#...#.#...#bRbSbS.#.#...#...........#.#..b6bR............................................................................avaAaxao#L.#........atap#V#Jaq............................au", +"a0a3bxb5a1aN#8.P.Pa1aQ#8.P.I.HaQ..a#.B.Cala7.E#2axa7a8a1a1aO.N.C.Ha5......aFbvbqbxa8aN.P.Ca.........aFah#4................#f.2bTb9aCaJaC#4.rah................bpbybzbuaDaa.r......#7.##PacaI#Z#Q.qae#Pagaf#6.Q#6aiaHaDaFbybtad#4.D#4#3bYaGaLaL#Z#N#OaC....aGazazaraIac#Y....#Q#O.t#1aCaLaB#Y.q...#.........#.......#.............#.............#.......#..bRbSbS...#.............#.cbR..............................................................................atatap#T#J............#T#Jaq..............................at", +".ubqbxbya9#8.N.C.Ha0aO.N.P.NaQ.O..bqbo#7a.a#.C.N#4aQaQal#8.N.H.PbT........btaEa1a1#8.N.C.F........aFab#2.D#2...........2a2a.#7b6b6..ac#4.qbY........aEaiaj#2..bqbqaFbvah#4.D#4............bt#ZaB#Z#O#1#3.D.B.DbYaBaB#YaFaHaDaa#2.Q#5aFaHaIaIaI#X.t#Q#4....aGaLaIaHaGaB#Y#P......#XaGaLaL#Z#R#O#Y...........#.............#.......#.....#.......#.....#...#....bRbSbR..............b6bR................................................................................ao#T#TaM...............#................................#V", +".ua1a3a1aN.N.P.vala4#8.H.CalaR.Obobyb3a2a.a#.C.Nae#J.1.C.I.N.FaR..........aBabaN#8.O.H.ubZ......bzb3ae.Q.sam....bS.2aSboboa0#7.B..aI#P.saDakbna2a.aHbzaEafa#.QagagaDahab#2.raCaCaa#P....aIaC#R.q#O#1......#3......#R.radadab#4.r.Qahaaac#Y#Z#Y#O#Qb5#2....azazaIaI#X#K#Y.q#R......aIaI#Z#R#O.q.......................#...#.................................#......bRbSbT.......#..bR....................................................................................#V......................................................", +".IaNaQaN#8.N.v.Oa4#8.N.u.Ha1aQ.Nbnbwboa2#7.E.B#6#KaC...O..................#P.q#2.H.u.HaS........aDah#2.sam...2.2bRb1bobybrag#7.C.E..#Y#O#Pbpbza2afbtb3a2aj#3.Q#5a#adab#2.saHaHaDaa#P#P..ayaq#MbY.....................#..#4#2.D.rbw.Q#5.r.q#O#Q#Ran.rab....aGbuaHar#Q#O#R.q#4........#Z#R#O.qaJ..........................avaq.............................#.......#.....2bSbS.2..b6#E............................................................................................................................................", +"b5.O#8.N.H.H.HbTa1.N.F.FbTbs#8.Ca0a0a.a..E.v.Fa2............a7a3a0#7........bqboaQ#7.P............#4.Dbw.3.2bRb9b6b6bobsbqa..E.C#9....#O..brb5a2bzbvbuai#5#2.Q#5..#7#P.saCbtbvaCaa#P#PayaLaq#M....aw#W....................#2.Dab#P.rah..aHaaab#4.r#4aD....aGaKaL#0#S#K#Z.qaD..........#R#PaD..........................auawap#L.........#auauap#L..........................#fbTbSbS..............................................auatao..........................................................................................", +"aR..#P.F.P.Obaa4.L.C.F.1a7aO.H.Cb##9#7#6.B.FbTa3............bybsaN#7.C....a7a0#8.P.N.v............bS.2.2bSb9b6......a2a2a.#7.F.Cam......aibpbna2aibnaiaf#3.Q.saf........aCaFaDaa#4.r#4aqaq#U#K..aGaz#V#K..................abae#4.sam....aFaD.Q.r#5aJ......aIaIar#Q.t#N.sam............azar#U........................awaAaAaq#L#U......avaKaxao#L..............................bSbR............................................avaKavao#L........................................................................................", +"................aIaNal#X.O.P.Ial....#3.B.Cama2............a7bsa7.O.Ca3a0bqbra2#8.C.C.C.........2.2babSbSb6............a.#7.E.CbS..........agag#9ajafab#5.D.B#6ai..........adac#4.r#2ae..#M.taL..axaq#M#L....................#P.s#5.#aFaDaa.r.r#4.#........#Y#Z#X#N#ObYaa............ayaLar#U#K................awaq....axap#T#Jaq......avaxap#V#Jap.............................2..............................................auaAav#V#L........................................................................................", +"................aAbuas#Q#Q#W..arboboa2#9.E.E................aQaN.Nbqa3a3b3b3a0#8.C.N.N..b6.3.2baa0a#b6.....#azar#N.......E.Ea4............#9#7.E.D#3#3.D.E.Ebw............#4#P.r#Pam...#aEad....#T#M#U.#aGaBac#O.................#aFbyaDaa.raa..............#O#O.taC#1..............azaGaq#M#S..............awaKaq#L..#W#W#J#W........aoao#V#Las..............................bR..............................................atatao#L#T........................................................................................", +"..................ar#X.taB.#azasbybyag#9.E.E................#7.Pbob4bsa3bra3#7.N.v.Na9.2albSbqbra2a..C....aGaL#0#S#X.........................E.BalboaH.D#3af..................#4......btbpaj#2........aHaGaI#Z#P#P..............ayaHaFaD#4.raj......................................araq#W.tas..............axayaq#Jaq....................#Tavauat#T........................bRbS................................................#V#L#LaK........................................................................................", +"..................#X#S#Q..azaHbobsbsag#6.C.E......aEaf#3........a7brbra0a0a.al.C.Fa4bHbSb6b8bqb5a2a..C.E..arar#Q.t.#...................abzaiaf.E..aHbuac#R.r..........................aEah#5.rah......aGbuaB#Y#Q#O..............aCaCac#P.razar#0#Q..................................ayawaq#M................aqao#L#U........................auaxat#V#L.......................2.......................................................#..........................................................................................", +".B........a3a0#7..........arara0a2aga#.E.B#7.D.#bzaEaf#3.B......a1a0a..N#7#7.F.FbYbSb6b6..aHbobraN#7.B#7....#Q#SaJ....................bzbnaiaf#3.BaCaBak#P#P..........................aj#5.sam......aFaGaHac#1.q#R............aHaHaCac#R.qazaI#Z#O#X..............................awaGaA#W#J#W..................#U........................avaxayap#T#Lat#L................bSbT..................................................................................................................................................", +".B#7....bqbra0#7.C..........#S#Ka.#9.E.B#7b4.Dbtb5bnaf#2.QaFaFaD#8#8#7.C.C.N.F#8.Nb6......aHa0a.#7.E.Fa0............................bzbyb3ai#9#2.B#4aa#P.raF......aCaIac.r......aFaFaDab#2aj......aHbtaB#Z#Y#O#PaeaCaCac....aGbubvaDaa#P.qbtaGaCaB#X#O..............................axaq#T#J................................................avap#V#Jaqat#J.................2b8..................................................................................................................................................", +".C#7aya3bsbsa..N.Ca.....aHaCac.r..#3.valbw#2.QaJbpbn#5.Q.Qaibvad#4.C.P.Ha1.N.C.Ba0........aC#7a#.E.Cam.Eag..........................aibpa2af#6.B.Daf..#P.#.......#bYaG#Y#O......btbtaDab#2.Q......aFbu#R#R#O#OambtaHaDac#P..aCaHaHaC#P.r.raBaLaKaB#Y#O..............................#U#L#Man..........avaq..................................#V#T#L#Wat#V#L..............b6bR....................................................................................................................................................", +".u.Ha4aQ.Na0#8.C.Ca3aEbzaf.Eaa#P#M..#5ab#2.samagafa##3.s#3aFaEab#P.Qaba.#7.C.vbaa3..........#P.C.Ca0.C.F............................agaiafa#.E.B#6.#............aCaHac#R.qac..aFbvbvahaa.r.Qah....aFaEab#4#R#2#KaHaLaFak#O#Padacad#1#P.q#PaGaLaL#Z#R#O#Y...............................#............awaAaq#L....................awawaq#W#M......ao...##Lax..............bTbS....................................................................................................................................................", +".v.NaQ.P#8.H.P.CbYbpbnaEaf#3.Q.rae.....D.ranah..#6.D.E#3aEahae#4.sam#Lah.F.Fbaa2am............#7#7.E.Eb5..............................#9a##2.B#6b5..............#Zac#R.q#4.q..aDbzaD#4#4.r#2......abab#4.r.Db4#SadaCaa#P.qah..aaaa#P.r#2bwaIaI#Z#R#O.qaB............................................awax#V#J....................ayaKaq#V#J...................#auap#L.....2......................................................................................................................................................", +".u.Na..H.C.F.Pa1arbtb3ai#9.D.D.raCay#V#M........bobs#5#9.EbS#2.Q#2aD#V..#5.D#2am..................#7.#...................................D.B#9bn...................q#Oaa#Q#O..adabab#4#P.Q#6aCab.r..#2.r.sbw.taCac#R#P#Pam..aGbt#P.raaan....#Z#Y#O.qaM........axaq#M................................ao#V#JaM....................awaxaq#K#J..................ayaxap#T#TbXbR......................................................................................................................................................", +".CaS.D.E.C.C.Paq#Ubzbnaf#5.B.DaiaMaz#M#M......b1brbsaga#.C#9......#U.........#................................................aGaI#Y.q........adak................aCaBaa.q#1....#4#2#2.r#6aFaDak.r#4....#N#KaGaHaBak.q......aCaHaLaa#P.q......#P.qae........ayawaq#V#L........awawaq#L................atao.#..................awaMaxao#N#W.aavavap#L.#ataoauaAaAao#T#TaSb6......................................................................................................................................................", +"babZ.E.E.FaQalac#Oafafa#.D.Dam.#aq#W.t#0..bS.2.2a3am#9.F.Ca0..............................................bnbzaNa#.E......bzbzaf#3#Y.q....aHaCaCaa.r.#bzaFaj#2..aGaGaCac#P#R......#2.ragaDaFac#4#Paa....aFadaLbuad#R.r......adadac#1.s#2....................ayaKaq#T#L........aAaAaq#L#W............auauat#V#L..............awawaAax#W#J#WauaMaxaoauauauap#Tatap#V#Jaq.3........................................................................................................................................................", +"bs#3.E.Ea.albYac#P#R#6.D.Eal....#M#Jas.3.2#fbSb6#7a#.P.CbTaf........................................aHaCaBbybvag#3.B......bvbpaf#5.B#O....aHbvaBak#O#Rb3aJaj#2.DaGb3aB#Y#P#P......aCaCac#Pad#4.r#2ah..aHbpadaCaB#1#P.ravap....aa#R#P#PaF....................axaq#V#Jauavap#LawaGaA#W#L#T............ayaKap#T#L............awaMaxaq#W#M#Jaqavaxat#VauaMaxao#T#T#V#L#VbRbS........................................................................................................................................................", +"#3.E.B#7b7bsaL#Y.q#R..#3an......bS.3.2bRb1b6b6b6ai.B.Cal.D..........................................buaCbzbtbsaFaDab#2..bzbvbpaEaDaj#5..aCaLaLac#R.raabtbp#5.D.DaHaHaC#R.q#1.saHaGaGaCad#P.q.s#PaM....aLaHaaaaak#P#PbYaKat#L....#R#4........................aq#V#MavaKauap#L#Vaqaq#U#Jas..........ataxav#V#L#T............away#U#W#T#JaM..apap#V#Lauaxat#V#L#V..#Wb8.3..........................................................................................................................................................", +".D.B#3am..aCacbna2aga##3..b6bS.2.2bRb6b6b8........#5.E.BbY..........................aGaI#Z#O......aBaHaCbzaiaHaFaDaj#2.sahaibzbzaEah#5.D#5adac#4.q#Paeah#5#2.QafaB#Z#1#O.qan.raHaHbvaDaa#P.r#5.r#4....adaa#P#P#P.racavaw#V#J..................................ayaqavawav#V#L#W#W#U.t#0............axaqaq#M#LbY............axaq#V#L#Maqar....#T#J#Latapao#T#Lax....b6.2..........................................................................................................................................................", +".B.Eb#a0..#Ybpbpa2aga#.D.D.2bRbRb6b6b6...............E#6..............bna2aga#.E....buaI#X.q......aIaIbpbrahbtb3ahab#2.r..ajbtb4aJaj#3.Q.Eak#R.r#Pbv..#5#2#2am..aDab#4#OaJ.r#5aIaCaFaDaa.r.q.D#2aF......#2.saM#V....aoao#Las................................ayaGaratapao#L#Jax..................ayaKazaq#MaA........at#V....#T#M#JaA#Xavap..........#V#L#Las.....c.2b6.........................................................................................................................................................." +}; diff --git a/visit_plugins/operators/RandomSample/.depend b/visit_plugins/operators/RandomSample/.depend new file mode 100644 index 0000000..dbdb973 --- /dev/null +++ b/visit_plugins/operators/RandomSample/.depend @@ -0,0 +1,1519 @@ +H5PartRandomSamplePluginInfo.o: H5PartRandomSamplePluginInfo.C \ + H5PartRandomSamplePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/operator_plugin_exports.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit-config.h +H5PartRandomSampleCommonPluginInfo.o: \ + H5PartRandomSampleCommonPluginInfo.C H5PartRandomSamplePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/operator_plugin_exports.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h +H5PartRandomSampleAttributes.o: H5PartRandomSampleAttributes.C \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/bits/wordsize.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h /usr/include/c++/4.0.2/cstring \ + /usr/include/c++/4.0.2/cstddef \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/cstdlib \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/DataNode.h +H5PartRandomSampleGUIPluginInfo.o: H5PartRandomSampleGUIPluginInfo.C \ + H5PartRandomSamplePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/operator_plugin_exports.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h \ + QvisH5PartRandomSampleWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisOperatorWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/gui_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisPostableWindowObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisPostableWindowSimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisPostableWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qcstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmemarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qgarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qshared.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qglobal.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qconfig.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmodules.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfeatures.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwinexport.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisWindowBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmainwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwindowdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qobjectdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qnamespace.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qevent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qregion.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qrect.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qsize.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpoint.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmime.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qdatastream.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qiodevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpair.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qvaluelist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qtl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qtextstream.h \ + /usr/include/c++/4.0.2/iterator \ + /usr/include/c++/4.0.2/bits/stream_iterator.h \ + /usr/include/c++/4.0.2/list /usr/include/c++/4.0.2/bits/stl_list.h \ + /usr/include/c++/4.0.2/bits/list.tcc /usr/include/c++/4.0.2/map \ + /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpaintdevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpalette.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qcolor.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstringlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qptrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qglist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qptrcollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qbrush.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfont.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfontmetrics.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfontinfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qsizepolicy.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qtoolbar.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qdockwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qframe.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/GUIBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/SimpleObserver.h +QvisH5PartRandomSampleWindow.o: QvisH5PartRandomSampleWindow.C \ + QvisH5PartRandomSampleWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisOperatorWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/gui_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisPostableWindowObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisPostableWindowSimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisPostableWindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qcstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmemarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qgarray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qshared.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qglobal.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qconfig.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmodules.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfeatures.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwinexport.h \ + /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/xlocale.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/bits/wordsize.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/climits /usr/include/c++/4.0.2/cstdlib \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/postypes.h \ + /usr/include/c++/4.0.2/cwchar /usr/include/c++/4.0.2/ctime \ + /usr/include/stdint.h /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisWindowBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmainwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwindowdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qobjectdefs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstring.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qnamespace.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qevent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qregion.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qrect.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qsize.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpoint.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmime.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qmap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qdatastream.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qiodevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpair.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qvaluelist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qtl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qtextstream.h \ + /usr/include/c++/4.0.2/iterator /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc \ + /usr/include/c++/4.0.2/bits/stream_iterator.h \ + /usr/include/c++/4.0.2/list /usr/include/c++/4.0.2/bits/stl_list.h \ + /usr/include/c++/4.0.2/bits/list.tcc /usr/include/c++/4.0.2/map \ + /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpaintdevice.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpalette.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qcolor.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstringlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qstrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qptrlist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qglist.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qptrcollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qbrush.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfont.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfontmetrics.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qfontinfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qsizepolicy.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qtoolbar.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qdockwindow.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qframe.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/GUIBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/SimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ViewerProxy.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/viewerproxy_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qcheckbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qbutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qkeysequence.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qlabel.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qlayout.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qlineedit.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qspinbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qrangecontrol.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qvbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qhbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qbuttongroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qgroupbox.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qradiobutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisColorTableButton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpushbutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qiconset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qpixmap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisOpacitySlider.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qrangecontrol.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisColorButton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qcolor.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qbutton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisLineStyleWidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qwidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisLineWidthWidget.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/QvisVariableButton.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/qt/qobjectlist.h +H5PartRandomSampleViewerPluginInfo.o: \ + H5PartRandomSampleViewerPluginInfo.C H5PartRandomSamplePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/operator_plugin_exports.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h +H5PartRandomSampleEnginePluginInfo.o: \ + H5PartRandomSampleEnginePluginInfo.C H5PartRandomSamplePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/operator_plugin_exports.h \ + avtH5PartRandomSampleFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtPluginStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/pipeline_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataTreeStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetToDataObjectFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtFilter.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/c++/4.0.2/cstdlib /usr/include/stdlib.h \ + /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ + /usr/include/endian.h /usr/include/bits/endian.h \ + /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/string /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectInformation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisWindowTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtVector.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/math_exports.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/viswindow_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataValidity.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtPipelineSpecification.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataSpecification.h \ + /usr/include/c++/4.0.2/map /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/array_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtGhostData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataSelection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ImproperUseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtexception_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/PipelineException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtCommonDataFunctions.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataRepresentation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataTree.h \ + /usr/include/c++/4.0.2/set /usr/include/c++/4.0.2/bits/stl_set.h \ + /usr/include/c++/4.0.2/bits/stl_multiset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtPluginFilter.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h +H5PartRandomSampleScriptingPluginInfo.o: \ + H5PartRandomSampleScriptingPluginInfo.C H5PartRandomSamplePluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/OperatorPluginInfo.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/plugin_exports.h \ + /usr/include/stdio.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ + /usr/include/bits/stdio.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/operator_plugin_exports.h \ + PyH5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/Python.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/patchlevel.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/config.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/string.h /usr/include/xlocale.h /usr/include/errno.h \ + /usr/include/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/asm/errno.h /usr/include/asm-x86_64/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ + /usr/include/sys/select.h /usr/include/bits/select.h \ + /usr/include/bits/sigset.h /usr/include/bits/time.h \ + /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ + /usr/include/bits/sched.h /usr/include/alloca.h /usr/include/assert.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pyport.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h /usr/include/sys/time.h \ + /usr/include/sys/stat.h /usr/include/bits/stat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pymem.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/object.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/objimpl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pydebug.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/unicodeobject.h \ + /usr/include/ctype.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/intobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/longobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/floatobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/complexobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/rangeobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/stringobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/bufferobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/tupleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/listobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/dictobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/methodobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/moduleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/funcobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/classobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/fileobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/cobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/traceback.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/sliceobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/cellobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/codecs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pyerrors.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pystate.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/modsupport.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/ceval.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pythonrun.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/sysmodule.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/intrcheck.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/import.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/abstract.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pyfpe.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/c++/4.0.2/climits /usr/include/c++/4.0.2/cstdlib \ + /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h +PyH5PartRandomSampleAttributes.o: PyH5PartRandomSampleAttributes.C \ + PyH5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/Python.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/patchlevel.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/config.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/stdio.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/bits/types.h /usr/include/bits/wordsize.h \ + /usr/include/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/string.h /usr/include/xlocale.h /usr/include/errno.h \ + /usr/include/bits/errno.h /usr/include/linux/errno.h \ + /usr/include/asm/errno.h /usr/include/asm-x86_64/errno.h \ + /usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h /usr/include/time.h \ + /usr/include/sys/select.h /usr/include/bits/select.h \ + /usr/include/bits/sigset.h /usr/include/bits/time.h \ + /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ + /usr/include/bits/sched.h /usr/include/alloca.h /usr/include/assert.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pyport.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h /usr/include/sys/time.h \ + /usr/include/sys/stat.h /usr/include/bits/stat.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pymem.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/object.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/objimpl.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pydebug.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/unicodeobject.h \ + /usr/include/ctype.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/intobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/longobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/floatobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/complexobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/rangeobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/stringobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/bufferobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/tupleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/listobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/dictobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/methodobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/moduleobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/funcobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/classobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/fileobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/cobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/traceback.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/sliceobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/cellobject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/codecs.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pyerrors.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pystate.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/modsupport.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/ceval.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pythonrun.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/sysmodule.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/intrcheck.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/import.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/abstract.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/python/pyfpe.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/c++/4.0.2/cstring /usr/include/c++/4.0.2/cstddef \ + /usr/include/c++/4.0.2/climits /usr/include/c++/4.0.2/cstdlib \ + /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/c++/4.0.2/clocale \ + /usr/include/locale.h /usr/include/bits/locale.h \ + /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \ + /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc /usr/include/c++/4.0.2/string \ + /usr/include/c++/4.0.2/bits/char_traits.h /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ObserverToCallback.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Observer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/SimpleObserver.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ColorAttribute.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/snprintf.h +avtH5PartRandomSampleFilter.o: avtH5PartRandomSampleFilter.C \ + avtH5PartRandomSampleFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtPluginStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/pipeline_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataTreeStreamer.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetToDataObjectFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtFilter.h \ + /usr/include/c++/4.0.2/vector /usr/include/c++/4.0.2/bits/functexcept.h \ + /usr/include/c++/4.0.2/exception_defines.h \ + /usr/include/c++/4.0.2/bits/stl_algobase.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++config.h \ + /usr/include/bits/wordsize.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/os_defines.h \ + /usr/include/features.h /usr/include/sys/cdefs.h \ + /usr/include/gnu/stubs.h /usr/include/c++/4.0.2/cstring \ + /usr/include/c++/4.0.2/cstddef \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stddef.h \ + /usr/include/string.h /usr/include/xlocale.h \ + /usr/include/c++/4.0.2/climits \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/limits.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/syslimits.h \ + /usr/include/limits.h /usr/include/bits/posix1_lim.h \ + /usr/include/bits/local_lim.h /usr/include/linux/limits.h \ + /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \ + /usr/include/bits/stdio_lim.h /usr/include/c++/4.0.2/cstdlib \ + /usr/include/stdlib.h /usr/include/bits/waitflags.h \ + /usr/include/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/bits/endian.h /usr/include/sys/types.h \ + /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /usr/include/time.h /usr/include/sys/select.h \ + /usr/include/bits/select.h /usr/include/bits/sigset.h \ + /usr/include/bits/time.h /usr/include/sys/sysmacros.h \ + /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h \ + /usr/include/alloca.h /usr/include/c++/4.0.2/iosfwd \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++locale.h \ + /usr/include/c++/4.0.2/cstdio /usr/include/stdio.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \ + /usr/include/gconv.h \ + /usr/lib64/gcc/x86_64-suse-linux/4.0.2/include/stdarg.h \ + /usr/include/bits/sys_errlist.h /usr/include/bits/stdio.h \ + /usr/include/c++/4.0.2/clocale /usr/include/locale.h \ + /usr/include/bits/locale.h /usr/include/langinfo.h \ + /usr/include/nl_types.h /usr/include/iconv.h /usr/include/libintl.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++io.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/gthr-default.h \ + /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \ + /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \ + /usr/include/unistd.h /usr/include/bits/posix_opt.h \ + /usr/include/bits/environments.h /usr/include/bits/confname.h \ + /usr/include/getopt.h /usr/include/c++/4.0.2/cctype \ + /usr/include/ctype.h /usr/include/c++/4.0.2/bits/stringfwd.h \ + /usr/include/c++/4.0.2/bits/postypes.h /usr/include/c++/4.0.2/cwchar \ + /usr/include/c++/4.0.2/ctime /usr/include/stdint.h \ + /usr/include/c++/4.0.2/bits/stl_pair.h \ + /usr/include/c++/4.0.2/bits/cpp_type_traits.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_types.h \ + /usr/include/c++/4.0.2/bits/stl_iterator_base_funcs.h \ + /usr/include/c++/4.0.2/bits/concept_check.h \ + /usr/include/c++/4.0.2/bits/stl_iterator.h \ + /usr/include/c++/4.0.2/debug/debug.h /usr/include/c++/4.0.2/cassert \ + /usr/include/assert.h /usr/include/c++/4.0.2/bits/allocator.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/c++allocator.h \ + /usr/include/c++/4.0.2/ext/new_allocator.h /usr/include/c++/4.0.2/new \ + /usr/include/c++/4.0.2/exception \ + /usr/include/c++/4.0.2/bits/stl_construct.h \ + /usr/include/c++/4.0.2/bits/stl_uninitialized.h \ + /usr/include/c++/4.0.2/bits/stl_vector.h \ + /usr/include/c++/4.0.2/bits/stl_bvector.h \ + /usr/include/c++/4.0.2/bits/vector.tcc \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visitstream.h \ + /usr/include/c++/4.0.2/iostream /usr/include/c++/4.0.2/ostream \ + /usr/include/c++/4.0.2/ios /usr/include/c++/4.0.2/bits/char_traits.h \ + /usr/include/c++/4.0.2/bits/localefwd.h \ + /usr/include/c++/4.0.2/bits/ios_base.h \ + /usr/include/c++/4.0.2/bits/atomicity.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/atomic_word.h \ + /usr/include/c++/4.0.2/bits/locale_classes.h \ + /usr/include/c++/4.0.2/string /usr/include/c++/4.0.2/memory \ + /usr/include/c++/4.0.2/bits/stl_raw_storage_iter.h \ + /usr/include/c++/4.0.2/limits \ + /usr/include/c++/4.0.2/bits/stl_function.h \ + /usr/include/c++/4.0.2/bits/basic_string.h \ + /usr/include/c++/4.0.2/algorithm /usr/include/c++/4.0.2/bits/stl_algo.h \ + /usr/include/c++/4.0.2/bits/stl_heap.h \ + /usr/include/c++/4.0.2/bits/stl_tempbuf.h \ + /usr/include/c++/4.0.2/bits/basic_string.tcc \ + /usr/include/c++/4.0.2/streambuf \ + /usr/include/c++/4.0.2/bits/streambuf.tcc \ + /usr/include/c++/4.0.2/bits/basic_ios.h \ + /usr/include/c++/4.0.2/bits/streambuf_iterator.h \ + /usr/include/c++/4.0.2/bits/locale_facets.h \ + /usr/include/c++/4.0.2/cwctype /usr/include/wctype.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_base.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/ctype_inline.h \ + /usr/include/c++/4.0.2/bits/codecvt.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/time_members.h \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/messages_members.h \ + /usr/include/c++/4.0.2/bits/basic_ios.tcc \ + /usr/include/c++/4.0.2/bits/ostream.tcc /usr/include/c++/4.0.2/locale \ + /usr/include/c++/4.0.2/bits/locale_facets.tcc \ + /usr/include/c++/4.0.2/typeinfo /usr/include/c++/4.0.2/istream \ + /usr/include/c++/4.0.2/bits/istream.tcc /usr/include/c++/4.0.2/fstream \ + /usr/include/c++/4.0.2/x86_64-suse-linux/bits/basic_file.h \ + /usr/include/c++/4.0.2/bits/fstream.tcc \ + /usr/include/c++/4.0.2/backward/strstream \ + /usr/include/c++/4.0.2/backward/backward_warning.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectInformation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisWindowTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtVector.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/math_exports.h \ + /usr/include/math.h /usr/include/bits/huge_val.h \ + /usr/include/bits/huge_valf.h /usr/include/bits/huge_vall.h \ + /usr/include/bits/inf.h /usr/include/bits/nan.h \ + /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \ + /usr/include/bits/mathinline.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/viswindow_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/dbatts_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataValidity.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtPipelineSpecification.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataSpecification.h \ + /usr/include/c++/4.0.2/map /usr/include/c++/4.0.2/bits/stl_tree.h \ + /usr/include/c++/4.0.2/bits/stl_map.h \ + /usr/include/c++/4.0.2/bits/stl_multimap.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/array_ref_ptr.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILRestriction.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSIL.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILCollection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILMatrix.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtSILSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtGhostData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataSelection.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/ImproperUseException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtexception_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/PipelineException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/VisItException.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/misc_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetSink.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtCommonDataFunctions.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataRepresentation.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataTree.h \ + /usr/include/c++/4.0.2/set /usr/include/c++/4.0.2/bits/stl_set.h \ + /usr/include/c++/4.0.2/bits/stl_multiset.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDataObjectToDatasetFilter.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtDatasetSource.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/avtPluginFilter.h \ + H5PartRandomSampleAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeSubject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/state_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/AttributeGroup.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vectortypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/Subject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkDataSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkDataObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkObject.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkObjectBase.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkIndent.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkSystemIncludes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkWin32Header.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/vtkConfigure.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkIOStream.h \ + /usr/include/c++/4.0.2/iomanip /usr/include/c++/4.0.2/functional \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkIdType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkOStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkOStrStreamWrapper.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkSetGet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkTimeStamp.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkPolyData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkPointSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkDataSet.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkPoints.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkDataArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkCellTypes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkIntArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkUnsignedCharArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkCellType.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkCellLinks.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkPointData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkDataSetAttributes.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkFieldData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/vtkVisItUtility.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/visit/visit_vtk_light_exports.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkIdTypeArray.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkCell.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkIdList.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkCellData.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Filtering/vtkCellLocator.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkLocator.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkGenericCell.h \ + /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64//include/vtk/Common/vtkCell.h diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.C b/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.C new file mode 100644 index 0000000..5460d7c --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.C @@ -0,0 +1,470 @@ +#include +#include + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::H5PartRandomSampleAttributes +// +// Purpose: +// Constructor for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +H5PartRandomSampleAttributes::H5PartRandomSampleAttributes() : AttributeSubject("f") +{ + factor = 1; +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::H5PartRandomSampleAttributes +// +// Purpose: +// Copy constructor for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +H5PartRandomSampleAttributes::H5PartRandomSampleAttributes(const H5PartRandomSampleAttributes &obj) : AttributeSubject("f") +{ + factor = obj.factor; + + SelectAll(); +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::~H5PartRandomSampleAttributes +// +// Purpose: +// Destructor for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +H5PartRandomSampleAttributes::~H5PartRandomSampleAttributes() +{ + // nothing here +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::operator = +// +// Purpose: +// Assignment operator for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +H5PartRandomSampleAttributes& +H5PartRandomSampleAttributes::operator = (const H5PartRandomSampleAttributes &obj) +{ + if (this == &obj) return *this; + factor = obj.factor; + + SelectAll(); + return *this; +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::operator == +// +// Purpose: +// Comparison operator == for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +H5PartRandomSampleAttributes::operator == (const H5PartRandomSampleAttributes &obj) const +{ + // Create the return value + return ((factor == obj.factor)); +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::operator != +// +// Purpose: +// Comparison operator != for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +H5PartRandomSampleAttributes::operator != (const H5PartRandomSampleAttributes &obj) const +{ + return !(this->operator == (obj)); +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::TypeName +// +// Purpose: +// Type name method for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +const std::string +H5PartRandomSampleAttributes::TypeName() const +{ + return "H5PartRandomSampleAttributes"; +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::CopyAttributes +// +// Purpose: +// CopyAttributes method for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +H5PartRandomSampleAttributes::CopyAttributes(const AttributeGroup *atts) +{ + if(TypeName() != atts->TypeName()) + return false; + + // Call assignment operator. + const H5PartRandomSampleAttributes *tmp = (const H5PartRandomSampleAttributes *)atts; + *this = *tmp; + + return true; +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::CreateCompatible +// +// Purpose: +// CreateCompatible method for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +AttributeSubject * +H5PartRandomSampleAttributes::CreateCompatible(const std::string &tname) const +{ + AttributeSubject *retval = 0; + if(TypeName() == tname) + retval = new H5PartRandomSampleAttributes(*this); + // Other cases could go here too. + + return retval; +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::NewInstance +// +// Purpose: +// NewInstance method for the H5PartRandomSampleAttributes class. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +AttributeSubject * +H5PartRandomSampleAttributes::NewInstance(bool copy) const +{ + AttributeSubject *retval = 0; + if(copy) + retval = new H5PartRandomSampleAttributes(*this); + else + retval = new H5PartRandomSampleAttributes; + + return retval; +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::SelectAll +// +// Purpose: +// Selects all attributes. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +H5PartRandomSampleAttributes::SelectAll() +{ + Select(0, (void *)&factor); +} + +/////////////////////////////////////////////////////////////////////////////// +// Persistence methods +/////////////////////////////////////////////////////////////////////////////// + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::CreateNode +// +// Purpose: +// This method creates a DataNode representation of the object so it can be saved to a config file. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +H5PartRandomSampleAttributes::CreateNode(DataNode *parentNode, bool completeSave, bool forceAdd) +{ + if(parentNode == 0) + return false; + + H5PartRandomSampleAttributes defaultObject; + bool addToParent = false; + // Create a node for H5PartRandomSampleAttributes. + DataNode *node = new DataNode("H5PartRandomSampleAttributes"); + + if(completeSave || !FieldsEqual(0, &defaultObject)) + { + addToParent = true; + node->AddNode(new DataNode("factor", factor)); + } + + + // Add the node to the parent node. + if(addToParent || forceAdd) + parentNode->AddNode(node); + else + delete node; + + return (addToParent || forceAdd); +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::SetFromNode +// +// Purpose: +// This method sets attributes in this object from values in a DataNode representation of the object. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +H5PartRandomSampleAttributes::SetFromNode(DataNode *parentNode) +{ + int i; + if(parentNode == 0) + return; + + DataNode *searchNode = parentNode->GetNode("H5PartRandomSampleAttributes"); + if(searchNode == 0) + return; + + DataNode *node; + if((node = searchNode->GetNode("factor")) != 0) + SetFactor(node->AsFloat()); +} + +/////////////////////////////////////////////////////////////////////////////// +// Set property methods +/////////////////////////////////////////////////////////////////////////////// + +void +H5PartRandomSampleAttributes::SetFactor(float factor_) +{ + factor = factor_; + Select(0, (void *)&factor); +} + +/////////////////////////////////////////////////////////////////////////////// +// Get property methods +/////////////////////////////////////////////////////////////////////////////// + +float +H5PartRandomSampleAttributes::GetFactor() const +{ + return factor; +} + +/////////////////////////////////////////////////////////////////////////////// +// Keyframing methods +/////////////////////////////////////////////////////////////////////////////// + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::GetFieldName +// +// Purpose: +// This method returns the name of a field given its index. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +std::string +H5PartRandomSampleAttributes::GetFieldName(int index) const +{ + switch (index) + { + case 0: return "factor"; + default: return "invalid index"; + } +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::GetFieldType +// +// Purpose: +// This method returns the type of a field given its index. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +AttributeGroup::FieldType +H5PartRandomSampleAttributes::GetFieldType(int index) const +{ + switch (index) + { + case 0: return FieldType_float; + default: return FieldType_unknown; + } +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::GetFieldTypeName +// +// Purpose: +// This method returns the name of a field type given its index. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +std::string +H5PartRandomSampleAttributes::GetFieldTypeName(int index) const +{ + switch (index) + { + case 0: return "float"; + default: return "invalid index"; + } +} + +// **************************************************************************** +// Method: H5PartRandomSampleAttributes::FieldsEqual +// +// Purpose: +// This method compares two fields and return true if they are equal. +// +// Note: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +H5PartRandomSampleAttributes::FieldsEqual(int index_, const AttributeGroup *rhs) const +{ + const H5PartRandomSampleAttributes &obj = *((const H5PartRandomSampleAttributes*)rhs); + bool retval = false; + switch (index_) + { + case 0: + { // new scope + retval = (factor == obj.factor); + } + break; + default: retval = false; + } + + return retval; +} + +/////////////////////////////////////////////////////////////////////////////// +// User-defined methods. +/////////////////////////////////////////////////////////////////////////////// + diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.h b/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.h new file mode 100644 index 0000000..e4c29be --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.h @@ -0,0 +1,60 @@ +#ifndef H5PARTRANDOMSAMPLEATTRIBUTES_H +#define H5PARTRANDOMSAMPLEATTRIBUTES_H +#include + +// **************************************************************************** +// Class: H5PartRandomSampleAttributes +// +// Purpose: +// Randomly reduce an H5Part point mesh +// +// Notes: Autogenerated by xml2atts. +// +// Programmer: xml2atts +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class H5PartRandomSampleAttributes : public AttributeSubject +{ +public: + H5PartRandomSampleAttributes(); + H5PartRandomSampleAttributes(const H5PartRandomSampleAttributes &obj); + virtual ~H5PartRandomSampleAttributes(); + + virtual H5PartRandomSampleAttributes& operator = (const H5PartRandomSampleAttributes &obj); + virtual bool operator == (const H5PartRandomSampleAttributes &obj) const; + virtual bool operator != (const H5PartRandomSampleAttributes &obj) const; + + virtual const std::string TypeName() const; + virtual bool CopyAttributes(const AttributeGroup *); + virtual AttributeSubject *CreateCompatible(const std::string &) const; + virtual AttributeSubject *NewInstance(bool) const; + + // Property selection methods + virtual void SelectAll(); + + // Property setting methods + void SetFactor(float factor_); + + // Property getting methods + float GetFactor() const; + + // Persistence methods + virtual bool CreateNode(DataNode *node, bool completeSave, bool forceAdd); + virtual void SetFromNode(DataNode *node); + + + // Keyframing methods + virtual std::string GetFieldName(int index) const; + virtual AttributeGroup::FieldType GetFieldType(int index) const; + virtual std::string GetFieldTypeName(int index) const; + virtual bool FieldsEqual(int index, const AttributeGroup *rhs) const; + +private: + float factor; +}; + +#endif diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.java b/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.java new file mode 100644 index 0000000..d2b73d8 --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleAttributes.java @@ -0,0 +1,76 @@ +package llnl.visit.operators; + +import llnl.visit.AttributeSubject; +import llnl.visit.CommunicationBuffer; +import llnl.visit.Plugin; + +// **************************************************************************** +// Class: H5PartRandomSampleAttributes +// +// Purpose: +// Randomly reduce an H5Part point mesh +// +// Notes: Autogenerated by xml2java. +// +// Programmer: xml2java +// Creation: Thu Mar 16 10:26:56 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +public class H5PartRandomSampleAttributes extends AttributeSubject implements Plugin +{ + public H5PartRandomSampleAttributes() + { + super(1); + + factor = 1f; + } + + public H5PartRandomSampleAttributes(H5PartRandomSampleAttributes obj) + { + super(1); + + factor = obj.factor; + + SelectAll(); + } + + public boolean equals(H5PartRandomSampleAttributes obj) + { + // Create the return value + return ((factor == obj.factor)); + } + + public String GetName() { return "H5PartRandomSample"; } + public String GetVersion() { return "1.0"; } + + // Property setting methods + public void SetFactor(float factor_) + { + factor = factor_; + Select(0); + } + + // Property getting methods + public float GetFactor() { return factor; } + + // Write and read methods. + public void WriteAtts(CommunicationBuffer buf) + { + if(WriteSelect(0, buf)) + buf.WriteFloat(factor); + } + + public void ReadAtts(int n, CommunicationBuffer buf) + { + buf.ReadByte(); + SetFactor(buf.ReadFloat()); + } + + + // Attributes + private float factor; +} + diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleCommonPluginInfo.C b/visit_plugins/operators/RandomSample/H5PartRandomSampleCommonPluginInfo.C new file mode 100644 index 0000000..25a6873 --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleCommonPluginInfo.C @@ -0,0 +1,47 @@ +// ************************************************************************* // +// File: H5PartRandomSampleCommonPluginInfo.C +// ************************************************************************* // + +#include +#include + +// **************************************************************************** +// Method: H5PartRandomSampleCommonPluginInfo::AllocAttributes +// +// Purpose: +// Return a pointer to a newly allocated attribute subject. +// +// Returns: A pointer to the newly allocated attribute subject. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +AttributeSubject * +H5PartRandomSampleCommonPluginInfo::AllocAttributes() +{ + return new H5PartRandomSampleAttributes; +} + +// **************************************************************************** +// Method: H5PartRandomSampleCommonPluginInfo::CopyAttributes +// +// Purpose: +// Copy a H5PartRandomSample attribute subject. +// +// Arguments: +// to The destination attribute subject. +// from The source attribute subject. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +void +H5PartRandomSampleCommonPluginInfo::CopyAttributes(AttributeSubject *to, + AttributeSubject *from) +{ + *((H5PartRandomSampleAttributes *) to) = *((H5PartRandomSampleAttributes *) from); +} diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleEnginePluginInfo.C b/visit_plugins/operators/RandomSample/H5PartRandomSampleEnginePluginInfo.C new file mode 100644 index 0000000..557345b --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleEnginePluginInfo.C @@ -0,0 +1,44 @@ +// ************************************************************************* // +// File: H5PartRandomSampleEnginePluginInfo.C +// ************************************************************************* // + +#include +#include + +#if defined(__APPLE__) +#define GetEngineInfo H5PartRandomSample_GetEngineInfo +#endif + +// **************************************************************************** +// Function: GetEngineInfo +// +// Purpose: +// Return a new EnginePluginInfo for the H5PartRandomSample operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** +extern "C" EngineOperatorPluginInfo* GetEngineInfo() +{ + return new H5PartRandomSampleEnginePluginInfo; +} + +// **************************************************************************** +// Method: H5PartRandomSampleEnginePluginInfo::AllocAvtPluginFilter +// +// Purpose: +// Return a pointer to a newly allocated avtPluginFilter. +// +// Returns: A pointer to the newly allocated avtPluginFilter. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +avtPluginFilter * +H5PartRandomSampleEnginePluginInfo::AllocAvtPluginFilter() +{ + return new avtH5PartRandomSampleFilter; +} diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleGUIPluginInfo.C b/visit_plugins/operators/RandomSample/H5PartRandomSampleGUIPluginInfo.C new file mode 100644 index 0000000..07ba3bc --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleGUIPluginInfo.C @@ -0,0 +1,92 @@ +// ************************************************************************* // +// File: H5PartRandomSampleGUIPluginInfo.C +// ************************************************************************* // + +#include +#include +#include + +#if defined(__APPLE__) +#define GetGUIInfo H5PartRandomSample_GetGUIInfo +#endif + +// **************************************************************************** +// Function: GetGUIInfo +// +// Purpose: +// Return a new GUIPluginInfo for the H5PartRandomSample operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:29:14 PDT 2006 +// +// **************************************************************************** +extern "C" GUIOperatorPluginInfo* GetGUIInfo() +{ + return new H5PartRandomSampleGUIPluginInfo; +} + +// **************************************************************************** +// Method: H5PartRandomSampleGUIPluginInfo::GetMenuName +// +// Purpose: +// Return a pointer to the name to use in the GUI menu. +// +// Returns: A pointer to the name to use in the GUI menu. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:29:14 PDT 2006 +// +// **************************************************************************** + +const char * +H5PartRandomSampleGUIPluginInfo::GetMenuName() const +{ + return "H5PartRandomSample"; +} + + +// **************************************************************************** +// Method: H5PartRandomSampleGUIPluginInfo::CreatePluginWindow +// +// Purpose: +// Return a pointer to an operator's attribute window. +// +// Arguments: +// type The type of the operator. +// attr The attribute subject for the operator. +// notepad The notepad to use for posting the window. +// +// Returns: A pointer to the operator's attribute window. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:29:14 PDT 2006 +// +// **************************************************************************** + +QvisPostableWindowObserver * +H5PartRandomSampleGUIPluginInfo::CreatePluginWindow(int type, AttributeSubject *attr, + QvisNotepadArea *notepad) +{ + return new QvisH5PartRandomSampleWindow(type, (H5PartRandomSampleAttributes *)attr, + "H5PartRandomSample operator attributes", "H5PartRandomSample operator", notepad); +} + +// **************************************************************************** +// Method: H5PartRandomSampleGUIPluginInfo::XPMIconData +// +// Purpose: +// Return a pointer to the icon data. +// +// Returns: A pointer to the icon data. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:29:14 PDT 2006 +// +// **************************************************************************** + +#include +const char ** +H5PartRandomSampleGUIPluginInfo::XPMIconData() const +{ + return icon_xpm; +} diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.C b/visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.C new file mode 100644 index 0000000..414f6d6 --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.C @@ -0,0 +1,107 @@ +// ************************************************************************* // +// File: H5PartRandomSamplePluginInfo.C +// ************************************************************************* // + +#include +#include + +#include +#if defined(__APPLE__) +extern "C" const char *H5PartRandomSampleVisItPluginVersion = VERSION; +#else +extern "C" const char *VisItPluginVersion = VERSION; +#endif + +#if defined(__APPLE__) +#define GetGeneralInfo H5PartRandomSample_GetGeneralInfo +#endif + +// **************************************************************************** +// Function: GetGeneralInfo +// +// Purpose: +// Return a new GeneralPluginInfo for the H5PartRandomSample operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** +extern "C" GeneralOperatorPluginInfo* GetGeneralInfo() +{ + return new H5PartRandomSampleGeneralPluginInfo; +} + +// **************************************************************************** +// Method: H5PartRandomSampleGeneralPluginInfo::GetName +// +// Purpose: +// Return the name of the operator plugin. +// +// Returns: A pointer to the name of the operator plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +char * +H5PartRandomSampleGeneralPluginInfo::GetName() const +{ + return "H5PartRandomSample"; +} + +// **************************************************************************** +// Method: H5PartRandomSampleGeneralPluginInfo::GetVersion +// +// Purpose: +// Return the version of the operator plugin. +// +// Returns: A pointer to the version of the operator plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +char * +H5PartRandomSampleGeneralPluginInfo::GetVersion() const +{ + return "1.0"; +} + +// **************************************************************************** +// Method: H5PartRandomSampleGeneralPluginInfo::GetID +// +// Purpose: +// Return the id of the operator plugin. +// +// Returns: A pointer to the id of the operator plugin. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +char * +H5PartRandomSampleGeneralPluginInfo::GetID() const +{ + return "H5PartRandomSample_1.0"; +} +// **************************************************************************** +// Method: H5PartRandomSampleGeneralPluginInfo::EnabledByDefault +// +// Purpose: +// Return true if this plugin should be enabled by default; false otherwise. +// +// Returns: true/false +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +bool +H5PartRandomSampleGeneralPluginInfo::EnabledByDefault() const +{ + return true; +} diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.h b/visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.h new file mode 100644 index 0000000..def4701 --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSamplePluginInfo.h @@ -0,0 +1,85 @@ +// ************************************************************************* // +// File: H5PartRandomSamplePluginInfo.h +// ************************************************************************* // + +#ifndef H5PARTRANDOMSAMPLE_PLUGIN_INFO_H +#define H5PARTRANDOMSAMPLE_PLUGIN_INFO_H +#include +#include + +class H5PartRandomSampleAttributes; + +// **************************************************************************** +// Class: H5PartRandomSamplePluginInfo +// +// Purpose: +// Five classes that provide all the information about an H5PartRandomSample operator +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class H5PartRandomSampleGeneralPluginInfo : public virtual GeneralOperatorPluginInfo +{ + public: + virtual char *GetName() const; + virtual char *GetVersion() const; + virtual char *GetID() const; + virtual bool EnabledByDefault() const; +}; + +class H5PartRandomSampleCommonPluginInfo : public virtual CommonOperatorPluginInfo, public virtual H5PartRandomSampleGeneralPluginInfo +{ + public: + virtual AttributeSubject *AllocAttributes(); + virtual void CopyAttributes(AttributeSubject *to, AttributeSubject *from); +}; + +class H5PartRandomSampleGUIPluginInfo : public virtual GUIOperatorPluginInfo, public virtual H5PartRandomSampleCommonPluginInfo +{ + public: + virtual const char *GetMenuName() const; + virtual QvisPostableWindowObserver *CreatePluginWindow(int type, + AttributeSubject *attr, QvisNotepadArea *notepad); + virtual const char **XPMIconData() const; +}; + +class H5PartRandomSampleViewerPluginInfo : public virtual ViewerOperatorPluginInfo, public virtual H5PartRandomSampleCommonPluginInfo +{ + public: + virtual AttributeSubject *GetClientAtts(); + virtual AttributeSubject *GetDefaultAtts(); + virtual void SetClientAtts(AttributeSubject *atts); + virtual void GetClientAtts(AttributeSubject *atts); + + virtual void InitializeOperatorAtts(AttributeSubject *atts, + const ViewerPlot *plot, + const bool fromDefault); + virtual const char **XPMIconData() const; + + static void InitializeGlobalObjects(); + private: + static H5PartRandomSampleAttributes *defaultAtts; + static H5PartRandomSampleAttributes *clientAtts; +}; + +class H5PartRandomSampleEnginePluginInfo : public virtual EngineOperatorPluginInfo, public virtual H5PartRandomSampleCommonPluginInfo +{ + public: + virtual avtPluginFilter *AllocAvtPluginFilter(); +}; + +class H5PartRandomSampleScriptingPluginInfo : public virtual ScriptingOperatorPluginInfo, public virtual H5PartRandomSampleCommonPluginInfo +{ + public: + virtual void InitializePlugin(AttributeSubject *subj, void *data); + virtual void *GetMethodTable(int *nMethods); + virtual bool TypesMatch(void *pyobject); + virtual char *GetLogString(); + virtual void SetDefaults(const AttributeSubject *atts); +}; + +#endif diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleScriptingPluginInfo.C b/visit_plugins/operators/RandomSample/H5PartRandomSampleScriptingPluginInfo.C new file mode 100644 index 0000000..fd10ab0 --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleScriptingPluginInfo.C @@ -0,0 +1,142 @@ +// ************************************************************************* // +// H5PartRandomSampleScriptingPluginInfo.C +// ************************************************************************* // +#include +#include + +#if defined(__APPLE__) +#define GetScriptingInfo H5PartRandomSample_GetScriptingInfo +#endif + +// **************************************************************************** +// Function: GetScriptingInfo +// +// Purpose: +// Return a new ScriptingPluginInfo for the H5PartRandomSample plot. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** +extern "C" ScriptingOperatorPluginInfo* GetScriptingInfo() +{ + return new H5PartRandomSampleScriptingPluginInfo; +} + +// **************************************************************************** +// Method: H5PartRandomSampleScriptingPluginInfo::InitializePlugin +// +// Purpose: +// Calls the initialization function for the plugin. +// +// Arguments: +// subj : A pointer to the plugin's state object. +// data : A pointer to data to be used by the observer function. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +H5PartRandomSampleScriptingPluginInfo::InitializePlugin(AttributeSubject *subj, + void *data) +{ + PyH5PartRandomSampleAttributes_StartUp((H5PartRandomSampleAttributes *)subj, data); +} + +// **************************************************************************** +// Method: H5PartRandomSampleScriptingPluginInfo::GetMethodTable +// +// Purpose: +// Returns a pointer to the plugin's Python method table. These methods are +// added to the top-level visit module's methods. +// +// Arguments: +// nMethods : Returns the number of methods in the method table. +// +// Returns: A pointer to the method table. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void * +H5PartRandomSampleScriptingPluginInfo::GetMethodTable(int *nMethods) +{ + return PyH5PartRandomSampleAttributes_GetMethodTable(nMethods); +} + +// **************************************************************************** +// Method: H5PartRandomSampleScriptingPluginInfo::TypesMatch +// +// Purpose: +// Returns whether or not the input PyObject is H5PartRandomSample plot attributes. +// +// Arguments: +// pyobject : A PyObject cast to void*. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +bool +H5PartRandomSampleScriptingPluginInfo::TypesMatch(void *pyobject) +{ + return PyH5PartRandomSampleAttributes_Check((PyObject *)pyobject); +} + +// **************************************************************************** +// Method: H5PartRandomSampleScriptingPluginInfo::GetLogString +// +// Purpose: +// Gets a string representation of the current attributes. +// +// Arguments: +// val : Whether or not to log state information. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +char * +H5PartRandomSampleScriptingPluginInfo::GetLogString() +{ + std::string s(PyH5PartRandomSampleAttributes_GetLogString()); + char *v = new char[s.size() + 1]; + strcpy(v, s.c_str()); + return v; +} + +// **************************************************************************** +// Method: H5PartRandomSampleScriptingPluginInfo::SetDefaults +// +// Purpose: +// Used to set the default values for a plugin's state object. +// +// Arguments: +// atts : The new state. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +H5PartRandomSampleScriptingPluginInfo::SetDefaults(const AttributeSubject *atts) +{ + PyH5PartRandomSampleAttributes_SetDefaults((const H5PartRandomSampleAttributes *)atts); +} diff --git a/visit_plugins/operators/RandomSample/H5PartRandomSampleViewerPluginInfo.C b/visit_plugins/operators/RandomSample/H5PartRandomSampleViewerPluginInfo.C new file mode 100644 index 0000000..bc8ce36 --- /dev/null +++ b/visit_plugins/operators/RandomSample/H5PartRandomSampleViewerPluginInfo.C @@ -0,0 +1,175 @@ +// ************************************************************************* // +// File: H5PartRandomSampleViewerPluginInfo.C +// ************************************************************************* // + +#include +#include + +#if defined(__APPLE__) +#define GetViewerInfo H5PartRandomSample_GetViewerInfo +#endif + +// **************************************************************************** +// Function: GetViewerInfo +// +// Purpose: +// Return a new ViewerPluginInfo for the H5PartRandomSample operator. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** +extern "C" ViewerOperatorPluginInfo* GetViewerInfo() +{ + H5PartRandomSampleViewerPluginInfo::InitializeGlobalObjects(); + return new H5PartRandomSampleViewerPluginInfo; +} + +// +// Storage for static data elements. +// +H5PartRandomSampleAttributes *H5PartRandomSampleViewerPluginInfo::clientAtts = NULL; +H5PartRandomSampleAttributes *H5PartRandomSampleViewerPluginInfo::defaultAtts = NULL; + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::InitializeGlobalObjects +// +// Purpose: +// Initialize the operator atts. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** +void +H5PartRandomSampleViewerPluginInfo::InitializeGlobalObjects() +{ + H5PartRandomSampleViewerPluginInfo::clientAtts = new H5PartRandomSampleAttributes; + H5PartRandomSampleViewerPluginInfo::defaultAtts = new H5PartRandomSampleAttributes; +} + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::GetClientAtts +// +// Purpose: +// Return a pointer to the viewer client attributes. +// +// Returns: A pointer to the viewer client attributes. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +AttributeSubject * +H5PartRandomSampleViewerPluginInfo::GetClientAtts() +{ + return clientAtts; +} + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::GetDefaultAtts +// +// Purpose: +// Return a pointer to the viewer default attributes. +// +// Returns: A pointer to the viewer default attributes. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +AttributeSubject * +H5PartRandomSampleViewerPluginInfo::GetDefaultAtts() +{ + return defaultAtts; +} + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::SetClientAtts +// +// Purpose: +// Set the viewer client attributes. +// +// Arguments: +// atts A pointer to the new client attributes. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +void +H5PartRandomSampleViewerPluginInfo::SetClientAtts(AttributeSubject *atts) +{ + *clientAtts = *(H5PartRandomSampleAttributes *)atts; + clientAtts->Notify(); +} + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::GetClientAtts +// +// Purpose: +// Get the viewer client attributes. +// +// Arguments: +// atts A pointer to return the client default attributes in. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +void +H5PartRandomSampleViewerPluginInfo::GetClientAtts(AttributeSubject *atts) +{ + *(H5PartRandomSampleAttributes *)atts = *clientAtts; +} + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::InitializeOperatorAtts +// +// Purpose: +// Initialize the operator attributes to the default attributes. +// +// Arguments: +// atts The attribute subject to initialize. +// md The metadata used to initialize. +// atts The variable name used to initialize. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +void +H5PartRandomSampleViewerPluginInfo::InitializeOperatorAtts(AttributeSubject *atts, + const ViewerPlot *plot, + const bool fromDefault) +{ + if (fromDefault) + *(H5PartRandomSampleAttributes*)atts = *defaultAtts; + else + *(H5PartRandomSampleAttributes*)atts = *clientAtts; +} + +// **************************************************************************** +// Method: H5PartRandomSampleViewerPluginInfo::XPMIconData +// +// Purpose: +// Return a pointer to the icon data. +// +// Returns: A pointer to the icon data. +// +// Programmer: cristina -- generated by xml2info +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// **************************************************************************** + +#include +const char ** +H5PartRandomSampleViewerPluginInfo::XPMIconData() const +{ + return icon_xpm; +} diff --git a/visit_plugins/operators/RandomSample/Makefile b/visit_plugins/operators/RandomSample/Makefile new file mode 100644 index 0000000..4a858c6 --- /dev/null +++ b/visit_plugins/operators/RandomSample/Makefile @@ -0,0 +1,113 @@ +## +## Programs and options... +## +include /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/make-variables +TOPDIR=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64 + + +## +## Libraries and includes... +## +VTK_INCLUDE= \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Common \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Filtering \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Graphics \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Hybrid \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/IO \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Imaging \ + -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/vtk/Rendering +MOC=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/bin/moc +CXXFLAGS=$(CXXFLAGSORIG) $(QT_CXXFLAGS) $(PY_CXXFLAGS) +CPPFLAGS=$(CPPFLAGSORIG) $(VTK_INCLUDE) -I. -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include -I/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/visit +LDFLAGS=$(LDFLAGSORIG) $(PY_LDFLAGS) -L/d/visusers/cristina/.visit/linux-x86_64/plugins/operators + +## +## Files... +## +PLUGINDIR=operators +PLUGINNAME=H5PartRandomSampleOperator + +WIDGETS=QvisH5PartRandomSampleWindow.h +ISRC=H5PartRandomSamplePluginInfo.C +COMMONSRC=H5PartRandomSamplePluginInfo.C H5PartRandomSampleCommonPluginInfo.C H5PartRandomSampleAttributes.C +GSRC=H5PartRandomSampleGUIPluginInfo.C QvisH5PartRandomSampleWindow.C +VSRC=H5PartRandomSampleViewerPluginInfo.C +ESRC=H5PartRandomSampleEnginePluginInfo.C avtH5PartRandomSampleFilter.C +SSRC=H5PartRandomSampleScriptingPluginInfo.C PyH5PartRandomSampleAttributes.C + +SRC=$(ISRC) $(COMMONSRC) $(GSRC) $(VSRC) $(ESRC) $(SSRC) + + +JAVASRC=H5PartRandomSampleAttributes.java +JAVAOBJ=/usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/java/llnl/visit/operators/H5PartRandomSampleAttributes.class +JAVAPLUGINFLAGS=-d /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/java -classpath /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/java + +SHLIB_FORCED= + +ELIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +VLIBS_FOR_MACOSX_PREBINDING=$(BZIP2_LIBS) +ILIBS= +GLIBS=-lgui -lmdserverproxy -lviewerproxy -lproxybase -lmdserverrpc -lviewerrpc -lwinutil -ldbatts -lavtexceptions -lstate -lcomm -lmisc -lplugin -lexpr -lparser -lutility -lI$(PLUGINNAME) $(QT_LDFLAGS) $(QT_LIBS) $(QUI_LIBS) $(X_LIBS) +SLIBS=-lstate -lmisc -lcomm -lutility $(PY_LIB) -lI$(PLUGINNAME) +VLIBS=-lpipeline_ser -lplotter_ser -lavtfilters_ser -lavtmath_ser -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_ser $(VLIBS_FOR_MACOSX_PREBINDING) -lI$(PLUGINNAME) $(VTK_LIBS) +ESERLIBS=-lpipeline_ser -lplotter_ser -lavtfilters_ser -lavtmath_ser -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_ser -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) +EPARLIBS=-lpipeline_par -lplotter_par -lavtfilters_par -lavtmath_par -lavtview -ldbatts -lavtexceptions -lstate -lmisc -lcomm -lexpr -lparser -lutility -lvisit_vtk -llightweight_visit_vtk -lparallel_visit_vtk_par -lI$(PLUGINNAME) $(ELIBS_FOR_MACOSX_PREBINDING) $(VTK_LIBS) $(SHLIB_MPI_LIBS) + +IDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libIH5PartRandomSampleOperator.so +GDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libGH5PartRandomSampleOperator.so +SDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libSH5PartRandomSampleOperator.so +VDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libVH5PartRandomSampleOperator.so +ESERDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libEH5PartRandomSampleOperator_ser.so +EPARDSO=/d/visusers/cristina/.visit/linux-x86_64/plugins/operators/libEH5PartRandomSampleOperator_par.so + + +DISTRIB= + +## +## Derived objects +## +IOBJ=$(ISRC:.C=.o) +GOBJ=$(COMMONSRC:.C=.o) $(GSRC:.C=.o) +SOBJ=$(COMMONSRC:.C=.o) $(SSRC:.C=.o) +VOBJ=$(COMMONSRC:.C=.o) $(VSRC:.C=.o) +MOBJ=$(COMMONSRC:.C=.o) $(MSRC:.C=.o) $(MSPECIFICSRC:.C=_mds.o) +ESEROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=.o) +EPAROBJ=$(COMMONSRC:.C=.o) $(ESRC:.C=_par.o) + +MOCSRC = $(WIDGETS:.h=_moc.C) +MOCOBJ = $(MOCSRC:.C=.o) + +## +## Standard targets... +## +all: message $(IDSO) $(GUILIB) $(VIEWERLIB) $(ENGINELIBSER) $(ENGINELIBPAR) $(SCRIPTINGLIB) $(JAVACLASS) + +clean: + $(RM) $(IOBJ) $(COMMONOBJ) + $(RM) $(GOBJ) $(SOBJ) $(VOBJ) $(MOBJ) $(ESEROBJ) $(EPAROBJ) + $(RM) $(MOCSRC) $(MOCOBJ) + $(RM) $(IDSO) $(GDSO) $(SDSO) $(VDSO) $(MDSO) $(ESERDSO) $(EPARDSO) + $(RM) $(JAVAOBJ) + +## +## Other targets... +## +message: + @echo + @echo "****************************************************************************" + @echo "*** Building H5PartRandomSample Operator Plugin" + @echo "****************************************************************************" + +## +## moc +## +$(MOCSRC) or_no_widgets: $(WIDGETS) + @rm -f $@ + $(MOC) $(@:_moc.C=.h) > $@ + + +## +## Automatic dependency stuff +## +include /usr/local/visit/visit-1.5.1/1.5.1/linux-x86_64/include/make-targets diff --git a/visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.C b/visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.C new file mode 100644 index 0000000..aa11a6e --- /dev/null +++ b/visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.C @@ -0,0 +1,358 @@ +#include +#include +#include +#include + +// **************************************************************************** +// Module: PyH5PartRandomSampleAttributes +// +// Purpose: +// Randomly reduce an H5Part point mesh +// +// Note: Autogenerated by xml2python. Do not modify by hand! +// +// Programmer: xml2python +// Creation: Thu Mar 16 10:26:56 PDT 2006 +// +// **************************************************************************** + +// +// This struct contains the Python type information and a H5PartRandomSampleAttributes. +// +struct H5PartRandomSampleAttributesObject +{ + PyObject_HEAD + H5PartRandomSampleAttributes *data; + bool owns; +}; + +// +// Internal prototypes +// +static PyObject *NewH5PartRandomSampleAttributes(int); + +std::string +PyH5PartRandomSampleAttributes_ToString(const H5PartRandomSampleAttributes *atts, const char *prefix) +{ + std::string str; + char tmpStr[1000]; + + SNPRINTF(tmpStr, 1000, "%sfactor = %g\n", prefix, atts->GetFactor()); + str += tmpStr; + return str; +} + +static PyObject * +H5PartRandomSampleAttributes_Notify(PyObject *self, PyObject *args) +{ + H5PartRandomSampleAttributesObject *obj = (H5PartRandomSampleAttributesObject *)self; + obj->data->Notify(); + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +H5PartRandomSampleAttributes_SetFactor(PyObject *self, PyObject *args) +{ + H5PartRandomSampleAttributesObject *obj = (H5PartRandomSampleAttributesObject *)self; + + float fval; + if(!PyArg_ParseTuple(args, "f", &fval)) + return NULL; + + // Set the factor in the object. + obj->data->SetFactor(fval); + + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +H5PartRandomSampleAttributes_GetFactor(PyObject *self, PyObject *args) +{ + H5PartRandomSampleAttributesObject *obj = (H5PartRandomSampleAttributesObject *)self; + PyObject *retval = PyFloat_FromDouble(double(obj->data->GetFactor())); + return retval; +} + + + +static struct PyMethodDef H5PartRandomSampleAttributes_methods[] = { + {"Notify", H5PartRandomSampleAttributes_Notify, METH_VARARGS}, + {"SetFactor", H5PartRandomSampleAttributes_SetFactor, METH_VARARGS}, + {"GetFactor", H5PartRandomSampleAttributes_GetFactor, METH_VARARGS}, + {NULL, NULL} +}; + +// +// Type functions +// + +static void +H5PartRandomSampleAttributes_dealloc(PyObject *v) +{ + H5PartRandomSampleAttributesObject *obj = (H5PartRandomSampleAttributesObject *)v; + if(obj->owns) + delete obj->data; +} + +static int +H5PartRandomSampleAttributes_compare(PyObject *v, PyObject *w) +{ + H5PartRandomSampleAttributes *a = ((H5PartRandomSampleAttributesObject *)v)->data; + H5PartRandomSampleAttributes *b = ((H5PartRandomSampleAttributesObject *)w)->data; + return (*a == *b) ? 0 : -1; +} + +static PyObject * +H5PartRandomSampleAttributes_getattr(PyObject *self, char *name) +{ + if(strcmp(name, "factor") == 0) + return H5PartRandomSampleAttributes_GetFactor(self, NULL); + + return Py_FindMethod(H5PartRandomSampleAttributes_methods, self, name); +} + +static int +H5PartRandomSampleAttributes_setattr(PyObject *self, char *name, PyObject *args) +{ + // Create a tuple to contain the arguments since all of the Set + // functions expect a tuple. + PyObject *tuple = PyTuple_New(1); + PyTuple_SET_ITEM(tuple, 0, args); + Py_INCREF(args); + bool retval = false; + + if(strcmp(name, "factor") == 0) + retval = (H5PartRandomSampleAttributes_SetFactor(self, tuple) != NULL); + + Py_DECREF(tuple); + return retval ? 0 : -1; +} + +static int +H5PartRandomSampleAttributes_print(PyObject *v, FILE *fp, int flags) +{ + H5PartRandomSampleAttributesObject *obj = (H5PartRandomSampleAttributesObject *)v; + fprintf(fp, "%s", PyH5PartRandomSampleAttributes_ToString(obj->data, "").c_str()); + return 0; +} + +PyObject * +H5PartRandomSampleAttributes_str(PyObject *v) +{ + H5PartRandomSampleAttributesObject *obj = (H5PartRandomSampleAttributesObject *)v; + return PyString_FromString(PyH5PartRandomSampleAttributes_ToString(obj->data,"").c_str()); +} + +// +// The doc string for the class. +// +static char *H5PartRandomSampleAttributes_Purpose = "Randomly reduce an H5Part point mesh"; + +// +// The type description structure +// +static PyTypeObject H5PartRandomSampleAttributesType = +{ + // + // Type header + // + PyObject_HEAD_INIT(&PyType_Type) + 0, // ob_size + "H5PartRandomSampleAttributes", // tp_name + sizeof(H5PartRandomSampleAttributesObject), // tp_basicsize + 0, // tp_itemsize + // + // Standard methods + // + (destructor)H5PartRandomSampleAttributes_dealloc, // tp_dealloc + (printfunc)H5PartRandomSampleAttributes_print, // tp_print + (getattrfunc)H5PartRandomSampleAttributes_getattr, // tp_getattr + (setattrfunc)H5PartRandomSampleAttributes_setattr, // tp_setattr + (cmpfunc)H5PartRandomSampleAttributes_compare, // tp_compare + (reprfunc)0, // tp_repr + // + // Type categories + // + 0, // tp_as_number + 0, // tp_as_sequence + 0, // tp_as_mapping + // + // More methods + // + 0, // tp_hash + 0, // tp_call + (reprfunc)H5PartRandomSampleAttributes_str, // tp_str + 0, // tp_getattro + 0, // tp_setattro + 0, // tp_as_buffer + Py_TPFLAGS_CHECKTYPES, // tp_flags + H5PartRandomSampleAttributes_Purpose, // tp_doc + 0, // tp_traverse + 0, // tp_clear + 0, // tp_richcompare + 0 // tp_weaklistoffset +}; + +// +// Helper functions for object allocation. +// + +static H5PartRandomSampleAttributes *defaultAtts = 0; +static H5PartRandomSampleAttributes *currentAtts = 0; + +static PyObject * +NewH5PartRandomSampleAttributes(int useCurrent) +{ + H5PartRandomSampleAttributesObject *newObject; + newObject = PyObject_NEW(H5PartRandomSampleAttributesObject, &H5PartRandomSampleAttributesType); + if(newObject == NULL) + return NULL; + if(useCurrent && currentAtts != 0) + newObject->data = new H5PartRandomSampleAttributes(*currentAtts); + else if(defaultAtts != 0) + newObject->data = new H5PartRandomSampleAttributes(*defaultAtts); + else + newObject->data = new H5PartRandomSampleAttributes; + newObject->owns = true; + return (PyObject *)newObject; +} + +static PyObject * +WrapH5PartRandomSampleAttributes(const H5PartRandomSampleAttributes *attr) +{ + H5PartRandomSampleAttributesObject *newObject; + newObject = PyObject_NEW(H5PartRandomSampleAttributesObject, &H5PartRandomSampleAttributesType); + if(newObject == NULL) + return NULL; + newObject->data = (H5PartRandomSampleAttributes *)attr; + newObject->owns = false; + return (PyObject *)newObject; +} + +/////////////////////////////////////////////////////////////////////////////// +// +// Interface that is exposed to the VisIt module. +// +/////////////////////////////////////////////////////////////////////////////// + +PyObject * +H5PartRandomSampleAttributes_new(PyObject *self, PyObject *args) +{ + int useCurrent = 0; + if (!PyArg_ParseTuple(args, "i", &useCurrent)) + { + if (!PyArg_ParseTuple(args, "")) + return NULL; + else + PyErr_Clear(); + } + + return (PyObject *)NewH5PartRandomSampleAttributes(useCurrent); +} + +// +// Plugin method table. These methods are added to the visitmodule's methods. +// +static PyMethodDef H5PartRandomSampleAttributesMethods[] = { + {"H5PartRandomSampleAttributes", H5PartRandomSampleAttributes_new, METH_VARARGS}, + {NULL, NULL} /* Sentinel */ +}; + +static Observer *H5PartRandomSampleAttributesObserver = 0; + +std::string +PyH5PartRandomSampleAttributes_GetLogString() +{ + std::string s("H5PartRandomSampleAtts = H5PartRandomSampleAttributes()\n"); + if(currentAtts != 0) + s += PyH5PartRandomSampleAttributes_ToString(currentAtts, "H5PartRandomSampleAtts."); + return s; +} + +static void +PyH5PartRandomSampleAttributes_CallLogRoutine(Subject *subj, void *data) +{ + H5PartRandomSampleAttributes *atts = (H5PartRandomSampleAttributes *)subj; + typedef void (*logCallback)(const std::string &); + logCallback cb = (logCallback)data; + + if(cb != 0) + { + std::string s("H5PartRandomSampleAtts = H5PartRandomSampleAttributes()\n"); + s += PyH5PartRandomSampleAttributes_ToString(currentAtts, "H5PartRandomSampleAtts."); + cb(s); + } +} + +void +PyH5PartRandomSampleAttributes_StartUp(H5PartRandomSampleAttributes *subj, void *data) +{ + if(subj == 0) + return; + + currentAtts = subj; + PyH5PartRandomSampleAttributes_SetDefaults(subj); + + // + // Create the observer that will be notified when the attributes change. + // + if(H5PartRandomSampleAttributesObserver == 0) + { + H5PartRandomSampleAttributesObserver = new ObserverToCallback(subj, + PyH5PartRandomSampleAttributes_CallLogRoutine, (void *)data); + } + +} + +void +PyH5PartRandomSampleAttributes_CloseDown() +{ + delete defaultAtts; + defaultAtts = 0; + delete H5PartRandomSampleAttributesObserver; + H5PartRandomSampleAttributesObserver = 0; +} + +PyMethodDef * +PyH5PartRandomSampleAttributes_GetMethodTable(int *nMethods) +{ + *nMethods = 1; + return H5PartRandomSampleAttributesMethods; +} + +bool +PyH5PartRandomSampleAttributes_Check(PyObject *obj) +{ + return (obj->ob_type == &H5PartRandomSampleAttributesType); +} + +H5PartRandomSampleAttributes * +PyH5PartRandomSampleAttributes_FromPyObject(PyObject *obj) +{ + H5PartRandomSampleAttributesObject *obj2 = (H5PartRandomSampleAttributesObject *)obj; + return obj2->data; +} + +PyObject * +PyH5PartRandomSampleAttributes_NewPyObject() +{ + return NewH5PartRandomSampleAttributes(0); +} + +PyObject * +PyH5PartRandomSampleAttributes_WrapPyObject(const H5PartRandomSampleAttributes *attr) +{ + return WrapH5PartRandomSampleAttributes(attr); +} + +void +PyH5PartRandomSampleAttributes_SetDefaults(const H5PartRandomSampleAttributes *atts) +{ + if(defaultAtts) + delete defaultAtts; + + defaultAtts = new H5PartRandomSampleAttributes(*atts); +} + diff --git a/visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.h b/visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.h new file mode 100644 index 0000000..332704e --- /dev/null +++ b/visit_plugins/operators/RandomSample/PyH5PartRandomSampleAttributes.h @@ -0,0 +1,21 @@ +#ifndef PY_H5PARTRANDOMSAMPLEATTRIBUTES_H +#define PY_H5PARTRANDOMSAMPLEATTRIBUTES_H +#include +#include + +// +// Functions exposed to the VisIt module. +// +void PyH5PartRandomSampleAttributes_StartUp(H5PartRandomSampleAttributes *subj, void *data); +void PyH5PartRandomSampleAttributes_CloseDown(); +PyMethodDef *PyH5PartRandomSampleAttributes_GetMethodTable(int *nMethods); +bool PyH5PartRandomSampleAttributes_Check(PyObject *obj); +H5PartRandomSampleAttributes *PyH5PartRandomSampleAttributes_FromPyObject(PyObject *obj); +PyObject *PyH5PartRandomSampleAttributes_NewPyObject(); +PyObject *PyH5PartRandomSampleAttributes_WrapPyObject(const H5PartRandomSampleAttributes *attr); +void PyH5PartRandomSampleAttributes_SetDefaults(const H5PartRandomSampleAttributes *atts); +std::string PyH5PartRandomSampleAttributes_GetLogString(); +std::string PyH5PartRandomSampleAttributes_ToString(const H5PartRandomSampleAttributes *, const char *); + +#endif + diff --git a/visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.C b/visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.C new file mode 100644 index 0000000..8ef8350 --- /dev/null +++ b/visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.C @@ -0,0 +1,199 @@ +#include "QvisH5PartRandomSampleWindow.h" + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +using std::string; + +// **************************************************************************** +// Method: QvisH5PartRandomSampleWindow::QvisH5PartRandomSampleWindow +// +// Purpose: +// Constructor +// +// Programmer: xml2window +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +QvisH5PartRandomSampleWindow::QvisH5PartRandomSampleWindow(const int type, + H5PartRandomSampleAttributes *subj, + const char *caption, + const char *shortName, + QvisNotepadArea *notepad) + : QvisOperatorWindow(type,subj, caption, shortName, notepad) +{ + atts = subj; +} + + +// **************************************************************************** +// Method: QvisH5PartRandomSampleWindow::~QvisH5PartRandomSampleWindow +// +// Purpose: +// Destructor +// +// Programmer: xml2window +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +QvisH5PartRandomSampleWindow::~QvisH5PartRandomSampleWindow() +{ +} + + +// **************************************************************************** +// Method: QvisH5PartRandomSampleWindow::CreateWindowContents +// +// Purpose: +// Creates the widgets for the window. +// +// Programmer: xml2window +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +QvisH5PartRandomSampleWindow::CreateWindowContents() +{ + QGridLayout *mainLayout = new QGridLayout(topLayout, 1,2, 10, "mainLayout"); + + + factorLabel = new QLabel("factor", central, "factorLabel"); + mainLayout->addWidget(factorLabel,0,0); + factor = new QLineEdit(central, "factor"); + connect(factor, SIGNAL(returnPressed()), + this, SLOT(factorProcessText())); + mainLayout->addWidget(factor, 0,1); + +} + + +// **************************************************************************** +// Method: QvisH5PartRandomSampleWindow::UpdateWindow +// +// Purpose: +// Updates the widgets in the window when the subject changes. +// +// Programmer: xml2window +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +QvisH5PartRandomSampleWindow::UpdateWindow(bool doAll) +{ + QString temp; + double r; + + for(int i = 0; i < atts->NumAttributes(); ++i) + { + if(!doAll) + { + if(!atts->IsSelected(i)) + { + continue; + } + } + + const double *dptr; + const float *fptr; + const int *iptr; + const char *cptr; + const unsigned char *uptr; + const string *sptr; + QColor tempcolor; + switch(i) + { + case 0: //factor + temp.setNum(atts->GetFactor()); + factor->setText(temp); + break; + } + } +} + + +// **************************************************************************** +// Method: QvisH5PartRandomSampleWindow::GetCurrentValues +// +// Purpose: +// Gets values from certain widgets and stores them in the subject. +// +// Programmer: xml2window +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +void +QvisH5PartRandomSampleWindow::GetCurrentValues(int which_widget) +{ + bool okay, doAll = (which_widget == -1); + QString msg, temp; + + // Do factor + if(which_widget == 0 || doAll) + { + temp = factor->displayText().simplifyWhiteSpace(); + okay = !temp.isEmpty(); + if(okay) + { + float val = temp.toFloat(&okay); + atts->SetFactor(val); + } + + if(!okay) + { + msg.sprintf("The value of factor was invalid. " + "Resetting to the last good value of %g.", + atts->GetFactor()); + Message(msg); + atts->SetFactor(atts->GetFactor()); + } + } + +} + + +// +// Qt Slot functions +// + + +void +QvisH5PartRandomSampleWindow::factorProcessText() +{ + GetCurrentValues(0); + Apply(); +} + + diff --git a/visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.h b/visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.h new file mode 100644 index 0000000..5bb137f --- /dev/null +++ b/visit_plugins/operators/RandomSample/QvisH5PartRandomSampleWindow.h @@ -0,0 +1,61 @@ +#ifndef QVISH5PARTRANDOMSAMPLEWINDOW_H +#define QVISH5PARTRANDOMSAMPLEWINDOW_H + +#include +#include + +class H5PartRandomSampleAttributes; +class QLabel; +class QCheckBox; +class QLineEdit; +class QSpinBox; +class QVBox; +class QButtonGroup; +class QvisColorTableButton; +class QvisOpacitySlider; +class QvisColorButton; +class QvisLineStyleWidget; +class QvisLineWidthWidget; +class QvisVariableButton; + +// **************************************************************************** +// Class: QvisH5PartRandomSampleWindow +// +// Purpose: +// Defines QvisH5PartRandomSampleWindow class. +// +// Notes: This class was automatically generated! + +// Programmer: xml2window +// Creation: Thu Mar 16 10:26:55 PDT 2006 +// +// Modifications: +// +// **************************************************************************** + +class QvisH5PartRandomSampleWindow : public QvisOperatorWindow +{ + Q_OBJECT + public: + QvisH5PartRandomSampleWindow(const int type, + H5PartRandomSampleAttributes *subj, + const char *caption = 0, + const char *shortName = 0, + QvisNotepadArea *notepad = 0); + virtual ~QvisH5PartRandomSampleWindow(); + virtual void CreateWindowContents(); + protected: + void UpdateWindow(bool doAll); + virtual void GetCurrentValues(int which_widget); + private slots: + void factorProcessText(); + private: + QLineEdit *factor; + QLabel *factorLabel; + + H5PartRandomSampleAttributes *atts; +}; + + + +#endif diff --git a/visit_plugins/operators/RandomSample/RandomSample.xml b/visit_plugins/operators/RandomSample/RandomSample.xml new file mode 100644 index 0000000..55a9e1b --- /dev/null +++ b/visit_plugins/operators/RandomSample/RandomSample.xml @@ -0,0 +1,8 @@ + + + + + 1.0 + + + diff --git a/visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.C b/visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.C new file mode 100644 index 0000000..76587a9 --- /dev/null +++ b/visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.C @@ -0,0 +1,177 @@ +// ************************************************************************* // +// File: avtH5PartRandomSampleFilter.C +// ************************************************************************* // + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + + +// **************************************************************************** +// Method: avtH5PartRandomSampleFilter constructor +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// **************************************************************************** + +avtH5PartRandomSampleFilter::avtH5PartRandomSampleFilter() +{ + idList = vtkIdList::New(); + npoints = 0; +} + + +// **************************************************************************** +// Method: avtH5PartRandomSampleFilter destructor +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// Modifications: +// +// **************************************************************************** + +avtH5PartRandomSampleFilter::~avtH5PartRandomSampleFilter() +{ +} + + +// **************************************************************************** +// Method: avtH5PartRandomSampleFilter::Create +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// **************************************************************************** + +avtFilter * +avtH5PartRandomSampleFilter::Create() +{ + return new avtH5PartRandomSampleFilter(); +} + + +// **************************************************************************** +// Method: avtH5PartRandomSampleFilter::SetAtts +// +// Purpose: +// Sets the state of the filter based on the attribute object. +// +// Arguments: +// a The attributes to use. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// **************************************************************************** + +void +avtH5PartRandomSampleFilter::SetAtts(const AttributeGroup *a) +{ + atts = *(const H5PartRandomSampleAttributes*)a; +} + + +// **************************************************************************** +// Method: avtH5PartRandomSampleFilter::Equivalent +// +// Purpose: +// Returns true if creating a new avtH5PartRandomSampleFilter with the given +// parameters would result in an equivalent avtH5PartRandomSampleFilter. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// **************************************************************************** + +bool +avtH5PartRandomSampleFilter::Equivalent(const AttributeGroup *a) +{ + return (atts == *(H5PartRandomSampleAttributes*)a); +} + + +// **************************************************************************** +// Method: avtH5PartRandomSampleFilter::ExecuteData +// +// Purpose: +// Sends the specified input and output through the H5PartRandomSample filter. +// +// Arguments: +// in_ds The input dataset. +// The domain number. +// The label. +// +// Returns: The output dataset. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// **************************************************************************** + +vtkDataSet * +avtH5PartRandomSampleFilter::ExecuteData(vtkDataSet *in_ds, int, std::string) +{ + + float factor = atts.GetFactor(); + int nspace = 3; + int update = 0; + + + if (factor >= 1.0) { + in_ds->Register(NULL); + return in_ds; + } else if (factor < 0){ + factor = 0.0; + } + vtkIdType nPoints = in_ds->GetNumberOfPoints(); + + vtkPointData *inPD = in_ds->GetPointData(); + vtkPolyData *out_ds = vtkPolyData::New(); + vtkPoints *pts = vtkPoints::New(); + pts->SetNumberOfPoints((vtkIdType) (nPoints*factor)); + out_ds->SetPoints(pts); + out_ds->Allocate(nspace*((vtkIdType) (nPoints*factor))); + + vtkPointData *outPD = out_ds->GetPointData(); + outPD->CopyAllocate(inPD, 0, (vtkIdType) (nPoints*factor)); + + double sfactor = (double) (nPoints-1)/RAND_MAX; + seed=12; + srand(seed); + + vtkIdType i, index; + vtkIdType newId = 0; + vtkIdType onevertex[1]; + for (vtkIdType i = 0; newId < (vtkIdType)(nPoints*factor); i++) { + index = (vtkIdType) (sfactor * rand()); + if (idList->IsId(index) != -1){ + continue; + } else { + idList->InsertNextId(index); + } + outPD->CopyData(inPD, index, newId); + float pt[3]; + in_ds->GetPoint(index, pt); + pts->SetPoint(newId, pt); + onevertex[0] = newId; + out_ds->InsertNextCell(VTK_VERTEX, 1, onevertex); + newId++; + } + idList->Reset(); + idList->Delete(); + pts->Delete(); + + return out_ds; + + +} diff --git a/visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.h b/visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.h new file mode 100644 index 0000000..cefc00c --- /dev/null +++ b/visit_plugins/operators/RandomSample/avtH5PartRandomSampleFilter.h @@ -0,0 +1,54 @@ +// ************************************************************************* // +// File: avtH5PartRandomSampleFilter.h +// ************************************************************************* // + +#ifndef AVT_H5PartRandomSample_FILTER_H +#define AVT_H5PartRandomSample_FILTER_H + + +#include +#include + +class vtkDataSet; +class vtkIdList; + +// **************************************************************************** +// Class: avtH5PartRandomSampleFilter +// +// Purpose: +// A plugin operator for H5PartRandomSample. +// +// Programmer: cristina -- generated by xml2avt +// Creation: Thu Mar 2 13:48:31 PST 2006 +// +// **************************************************************************** + +class avtH5PartRandomSampleFilter : public avtPluginStreamer +{ + public: + avtH5PartRandomSampleFilter(); + virtual ~avtH5PartRandomSampleFilter(); + + static avtFilter *Create(); + + virtual const char *GetType(void) { return "avtH5PartRandomSampleFilter"; }; + virtual const char *GetDescription(void) + { return "H5PartRandomSample"; }; + + virtual void SetAtts(const AttributeGroup*); + virtual bool Equivalent(const AttributeGroup*); + + protected: + H5PartRandomSampleAttributes atts; + + virtual vtkDataSet *ExecuteData(vtkDataSet *, int, std::string); + + private: + + long int npoints; + unsigned int seed; + vtkIdList *idList; +}; + + +#endif diff --git a/visit_plugins/operators/RandomSample/icon.xpm b/visit_plugins/operators/RandomSample/icon.xpm new file mode 100644 index 0000000..e8b26bf --- /dev/null +++ b/visit_plugins/operators/RandomSample/icon.xpm @@ -0,0 +1,23828 @@ +/* XPM */ +static const char * icon_xpm[] = { +"300 300 23525 3", +" c #003D1E", +". c #005F2E", +"+ c #007E3B", +"@ c #008E42", +"# c #008239", +"$ c #00A953", +"% c #01ED9E", +"& c #02FFB1", +"* c #00FD9D", +"= c #00FF90", +"- c #00FE82", +"; c #08FB83", +"> c #1BFFAD", +", c #0A553A", +"' c #000000", +") c #000402", +"! c #000100", +"~ c #000204", +"{ c #002A40", +"] c #005C8A", +"^ c #0070A8", +"/ c #0073A9", +"( c #0073A8", +"_ c #006C9D", +": c #004B6C", +"< c #000F16", +"[ c #000101", +"} c #008D45", +"| c #008941", +"1 c #00803B", +"2 c #007737", +"3 c #00692B", +"4 c #02BB74", +"5 c #13FFCF", +"6 c #15FDBD", +"7 c #0AFEA4", +"8 c #02FE8B", +"9 c #00FE7E", +"0 c #1DFFA8", +"a c #099254", +"b c #002D12", +"c c #000F17", +"d c #004161", +"e c #006A9B", +"f c #0075AA", +"g c #0076AA", +"h c #0076A8", +"i c #00628B", +"j c #002A3B", +"k c #006E36", +"l c #006731", +"m c #00642F", +"n c #00602C", +"o c #00793B", +"p c #03F5A1", +"q c #0FF7AE", +"r c #13E79F", +"s c #11EF9E", +"t c #0BFF94", +"u c #03FE7C", +"v c #03FF83", +"w c #05F383", +"x c #01A750", +"y c #009B4A", +"z c #006431", +"A c #00140A", +"B c #000001", +"C c #001D2B", +"D c #00547A", +"E c #0073A5", +"F c #0078AA", +"G c #007BAC", +"H c #0076A5", +"I c #00506E", +"J c #00131B", +"K c #000404", +"L c #000303", +"M c #006733", +"N c #007339", +"O c #00813F", +"P c #009E4E", +"Q c #00D672", +"R c #00BA63", +"S c #01AB5F", +"T c #03BC67", +"U c #05FA8B", +"V c #02FF81", +"W c #0FFF91", +"X c #12FD9B", +"Y c #01A955", +"Z c #00A14D", +"` c #00A452", +" . c #008946", +".. c #004021", +"+. c #010000", +"@. c #000201", +"#. c #000102", +"$. c #000508", +"%. c #003247", +"&. c #00668F", +"*. c #0079A9", +"=. c #007BAA", +"-. c #007DAB", +";. c #006C93", +">. c #003345", +",. c #000304", +"'. c #009249", +"). c #008E46", +"!. c #008A42", +"~. c #00823D", +"{. c #00813C", +"]. c #00B259", +"^. c #00C467", +"/. c #01D873", +"(. c #05DD76", +"_. c #0BF68D", +":. c #0CFF90", +"<. c #12FE99", +"[. c #24FDB5", +"}. c #06683D", +"|. c #007436", +"1. c #00A152", +"2. c #00A454", +"3. c #009D52", +"4. c #006D3B", +"5. c #001F11", +"6. c #010100", +"7. c #000202", +"8. c #001017", +"9. c #004864", +"0. c #00739E", +"a. c #007DAA", +"b. c #007FAB", +"c. c #007CA6", +"d. c #005875", +"e. c #001219", +"f. c #001716", +"g. c #006E6D", +"h. c #008081", +"i. c #004D4E", +"j. c #010808", +"k. c #007D3E", +"l. c #00934A", +"m. c #00A251", +"n. c #009D4B", +"o. c #008A40", +"p. c #009348", +"q. c #00BA5B", +"r. c #00E972", +"s. c #0AF687", +"t. c #1DFEA6", +"u. c #22FCAB", +"v. c #24FFBA", +"w. c #20EAAB", +"x. c #008140", +"y. c #005028", +"z. c #00582C", +"A. c #008C49", +"B. c #00A356", +"C. c #00A258", +"D. c #008F50", +"E. c #004A2A", +"F. c #000905", +"G. c #010202", +"H. c #010101", +"I. c #010102", +"J. c #010203", +"K. c #010001", +"L. c #002431", +"M. c #005D7F", +"N. c #0081AA", +"O. c #0083AC", +"P. c #006F93", +"Q. c #00A0B1", +"R. c #03FCFE", +"S. c #01FEFD", +"T. c #00FFFF", +"U. c #00C1CE", +"V. c #012227", +"W. c #009650", +"X. c #00A457", +"Y. c #00A453", +"Z. c #00AE54", +"`. c #00C258", +" + c #00D75F", +".+ c #00E971", +"++ c #00FC79", +"@+ c #0DFF92", +"#+ c #1FFEAC", +"$+ c #27FFC0", +"%+ c #29FAC8", +"&+ c #09B365", +"*+ c #009B50", +"=+ c #006B38", +"-+ c #004524", +";+ c #006938", +">+ c #009954", +",+ c #00A25A", +"'+ c #009E5A", +")+ c #007846", +"!+ c #012918", +"~+ c #020000", +"{+ c #020101", +"]+ c #010303", +"^+ c #020202", +"/+ c #020201", +"(+ c #020303", +"_+ c #01080A", +":+ c #003A4D", +"<+ c #007093", +"[+ c #007EA6", +"}+ c #00B2D8", +"|+ c #03BEE3", +"1+ c #08A7BF", +"2+ c #0ACBDA", +"3+ c #05E1FB", +"4+ c #00F0FF", +"5+ c #00DAE4", +"6+ c #011619", +"7+ c #03BC6D", +"8+ c #0CD17C", +"9+ c #10EA86", +"0+ c #0AFA7E", +"a+ c #02FE6A", +"b+ c #00FF68", +"c+ c #00FA6E", +"d+ c #00D662", +"e+ c #04EE72", +"f+ c #13FB9B", +"g+ c #13EAA8", +"h+ c #054B34", +"i+ c #005927", +"j+ c #009C4F", +"k+ c #008A4B", +"l+ c #00542E", +"m+ c #004A28", +"n+ c #007E46", +"o+ c #009F5C", +"p+ c #00A15E", +"q+ c #009359", +"r+ c #005836", +"s+ c #010F0A", +"t+ c #010304", +"u+ c #01141B", +"v+ c #00566E", +"w+ c #00ACD0", +"x+ c #03CAEC", +"y+ c #09D5EF", +"z+ c #09B9D1", +"A+ c #0AD2E9", +"B+ c #04D9FC", +"C+ c #06F9FF", +"D+ c #038181", +"E+ c #020506", +"F+ c #02ED79", +"G+ c #08D770", +"H+ c #0AC667", +"I+ c #0BEB77", +"J+ c #04FF6F", +"K+ c #06F969", +"L+ c #0BFF7E", +"M+ c #046E34", +"N+ c #010502", +"O+ c #012513", +"P+ c #00140E", +"Q+ c #020102", +"R+ c #012F18", +"S+ c #007A3E", +"T+ c #00A054", +"U+ c #00A358", +"V+ c #009D57", +"W+ c #007543", +"X+ c #004326", +"Y+ c #005832", +"Z+ c #008F54", +"`+ c #00A161", +" @ c #009E61", +".@ c #007F50", +"+@ c #003523", +"@@ c #020304", +"#@ c #020203", +"$@ c #020405", +"%@ c #011F20", +"&@ c #00C4D0", +"*@ c #00B6CE", +"=@ c #01D5EE", +"-@ c #01D1EE", +";@ c #03D8F0", +">@ c #02E6FD", +",@ c #13F8FF", +"'@ c #119B9E", +")@ c #00BC4E", +"!@ c #00B450", +"~@ c #01BA52", +"{@ c #03D85F", +"]@ c #05FF72", +"^@ c #09FA72", +"/@ c #1CFF97", +"(@ c #118651", +"_@ c #030301", +":@ c #030201", +"<@ c #030605", +"[@ c #030303", +"}@ c #030000", +"|@ c #020906", +"1@ c #014927", +"2@ c #008C4B", +"3@ c #00A159", +"4@ c #00A25C", +"5@ c #009356", +"6@ c #005C37", +"7@ c #004026", +"8@ c #006D42", +"9@ c #009A5F", +"0@ c #00A065", +"a@ c #009661", +"b@ c #006241", +"c@ c #021810", +"d@ c #030202", +"e@ c #020404", +"f@ c #020A0A", +"g@ c #00DADA", +"h@ c #00ECF7", +"i@ c #00D0E6", +"j@ c #08DBEF", +"k@ c #11F5FE", +"l@ c #0FECFA", +"m@ c #1AFFFF", +"n@ c #199293", +"o@ c #030606", +"p@ c #00A847", +"q@ c #00CF57", +"r@ c #04E964", +"s@ c #0FF378", +"t@ c #1AFF8C", +"u@ c #17FB87", +"v@ c #25FFA2", +"w@ c #12B766", +"x@ c #004C1D", +"y@ c #03130B", +"z@ c #030001", +"A@ c #030203", +"B@ c #020505", +"C@ c #02190F", +"D@ c #006337", +"E@ c #009856", +"F@ c #00A15D", +"G@ c #009F5F", +"H@ c #00804E", +"I@ c #00462B", +"J@ c #00482D", +"K@ c #008152", +"L@ c #009F67", +"M@ c #009D69", +"N@ c #00875C", +"O@ c #01412E", +"P@ c #020605", +"Q@ c #030304", +"R@ c #020204", +"S@ c #040405", +"T@ c #040809", +"U@ c #018080", +"V@ c #00E2F8", +"W@ c #0EEFFB", +"X@ c #1EF8FC", +"Y@ c #26FBFD", +"Z@ c #2AFFFF", +"`@ c #0C3B3B", +" # c #030506", +".# c #00A543", +"+# c #00E459", +"@# c #05F86A", +"## c #24FB95", +"$# c #2CFFAB", +"%# c #25F2A2", +"&# c #01A646", +"*# c #00A145", +"=# c #00863C", +"-# c #01421F", +";# c #020806", +"># c #030505", +",# c #030405", +"'# c #030102", +")# c #01321D", +"!# c #007B47", +"~# c #009D5D", +"{# c #00A062", +"]# c #009860", +"^# c #006642", +"/# c #013B26", +"(# c #005B3B", +"_# c #009160", +":# c #009F6C", +"<# c #00986A", +"[# c #006D4E", +"}# c #022118", +"|# c #02181A", +"1# c #00CBD8", +"2# c #00EEFF", +"3# c #0AECFD", +"4# c #1FFFFE", +"5# c #24FFFF", +"6# c #16B1BF", +"7# c #01090E", +"8# c #030101", +"9# c #040404", +"0# c #050505", +"a# c #050506", +"b# c #060606", +"c# c #03170C", +"d# c #01A341", +"e# c #01FF6A", +"f# c #14FB88", +"g# c #1EFFA2", +"h# c #16E08F", +"i# c #066E3A", +"j# c #008635", +"k# c #01A447", +"l# c #01A449", +"m# c #009F49", +"n# c #017B3A", +"o# c #02341A", +"p# c #030403", +"q# c #040001", +"r# c #040000", +"s# c #030C08", +"t# c #024C2D", +"u# c #008B54", +"v# c #029F64", +"w# c #03A168", +"x# c #038B5C", +"y# c #044D34", +"z# c #043C28", +"A# c #03724E", +"B# c #039A6C", +"C# c #039E71", +"D# c #018C66", +"E# c #014E3A", +"F# c #030B09", +"G# c #040505", +"H# c #040304", +"I# c #3A3A3A", +"J# c #0D0D0E", +"K# c #0A0A0A", +"L# c #3B3B3B", +"M# c #040506", +"N# c #031D22", +"O# c #01879F", +"P# c #039CBD", +"Q# c #0CAEC0", +"R# c #069EB8", +"S# c #007299", +"T# c #024458", +"U# c #060607", +"V# c #040403", +"W# c #02441B", +"X# c #048036", +"Y# c #065C33", +"Z# c #01170F", +"`# c #03180D", +" $ c #015625", +".$ c #009040", +"+$ c #00A24A", +"@$ c #01A34D", +"#$ c #009B4C", +"$$ c #016E38", +"%$ c #022616", +"&$ c #040102", +"*$ c #040002", +"=$ c #040203", +"-$ c #031D13", +";$ c #00613B", +">$ c #008E58", +",$ c #009B63", +"'$ c #009C67", +")$ c #00734E", +"!$ c #003B27", +"~$ c #004931", +"{$ c #00825A", +"]$ c #009C71", +"^$ c #009972", +"/$ c #01765A", +"($ c #022D24", +"_$ c #030305", +":$ c #787879", +"<$ c #434344", +"[$ c #515152", +"}$ c #747475", +"|$ c #111112", +"1$ c #070708", +"2$ c #727272", +"3$ c #5D5D5E", +"4$ c #4C4C4D", +"5$ c #909090", +"6$ c #1E1E1F", +"7$ c #222223", +"8$ c #686869", +"9$ c #09090A", +"0$ c #141415", +"a$ c #79797A", +"b$ c #737273", +"c$ c #1A1C1D", +"d$ c #050001", +"e$ c #070000", +"f$ c #000710", +"g$ c #4591AA", +"h$ c #4EA5BF", +"i$ c #00698D", +"j$ c #081D25", +"k$ c #000002", +"l$ c #2B2B2C", +"m$ c #404041", +"n$ c #575758", +"o$ c #707070", +"p$ c #777778", +"q$ c #6C6C6C", +"r$ c #545454", +"s$ c #555555", +"t$ c #565657", +"u$ c #4B4B4B", +"v$ c #343435", +"w$ c #363636", +"x$ c #373738", +"y$ c #2C2C2C", +"z$ c #1A1A1B", +"A$ c #1B1B1C", +"B$ c #1D1D1E", +"C$ c #131314", +"D$ c #080809", +"E$ c #040605", +"F$ c #040303", +"G$ c #040707", +"H$ c #040103", +"I$ c #031F10", +"J$ c #01602C", +"K$ c #009345", +"L$ c #00A24F", +"M$ c #01A351", +"N$ c #00954D", +"O$ c #016033", +"P$ c #031B11", +"Q$ c #040706", +"R$ c #050706", +"S$ c #201617", +"T$ c #395946", +"U$ c #338C67", +"V$ c #349A72", +"W$ c #34A179", +"X$ c #349674", +"Y$ c #365F4E", +"Z$ c #32473D", +"`$ c #05644A", +" % c #00926C", +".% c #019D77", +"+% c #008F70", +"@% c #015846", +"#% c #031310", +"$% c #070707", +"%% c #828283", +"&% c #181819", +"*% c #616161", +"=% c #484849", +"-% c #89898A", +";% c #5C5C5C", +">% c #B8B8B8", +",% c #3A3A3B", +"'% c #3E3E3E", +")% c #8A8A8A", +"!% c #858585", +"~% c #1A1A1A", +"{% c #040708", +"]% c #050607", +"^% c #4F5F65", +"/% c #5CB0CA", +"(% c #006D96", +"_% c #044D69", +":% c #050202", +"<% c #242425", +"[% c #39393A", +"}% c #505050", +"|% c #6D6D6D", +"1% c #838384", +"2% c #969697", +"3% c #A5A5A5", +"4% c #B1B1B1", +"5% c #B5B5B5", +"6% c #B6B6B6", +"7% c #B4B4B4", +"8% c #B2B2B2", +"9% c #B3B3B3", +"0% c #B2B2B1", +"a% c #B0B0B0", +"b% c #ADADAD", +"c% c #ACACAC", +"d% c #A7A7A7", +"e% c #A0A0A0", +"f% c #979797", +"g% c #8C8C8C", +"h% c #8C8C8D", +"i% c #8E8E8E", +"j% c #808080", +"k% c #737373", +"l% c #757575", +"m% c #636363", +"n% c #575757", +"o% c #585858", +"p% c #444445", +"q% c #393939", +"r% c #363637", +"s% c #050806", +"t% c #050907", +"u% c #050807", +"v% c #050606", +"w% c #050405", +"x% c #050003", +"y% c #032514", +"z% c #016A33", +"A% c #00974B", +"B% c #00A253", +"C% c #00A156", +"D% c #008E4E", +"E% c #02512E", +"F% c #04130D", +"G% c #080204", +"H% c #000B0A", +"I% c #AD3939", +"J% c #FF0F11", +"K% c #FB1314", +"L% c #FF1314", +"M% c #FF1313", +"N% c #FD1616", +"O% c #FF1312", +"P% c #EE3C3A", +"Q% c #135243", +"R% c #003727", +"S% c #02775B", +"T% c #009A78", +"U% c #00997A", +"V% c #007E67", +"W% c #02372E", +"X% c #050102", +"Y% c #6F6F70", +"Z% c #313132", +"`% c #464646", +" & c #181818", +".& c #848485", +"+& c #0F0F0F", +"@& c #19191A", +"#& c #505051", +"$& c #696969", +"%& c #898989", +"&& c #C0C0C0", +"*& c #535354", +"=& c #8F8F90", +"-& c #525253", +";& c #515151", +">& c #0E0E0F", +",& c #979798", +"'& c #0B0B0C", +")& c #0F0F10", +"!& c #0A0C0D", +"~& c #99908D", +"{& c #4F9FB9", +"]& c #0A7AA0", +"^& c #509FBA", +"/& c #002533", +"(& c #060000", +"_& c #050608", +":& c #4F4F4F", +"<& c #676768", +"[& c #7F7F7F", +"}& c #949494", +"|& c #A6A6A6", +"1& c #B9B9B9", +"2& c #BBBBBB", +"3& c #BABABA", +"4& c #AEAEAE", +"5& c #AAAAAA", +"6& c #A8A8A8", +"7& c #A4A4A4", +"8& c #A3A3A3", +"9& c #A2A2A2", +"0& c #A1A1A1", +"a& c #9F9F9F", +"b& c #A3A3A2", +"c& c #9E9E9E", +"d& c #9D9D9D", +"e& c #929292", +"f& c #7B7B7B", +"g& c #565656", +"h& c #303031", +"i& c #141414", +"j& c #040606", +"k& c #032D18", +"l& c #01713A", +"m& c #009950", +"n& c #00A158", +"o& c #00A05A", +"p& c #00854D", +"q& c #024329", +"r& c #070A08", +"s& c #000305", +"t& c #AF3030", +"u& c #FF0000", +"v& c #FA0000", +"w& c #FD0000", +"x& c #FC0201", +"y& c #ED2D2A", +"z& c #11A380", +"A& c #00634B", +"B& c #033025", +"C& c #024D3C", +"D& c #00896D", +"E& c #009B7E", +"F& c #00927A", +"G& c #016354", +"H& c #031A17", +"I& c #050000", +"J& c #040607", +"K& c #545455", +"L& c #59595A", +"M& c #6A6A6A", +"N& c #424242", +"O& c #666667", +"P& c #29292A", +"Q& c #787878", +"R& c #6D6D6E", +"S& c #6B6B6B", +"T& c #3D3D3E", +"U& c #737374", +"V& c #BCBCBC", +"W& c #717171", +"X& c #828282", +"Y& c #8D8D8D", +"Z& c #ADADAE", +"`& c #ABABAC", +" * c #5E5E5F", +".* c #B6B6B7", +"+* c #9B9B9B", +"@* c #838383", +"#* c #6E6E6E", +"$* c #565758", +"%* c #B4AEAC", +"&* c #48707E", +"** c #569AB1", +"=* c #ADD7E6", +"-* c #21718B", +";* c #000407", +">* c #060405", +",* c #474748", +"'* c #606061", +")* c #959595", +"!* c #BFBFBF", +"~* c #ABABAB", +"{* c #A9A9A9", +"]* c #9C9C9C", +"^* c #9A9A9A", +"/* c #999999", +"(* c #989898", +"_* c #969696", +":* c #939393", +"<* c #8B8B8B", +"[* c #727273", +"}* c #2C2C2D", +"|* c #050707", +"1* c #03371E", +"2* c #017640", +"3* c #009B56", +"4* c #01A15C", +"5* c #047849", +"6* c #003827", +"7* c #AF3732", +"8* c #FF0500", +"9* c #FB0A01", +"0* c #FE0900", +"a* c #FD0B02", +"b* c #ED332A", +"c* c #009A74", +"d* c #02886C", +"e* c #024B3C", +"f* c #032F26", +"g* c #016452", +"h* c #00947B", +"i* c #009982", +"j* c #008372", +"k* c #02433B", +"l* c #383839", +"m* c #7F7F80", +"n* c #686868", +"o* c #7B7B7C", +"p* c #8A8A8B", +"q* c #2E2E2E", +"r* c #858586", +"s* c #2F2F2F", +"t* c #252526", +"u* c #7C7C7C", +"v* c #5D5D5D", +"w* c #5A5A5B", +"x* c #818182", +"y* c #626263", +"z* c #666666", +"A* c #494949", +"B* c #777777", +"C* c #4D4D4D", +"D* c #6B6B6C", +"E* c #767677", +"F* c #919191", +"G* c #676767", +"H* c #4A4B4C", +"I* c #726A68", +"J* c #709CAB", +"K* c #62AFCA", +"L* c #5BA7C2", +"M* c #002F45", +"N* c #090000", +"O* c #0C0C0D", +"P* c #414142", +"Q* c #C4C4C4", +"R* c #C5C5C5", +"S* c #C2C2C2", +"T* c #BEBEBE", +"U* c #AFAFAF", +"V* c #8F8F8F", +"W* c #848484", +"X* c #6A6A6B", +"Y* c #4A4A4A", +"Z* c #060707", +"`* c #060506", +" = c #060003", +".= c #050A08", +"+= c #034125", +"@= c #017E48", +"#= c #009C5B", +"$= c #049F5F", +"%= c #00A167", +"&= c #AE5D49", +"*= c #FF0100", +"== c #FB0E01", +"-= c #FF0B00", +";= c #FD0D01", +">= c #EE2C23", +",= c #13614E", +"'= c #008462", +")= c #029B78", +"!= c #01725D", +"~= c #033229", +"{= c #033A31", +"]= c #017C69", +"^= c #009985", +"/= c #009484", +"(= c #016C61", +"_= c #042522", +":= c #050708", +"<= c #5B5B5B", +"[= c #808081", +"}= c #5F5F60", +"|= c #AAAAAB", +"1= c #595959", +"2= c #7D7D7E", +"3= c #636364", +"4= c #484848", +"5= c #3B3B3C", +"6= c #202021", +"7= c #424243", +"8= c #868586", +"9= c #9BA0A2", +"0= c #88B7C7", +"a= c #288DB2", +"b= c #00648A", +"c= c #061419", +"d= c #060302", +"e= c #060608", +"f= c #C8C8C8", +"g= c #232324", +"h= c #050507", +"i= c #060406", +"j= c #060002", +"k= c #050E0B", +"l= c #02492C", +"m= c #04824D", +"n= c #00A96A", +"o= c #AF694E", +"p= c #FF0300", +"q= c #FB1202", +"r= c #FF0F00", +"s= c #FD1001", +"t= c #FF0900", +"u= c #EE2F23", +"v= c #161619", +"w= c #001C15", +"x= c #02674F", +"y= c #009173", +"z= c #009078", +"A= c #025549", +"B= c #032923", +"C= c #025146", +"D= c #008C7B", +"E= c #00998A", +"F= c #00897E", +"G= c #024D48", +"H= c #050D0D", +"I= c #060708", +"J= c #CBCBCB", +"K= c #2B2B2B", +"L= c #939394", +"M= c #171718", +"N= c #7A7A7B", +"O= c #4D4D4E", +"P= c #DCDCDC", +"Q= c #161617", +"R= c #A5A5A6", +"S= c #C1C1C1", +"T= c #646464", +"U= c #5F5F5F", +"V= c #7C7C7D", +"W= c #646465", +"X= c #464647", +"Y= c #7A7A7A", +"Z= c #69696A", +"`= c #757576", +" - c #1E1E1E", +".- c #808182", +"+- c #6E6A68", +"@- c #001E34", +"#- c #0373A0", +"$- c #0077A2", +"%- c #02465F", +"&- c #070709", +"*- c #CACACA", +"=- c #B7B7B7", +"-- c #888888", +";- c #3C3C3D", +">- c #060808", +",- c #08130D", +"'- c #005D3C", +")- c #AE6148", +"!- c #FB1501", +"~- c #FF1300", +"{- c #FD1401", +"]- c #FF0D00", +"^- c #EE3323", +"/- c #161F20", +"(- c #070607", +"_- c #03372C", +":- c #017961", +"<- c #00967C", +"[- c #009A83", +"}- c #017D6D", +"|- c #033A33", +"1- c #032E29", +"2- c #016B60", +"3- c #009589", +"4- c #01968E", +"5- c #017570", +"6- c #032E2E", +"7- c #070304", +"8- c #09090B", +"9- c #49494A", +"0- c #616162", +"a- c #535355", +"b- c #555556", +"c- c #4F4F51", +"d- c #585859", +"e- c #1E1E20", +"f- c #8D8D8E", +"g- c #AFAFB0", +"h- c #6F6F6F", +"i- c #717172", +"j- c #6C6C6D", +"k- c #707071", +"l- c #656566", +"m- c #514F50", +"n- c #2E86A6", +"o- c #006F9D", +"p- c #026F98", +"q- c #041F29", +"r- c #080202", +"s- c #06080A", +"t- c #0C0C0E", +"u- c #878788", +"v- c #CCCCCC", +"w- c #C6C6C6", +"x- c #BDBDBD", +"y- c #868686", +"z- c #1A1A1C", +"A- c #070808", +"B- c #0A0204", +"C- c #000509", +"D- c #B03F33", +"E- c #FF1400", +"F- c #FB1700", +"G- c #FF1700", +"H- c #FD1801", +"I- c #FF1100", +"J- c #EE3522", +"K- c #171619", +"L- c #08090A", +"M- c #070002", +"N- c #06110F", +"O- c #024F41", +"P- c #008771", +"Q- c #009883", +"R- c #009483", +"S- c #01645A", +"T- c #042925", +"U- c #033F3A", +"V- c #017972", +"W- c #00948E", +"X- c #018E8B", +"Y- c #005655", +"Z- c #162424", +"`- c #1C1717", +" ; c #272728", +".; c #131313", +"+; c #4C4C4C", +"@; c #1C1C1D", +"#; c #474747", +"$; c #0D0D0D", +"%; c #525252", +"&; c #454545", +"*; c #292929", +"=; c #BBBBBC", +"-; c #2D2D2D", +";; c #3F3F40", +">; c #9E9E9F", +",; c #242424", +"'; c #3E4041", +"); c #9A9391", +"!; c #13323D", +"~; c #00729E", +"{; c #0276A4", +"]; c #015271", +"^; c #CCCCCB", +"/; c #B5B5B4", +"(; c #A8A8A7", +"_; c #878787", +":; c #818181", +"<; c #0A0707", +"[; c #000A0D", +"}; c #B03E31", +"|; c #FF1900", +"1; c #FB1B00", +"2; c #FF1A00", +"3; c #FD1C01", +"4; c #FF1200", +"5; c #EE4028", +"6; c #144A40", +"7; c #080104", +"8; c #06090A", +"9; c #070507", +"0; c #070003", +"a; c #04221E", +"b; c #016557", +"c; c #008F7D", +"d; c #009989", +"e; c #03897F", +"f; c #003934", +"g; c #627573", +"h; c #529A97", +"i; c #00817E", +"j; c #019494", +"k; c #7CBFC0", +"l; c #8CA3A4", +"m; c #0C0809", +"n; c #050002", +"o; c #07090A", +"p; c #3D3D3D", +"q; c #0A0A0B", +"r; c #4E4E4E", +"s; c #003E5A", +"t; c #0176A5", +"u; c #01719E", +"v; c #376070", +"w; c #A49D9A", +"x; c #C7C8C9", +"y; c #CFCFCF", +"z; c #3E3E3F", +"A; c #262627", +"B; c #151516", +"C; c #1F1F21", +"D; c #1D1D1F", +"E; c #39393B", +"F; c #353537", +"G; c #989897", +"H; c #7E7E7E", +"I; c #868685", +"J; c #08080A", +"K; c #0A0607", +"L; c #B14132", +"M; c #FF1D00", +"N; c #FB1F00", +"O; c #FF1E00", +"P; c #FD2001", +"Q; c #FF1600", +"R; c #EE462A", +"S; c #12A383", +"T; c #006A52", +"U; c #062C24", +"V; c #070204", +"W; c #070305", +"X; c #070A0B", +"Y; c #070205", +"Z; c #043932", +"`; c #01796B", +" > c #049689", +".> c #008A80", +"+> c #A9DAD8", +"@> c #627272", +"#> c #001F1D", +"$> c #1F7F7E", +"%> c #75C3C5", +"&> c #66BABD", +"*> c #408285", +"=> c #00181A", +"-> c #0A0001", +";> c #07080A", +">> c #0B0B0D", +",> c #120F0F", +"'> c #455258", +")> c #2991BA", +"!> c #2C9FCF", +"~> c #409CC2", +"{> c #BCC2C5", +"]> c #C5C4C3", +"^> c #BEBFBF", +"/> c #989899", +"(> c #333334", +"_> c #1F1F20", +":> c #010103", +"<> c #161618", +"[> c #797979", +"}> c #7D7D7D", +"|> c #040406", +"1> c #0B0707", +"2> c #B14232", +"3> c #FF2100", +"4> c #FB2200", +"5> c #FF2200", +"6> c #FD2401", +"7> c #EE4629", +"8> c #12A180", +"9> c #009B77", +"0> c #029274", +"a> c #03614F", +"b> c #06201C", +"c> c #080002", +"d> c #080607", +"e> c #080103", +"f> c #061412", +"g> c #06524A", +"h> c #007F74", +"i> c #52B6B0", +"j> c #5CB4B2", +"k> c #004543", +"l> c #384847", +"m> c #669B9C", +"n> c #56A1A4", +"o> c #48B5BC", +"p> c #007B85", +"q> c #06464B", +"r> c #070B0C", +"s> c #080102", +"t> c #080708", +"u> c #101011", +"v> c #2A2A2B", +"w> c #353536", +"x> c #B5B6B7", +"y> c #D9D2CF", +"z> c #78A8BC", +"A> c #289CCD", +"B> c #2696C6", +"C> c #649BB2", +"D> c #CDC6C3", +"E> c #C0C2C2", +"F> c #C7C7C7", +"G> c #5B5B5C", +"H> c #282828", +"I> c #373737", +"J> c #767676", +"K> c #7F7F7E", +"L> c #2D2D2E", +"M> c #07070A", +"N> c #0B0708", +"O> c #00090E", +"P> c #B14432", +"Q> c #FF2500", +"R> c #FB2600", +"S> c #FF2600", +"T> c #FD2701", +"U> c #EE4123", +"V> c #154F43", +"W> c #007257", +"X> c #029778", +"Y> c #019C80", +"Z> c #018A73", +"`> c #035448", +" , c #061514", +"., c #080003", +"+, c #080609", +"@, c #0B0306", +"#, c #001C1A", +"$, c #518E8A", +"%, c #5EBBB9", +"&, c #008584", +"*, c #3CA3A3", +"=, c #637B7C", +"-, c #596868", +";, c #49959A", +">, c #00838E", +",, c #0393A1", +"', c #026C78", +"), c #05272C", +"!, c #080507", +"~, c #07090C", +"{, c #0A0A0C", +"], c #212123", +"^, c #A6A6A7", +"/, c #CDCDCD", +"(, c #D3D3D3", +"_, c #C9C9C9", +":, c #4198BD", +"<, c #2DA0D2", +"[, c #2D91BB", +"}, c #A0B1B8", +"|, c #CAC6C5", +"1, c #C0C1C1", +"2, c #A0A0A1", +"3, c #0D0D0F", +"4, c #19191B", +"5, c #0B0808", +"6, c #000A0E", +"7, c #B14732", +"8, c #FF2900", +"9, c #FB2A00", +"0, c #FF2A00", +"a, c #FD2B01", +"b, c #EE4523", +"c, c #19171B", +"d, c #030908", +"e, c #054637", +"f, c #017D65", +"g, c #01987D", +"h, c #019B83", +"i, c #018270", +"j, c #04463F", +"k, c #070D0D", +"l, c #0B0C0D", +"m, c #565051", +"n, c #608B89", +"o, c #00605E", +"p, c #55B9B9", +"q, c #4CAAAD", +"r, c #55A4A7", +"s, c #4D5758", +"t, c #00282B", +"u, c #047783", +"v, c #0193A5", +"w, c #018698", +"x, c #03505C", +"y, c #071013", +"z, c #090101", +"A, c #080B0C", +"B, c #080B0D", +"C, c #121214", +"D, c #D5D5D5", +"E, c #C3C5C5", +"F, c #CFC9C7", +"G, c #93AFBB", +"H, c #2997C7", +"I, c #2C9BCE", +"J, c #4E94B2", +"K, c #C7C3C1", +"L, c #C1C2C3", +"M, c #CBCBCA", +"N, c #A9A9AA", +"O, c #8D8D8C", +"P, c #747474", +"Q, c #000A0F", +"R, c #B14832", +"S, c #FF2D00", +"T, c #FB2D00", +"U, c #FD2E01", +"V, c #FF2800", +"W, c #EE4823", +"X, c #192022", +"Y, c #050204", +"Z, c #0A0205", +"`, c #071513", +" ' c #044C3F", +".' c #01836D", +"+' c #019984", +"@' c #019887", +"#' c #02786C", +"$' c #053935", +"%' c #565859", +"&' c #625D5E", +"*' c #3B7070", +"=' c #63B9BB", +"-' c #56B7BB", +";' c #49A4AA", +">' c #004045", +",' c #091D1F", +"'' c #044B54", +")' c #018699", +"!' c #0192A9", +"~' c #027387", +"{' c #05323B", +"]' c #090506", +"^' c #090A0B", +"/' c #D4D4D4", +"(' c #C4C5C6", +"_' c #CCC6C3", +":' c #599CBA", +"<' c #2A9CD1", +"[' c #2991C1", +"}' c #8BA8B5", +"|' c #CDC7C5", +"1' c #BDBFC0", +"2' c #333333", +"3' c #08080B", +"4' c #00090F", +"5' c #B14A32", +"6' c #FF3100", +"7' c #FB3100", +"8' c #FD3201", +"9' c #FF2C00", +"0' c #EE4B23", +"a' c #191E21", +"b' c #090B0D", +"c' c #090508", +"d' c #090205", +"e' c #071C19", +"f' c #018675", +"g' c #019A8A", +"h' c #019488", +"i' c #057069", +"j' c #001B1A", +"k' c #545354", +"l' c #626163", +"m' c #373131", +"n' c #678788", +"o' c #558688", +"p' c #49B2B9", +"q' c #008B98", +"r' c #04727D", +"s' c #052B30", +"t' c #06252A", +"u' c #026475", +"v' c #018FA9", +"w' c #018CA7", +"x' c #035265", +"y' c #053E44", +"z' c #03A7A8", +"A' c #01B8BD", +"B' c #05646B", +"C' c #080A0C", +"D' c #0B0B0E", +"E' c #DADADA", +"F' c #CECECE", +"G' c #C4C5C5", +"H' c #CAC8C6", +"I' c #ADB8BD", +"J' c #3194C1", +"K' c #2C9BD1", +"L' c #3F90B5", +"M' c #BDBEBE", +"N' c #CECFCF", +"O' c #929293", +"P' c #4F4F50", +"Q' c #323233", +"R' c #010104", +"S' c #0C0909", +"T' c #B14C32", +"U' c #FF3500", +"V' c #FB3500", +"W' c #FD3601", +"X' c #FF3000", +"Y' c #EE4E23", +"Z' c #090B0C", +"`' c #07221F", +" ) c #035D53", +".) c #018A7D", +"+) c #049C92", +"@) c #00837C", +"#) c #539D9B", +"$) c #5B6262", +"%) c #110F10", +"&) c #403D3E", +"*) c #7B7A7A", +"=) c #777273", +"-) c #3C6D70", +";) c #006B75", +">) c #0392A1", +",) c #018C9C", +"') c #03545F", +")) c #071B1F", +"!) c #053842", +"~) c #027992", +"{) c #0096B6", +"]) c #02BED9", +"^) c #07DEED", +"/) c #04F6FE", +"() c #00F6FF", +"_) c #046876", +":) c #090C0D", +"<) c #D2D2D2", +"[) c #C2C4C4", +"}) c #74A2B7", +"|) c #2998CD", +"1) c #2B95C9", +"2) c #739FB3", +"3) c #ABA5A2", +"4) c #666768", +"5) c #0D090A", +"6) c #000A10", +"7) c #B14E32", +"8) c #FF3900", +"9) c #FB3900", +"0) c #FD3901", +"a) c #FF3400", +"b) c #EE5123", +"c) c #1A1F22", +"d) c #0B0A0C", +"e) c #0A0B0C", +"f) c #0A0B0D", +"g) c #0A0508", +"h) c #0A0507", +"i) c #072725", +"j) c #04655E", +"k) c #008A82", +"l) c #30AEAA", +"m) c #299392", +"n) c #3B8E8E", +"o) c #445152", +"p) c #585152", +"q) c #767475", +"r) c #080305", +"s) c #08171A", +"t) c #03525A", +"u) c #018292", +"v) c #0192A7", +"w) c #027C8F", +"x) c #053942", +"y) c #07161B", +"z) c #028093", +"A) c #03C9E5", +"B) c #09C2DA", +"C) c #09C4E1", +"D) c #04E0FF", +"E) c #07DCE9", +"F) c #0A191B", +"G) c #0A0608", +"H) c #D9D9D9", +"I) c #C4C4C5", +"J) c #3F93BA", +"K) c #1887BF", +"L) c #0D6894", +"M) c #081117", +"N) c #030406", +"O) c #747473", +"P) c #0E0E10", +"Q) c #B15032", +"R) c #FF3D00", +"S) c #FB3C00", +"T) c #FD3D01", +"U) c #FF3800", +"V) c #EE5423", +"W) c #1A1E22", +"X) c #050406", +"Y) c #090A0C", +"Z) c #0A0407", +"`) c #09080A", +" ! c #062F2D", +".! c #026662", +"+! c #008F8D", +"@! c #009192", +"#! c #01787C", +"$! c #023E41", +"%! c #030809", +"&! c #090304", +"*! c #090608", +"=! c #06282D", +"-! c #026573", +";! c #018AA1", +">! c #0192AB", +",! c #035567", +"'! c #028B91", +")! c #00E1EB", +"!! c #00DDEE", +"~! c #02E6F6", +"{! c #09ECFF", +"]! c #1CE9F5", +"^! c #0D2627", +"/! c #090305", +"(! c #2A2A2C", +"_! c #99999A", +":! c #D9D9D8", +"~ c #072B32", +",~ c #0B0304", +"'~ c #0A0D0F", +")~ c #DDDDDD", +"!~ c #D7D7D7", +"~~ c #D1D1D1", +"{~ c #2B2B2D", +"]~ c #0D0E10", +"^~ c #0B090A", +"/~ c #091319", +"(~ c #026091", +"_~ c #016DA8", +":~ c #03486D", +"<~ c #606060", +"[~ c #0F0F11", +"}~ c #0A0A0D", +"|~ c #0E0A0B", +"1~ c #B25633", +"2~ c #FF4900", +"3~ c #FB4700", +"4~ c #FF4800", +"5~ c #FD4801", +"6~ c #EE5D23", +"7~ c #0B090C", +"8~ c #091315", +"9~ c #05464B", +"0~ c #017C86", +"a~ c #0195A5", +"b~ c #018E9F", +"c~ c #03616E", +"d~ c #081C22", +"e~ c #083738", +"f~ c #058585", +"g~ c #057574", +"h~ c #02949D", +"i~ c #00C5DA", +"j~ c #04D1E8", +"k~ c #03CAE6", +"l~ c #03DCFB", +"m~ c #10F3FF", +"n~ c #07889A", +"o~ c #09080D", +"p~ c #0B0A0B", +"q~ c #1B1B1D", +"r~ c #8B8B8C", +"s~ c #C3C3C3", +"t~ c #0A0C0F", +"u~ c #0B0403", +"v~ c #063047", +"w~ c #01669D", +"x~ c #072739", +"y~ c #0B0504", +"z~ c #4E4E4F", +"A~ c #1C1C1E", +"B~ c #0E0B0C", +"C~ c #B25833", +"D~ c #FF4D00", +"E~ c #FB4B00", +"F~ c #FF4C00", +"G~ c #FD4C01", +"H~ c #EE6023", +"I~ c #1B2024", +"J~ c #070608", +"K~ c #0B0C0E", +"L~ c #0B0D0F", +"M~ c #0C090B", +"N~ c #0C0506", +"O~ c #091B1D", +"P~ c #054E55", +"Q~ c #028190", +"R~ c #0294A9", +"S~ c #019CB1", +"T~ c #03C6D3", +"U~ c #05F5F9", +"V~ c #01FEFF", +"W~ c #00FBFE", +"X~ c #00EBF4", +"Y~ c #02D6E9", +"Z~ c #0EE9F5", +"`~ c #13F0FE", +" { c #21F7FD", +".{ c #0B98B4", +"+{ c #03485F", +"@{ c #0C0808", +"#{ c #DBDBDB", +"${ c #8E8E8F", +"%{ c #222224", +"&{ c #04517C", +"*{ c #026DAB", +"={ c #03527F", +"-{ c #0B0D11", +";{ c #0C0C0F", +">{ c #0F0C0C", +",{ c #000B12", +"'{ c #B25A33", +"){ c #FF5100", +"!{ c #FB4F00", +"~{ c #FF4F00", +"{{ c #FD5001", +"]{ c #EE6323", +"^{ c #1C2024", +"/{ c #0D0C0E", +"({ c #0C080A", +"_{ c #092024", +":{ c #045763", +"<{ c #00B0C6", +"[{ c #06CEE3", +"}{ c #0ABFCF", +"|{ c #07D5EA", +"1{ c #03E8FF", +"2{ c #02EEFE", +"3{ c #00EFFE", +"4{ c #16FAFD", +"5{ c #28FFFF", +"6{ c #1AC3D0", +"7{ c #016E8F", +"8{ c #027E9F", +"9{ c #073341", +"0{ c #0C0404", +"a{ c #0B0D10", +"b{ c #0C0707", +"c{ c #091F2D", +"d{ c #0266A0", +"e{ c #0268A4", +"f{ c #06334C", +"g{ c #0C0604", +"h{ c #656565", +"i{ c #444444", +"j{ c #0F0C0D", +"k{ c #000A13", +"l{ c #B25C33", +"m{ c #FF5500", +"n{ c #FB5300", +"o{ c #FF5300", +"p{ c #FD5401", +"q{ c #EE6623", +"r{ c #0D0C0F", +"s{ c #0C0608", +"t{ c #0C0A0B", +"u{ c #01B5BB", +"v{ c #00CFDC", +"w{ c #02D7E9", +"x{ c #05E6F4", +"y{ c #08F4FF", +"z{ c #18E3EA", +"A{ c #067992", +"B{ c #0AA1B8", +"C{ c #0AADBE", +"D{ c #017192", +"E{ c #016B89", +"F{ c #03799A", +"G{ c #027291", +"H{ c #091D24", +"I{ c #0C0708", +"J{ c #0D0D10", +"K{ c #111113", +"L{ c #DADAD9", +"M{ c #131316", +"N{ c #0C0605", +"O{ c #054062", +"P{ c #026CAB", +"Q{ c #03598D", +"R{ c #0A151D", +"S{ c #0C090A", +"T{ c #040407", +"U{ c #6D6D6C", +"V{ c #171719", +"W{ c #050508", +"X{ c #000B14", +"Y{ c #B25E33", +"Z{ c #FF5A00", +"`{ c #FB5600", +" ] c #FF5700", +".] c #FD5801", +"+] c #FF5400", +"@] c #EE6923", +"#] c #1C2025", +"$] c #080709", +"%] c #0C1113", +"&] c #0D0000", +"*] c #069393", +"=] c #07E7F1", +"-] c #1AF7FA", +";] c #23FFFF", +">] c #20B5B6", +",] c #072735", +"'] c #027B9D", +")] c #037190", +"!] c #026B89", +"~] c #027EA0", +"{] c #03607A", +"]] c #0C0E10", +"^] c #0F0E10", +"/] c #060709", +"(] c #4B4B4D", +"_] c #E0E0E0", +":] c #DCDCDB", +"<] c #3A3A3C", +"[] c #0F0F12", +"}] c #0C0D0F", +"|] c #0D0A0C", +"1] c #0B1319", +"2] c #035C91", +"3] c #0269A9", +"4] c #053F62", +"5] c #0D0807", +"6] c #0C0D10", +"7] c #100D0D", +"8] c #B26033", +"9] c #FF5D00", +"0] c #FB5A00", +"a] c #FF5B00", +"b] c #FD5B01", +"c] c #EE6C23", +"d] c #1D2125", +"e] c #0E0D0F", +"f] c #0C1617", +"g] c #03AAB8", +"h] c #02F5FF", +"i] c #1AFCFE", +"j] c #1DE4EB", +"k] c #096D7F", +"l] c #0A0F12", +"m] c #0D1012", +"n] c #0D0808", +"o] c #06485C", +"p] c #027EA1", +"q] c #026E8C", +"r] c #0280A3", +"s] c #07485B", +"t] c #222426", +"u] c #DEDEDE", +"v] c #D7D7D6", +"w] c #0C0E11", +"x] c #0D0705", +"y] c #082E47", +"z] c #0269A8", +"A] c #025F98", +"B] c #09202E", +"C] c #0D0A0A", +"D] c #0C1114", +"E] c #0C0C10", +"F] c #100D0E", +"G] c #000A15", +"H] c #B26234", +"I] c #FF6100", +"J] c #FB5E01", +"K] c #FF5E00", +"L] c #FD5F01", +"M] c #EE6F23", +"N] c #0E0D10", +"O] c #0D080A", +"P] c #09414E", +"Q] c #0A444D", +"R] c #016F86", +"S] c #01829E", +"T] c #064B5A", +"U] c #0D0709", +"V] c #0C0E12", +"W] c #03627E", +"X] c #027A9D", +"Y] c #036884", +"Z] c #027392", +"`] c #007496", +" ^ c #446974", +".^ c #D4CDCB", +"+^ c #DBDDDE", +"@^ c #959596", +"#^ c #272729", +"$^ c #044D7C", +"%^ c #026BAD", +"&^ c #044671", +"*^ c #0D0405", +"=^ c #0E0000", +"-^ c #0C0D11", +";^ c #0E0E11", +">^ c #060609", +",^ c #111114", +"'^ c #100E0E", +")^ c #000B15", +"!^ c #B36434", +"~^ c #FF6600", +"{^ c #FB6201", +"]^ c #FF6200", +"^^ c #FD6301", +"/^ c #FF5F00", +"(^ c #EF7223", +"_^ c #0D0F11", +":^ c #0E0304", +"<^ c #09313B", +"[^ c #02829C", +"}^ c #027D96", +"|^ c #092F38", +"1^ c #0E0809", +"2^ c #0E0A0C", +"3^ c #0A2028", +"4^ c #047899", +"5^ c #017292", +"6^ c #0D708C", +"7^ c #29A1C2", +"8^ c #3FACC9", +"9^ c #B8C6CA", +"0^ c #D6D2D1", +"a^ c #CFD1D1", +"b^ c #0D0E11", +"c^ c #0E0909", +"d^ c #0A1F2E", +"e^ c #025F9D", +"f^ c #016DAC", +"g^ c #036B8C", +"h^ c #076A85", +"i^ c #0D0F14", +"j^ c #0E0A0A", +"k^ c #5E5E5E", +"l^ c #202022", +"m^ c #0D1011", +"n^ c #110E0F", +"o^ c #B36634", +"p^ c #FF6A00", +"q^ c #FB6501", +"r^ c #FD6601", +"s^ c #FF6300", +"t^ c #EF7523", +"u^ c #1E2126", +"v^ c #0F0E11", +"w^ c #0D1013", +"x^ c #0D1114", +"y^ c #0E0708", +"z^ c #064A59", +"A^ c #0287A3", +"B^ c #036E85", +"C^ c #0C191E", +"D^ c #0E0C0E", +"E^ c #100B0B", +"F^ c #002D3C", +"G^ c #128CAF", +"H^ c #369FBD", +"I^ c #3499B4", +"J^ c #2AA8CA", +"K^ c #4EA3BA", +"L^ c #D2D0D0", +"M^ c #18181A", +"N^ c #000003", +"O^ c #0E0504", +"P^ c #05577B", +"Q^ c #02A5E8", +"R^ c #02A1DA", +"S^ c #00CAFF", +"T^ c #0383BC", +"U^ c #09090C", +"V^ c #0E070C", +"W^ c #0E040A", +"X^ c #0E0C10", +"Y^ c #0E0D11", +"Z^ c #000B16", +"`^ c #B36834", +" / c #FF6E00", +"./ c #FB6901", +"+/ c #FD6A01", +"@/ c #FF6800", +"#/ c #EF7824", +"$/ c #1D2126", +"%/ c #046579", +"&/ c #0288A4", +"*/ c #045A6C", +"=/ c #0F0D10", +"-/ c #595455", +";/ c #5DABC1", +">/ c #2CA8CB", +",/ c #3496B1", +"'/ c #369FBC", +")/ c #28A7C9", +"!/ c #72ACBC", +"~/ c #DDD6D4", +"{/ c #DFDFDF", +"]/ c #000004", +"^/ c #0D0D11", +"// c #0E0C0F", +"(/ c #0D1415", +"_/ c #04BEC9", +":/ c #06A9D9", +"( c #D5D2D1", +",( c #D4D5D5", +"'( c #9C9C9D", +")( c #2C2C2F", +"!( c #0E1114", +"~( c #0F0404", +"{( c #06819D", +"]( c #00CBFF", +"^( c #08B6F3", +"/( c #1BDAFD", +"(( c #23EBFF", +"_( c #164B4F", +":( c #0D0306", +"<( c #0F1114", +"[( c #101013", +"}( c #434345", +"|( c #07070B", +"1( c #15FFE5", +"2( c #05FEC2", +"3( c #00FDA8", +"4( c #00FC9D", +"5( c #00FFA3", +"6( c #087D4D", +"7( c #0F0009", +"8( c #B36E34", +"9( c #FF7A00", +"0( c #FB7401", +"a( c #FF7500", +"b( c #FD7601", +"c( c #FF7300", +"d( c #EF8124", +"e( c #0E1013", +"f( c #0B0506", +"g( c #347E8E", +"h( c #30B7D2", +"i( c #3FA1B6", +"j( c #C6CBCC", +"k( c #D6D6D6", +"l( c #6FABBC", +"m( c #28A5C9", +"n( c #3C9DB8", +"o( c #409CB5", +"p( c #28A9CC", +"q( c #54A3B8", +"r( c #DEDAD9", +"s( c #565658", +"t( c #121215", +"u( c #0F0A0A", +"v( c #0D1F2A", +"w( c #0098E7", +"x( c #06B6FF", +"y( c #1CE4FF", +"z( c #149CB9", +"A( c #0C0A13", +"B( c #0E0F12", +"C( c #08080C", +"D( c #2F2F31", +"E( c #1BFAD6", +"F( c #13FCC5", +"G( c #0BFFAF", +"H( c #02FB91", +"I( c #01FF97", +"J( c #03E592", +"K( c #0F1918", +"L( c #100C10", +"M( c #0F1214", +"N( c #0F1013", +"O( c #121011", +"P( c #020B17", +"Q( c #B37035", +"R( c #FF7E00", +"S( c #FB7801", +"T( c #FF7900", +"U( c #FD7901", +"V( c #FF7700", +"W( c #EF8424", +"X( c #1F2228", +"Y( c #000104", +"Z( c #7B7A7B", +"`( c #D0D3D4", +" _ c #40A7BB", +"._ c #27ADC8", +"+_ c #60A8B7", +"@_ c #D8D3D2", +"#_ c #D5D5D6", +"$_ c #49A2BB", +"%_ c #2DA8CB", +"&_ c #479BB2", +"*_ c #40A5C0", +"=_ c #2DACCF", +"-_ c #548593", +";_ c #251E1E", +">_ c #000105", +",_ c #100B0C", +"'_ c #0E1922", +")_ c #0C344E", +"!_ c #055A8C", +"~_ c #005A9D", +"{_ c #09304B", +"]_ c #100B0A", +"^_ c #5C5C5D", +"/_ c #6F6F6E", +"(_ c #535353", +"__ c #0F1213", +":_ c #0F1413", +"<_ c #0F1112", +"[_ c #04C185", +"}_ c #06B87E", +"|_ c #09F1A4", +"1_ c #03FF9A", +"2_ c #0AFC9C", +"3_ c #11FFB6", +"4_ c #0D4E3B", +"5_ c #10030A", +"6_ c #100A10", +"7_ c #100C11", +"8_ c #0F1113", +"9_ c #131011", +"0_ c #020B18", +"a_ c #B37235", +"b_ c #FF8200", +"c_ c #FB7B01", +"d_ c #FF7D00", +"e_ c #FD7D01", +"f_ c #FF7B00", +"g_ c #EF8724", +"h_ c #111013", +"i_ c #0F0F13", +"j_ c #E1E3E3", +"k_ c #DDD8D7", +"l_ c #A7C0C4", +"m_ c #31AAC3", +"n_ c #29A8C2", +"o_ c #8AB4BD", +"p_ c #DDD7D6", +"q_ c #D9D6D6", +"r_ c #B4C3C8", +"s_ c #2F9EBE", +"t_ c #36A9C9", +"u_ c #428DA2", +"v_ c #1082A2", +"w_ c #006C8D", +"x_ c #091E27", +"y_ c #130E10", +"z_ c #0F1115", +"A_ c #100E11", +"B_ c #110300", +"C_ c #0A2A45", +"D_ c #0364A6", +"E_ c #044E81", +"F_ c #0F1216", +"G_ c #717170", +"H_ c #232325", +"I_ c #100710", +"J_ c #11000D", +"K_ c #100B12", +"L_ c #100F13", +"M_ c #00B675", +"N_ c #02C379", +"O_ c #04EB94", +"P_ c #06FFA1", +"Q_ c #0DFDA6", +"R_ c #22FFCC", +"S_ c #0BA770", +"T_ c #046E40", +"U_ c #0A442F", +"V_ c #0E1C19", +"W_ c #10080E", +"X_ c #B37435", +"Y_ c #FF8600", +"Z_ c #FB7F01", +"`_ c #FF8100", +" : c #FD8101", +".: c #FF7F00", +"+: c #EF8A24", +"@: c #858587", +"#: c #E1E1E1", +"$: c #D3D2D2", +"%: c #D1D3D4", +"&: c #E1D8D7", +"*: c #82B5BF", +"=: c #28AEC8", +"-: c #34A4BA", +";: c #B3C3C6", +">: c #D9D7D6", +",: c #DAD4D2", +"': c #92BCC7", +"): c #239FC3", +"!: c #066A87", +"~: c #034D63", +"{: c #0682A5", +"]: c #066580", +"^: c #0F1014", +"/: c #054F82", +"(: c #0260A2", +"_: c #0A2A42", +":: c #38383A", +"<: c #363638", +"[: c #09090D", +"}: c #101214", +"|: c #10050F", +"1: c #0D4123", +"2: c #088F35", +"3: c #0D2716", +"4: c #100A11", +"5: c #01D47E", +"6: c #07EC94", +"7: c #16FCB7", +"8: c #1CFCBA", +"9: c #1EFFC7", +"0: c #23F2CF", +"a: c #05A763", +"b: c #03A661", +"c: c #03A261", +"d: c #048E58", +"e: c #066B46", +"f: c #0B3E2D", +"g: c #0F1818", +"h: c #110A0F", +"i: c #11090F", +"j: c #110F13", +"k: c #101215", +"l: c #101114", +"m: c #131112", +"n: c #030C19", +"o: c #B47635", +"p: c #FF8A00", +"q: c #FB8301", +"r: c #FF8400", +"s: c #FD8501", +"t: c #FF8300", +"u: c #EF8D24", +"v: c #202329", +"w: c #E7E7E7", +"x: c #58ABBB", +"y: c #26AFCA", +"z: c #4EA5B7", +"A: c #CECDCD", +"B: c #E4E5E5", +"C: c #A8A3A2", +"D: c #064F65", +"E: c #0181A6", +"F: c #075972", +"G: c #055A72", +"H: c #0285A9", +"I: c #074D61", +"J: c #110B0D", +"K: c #101216", +"L: c #110B0A", +"M: c #0B2B44", +"N: c #0263A5", +"O: c #054B7C", +"P: c #28282A", +"Q: c #49494B", +"R: c #100911", +"S: c #0E2E1B", +"T: c #07EB5C", +"U: c #09FF5E", +"V: c #08A231", +"W: c #120311", +"X: c #101414", +"Y: c #00F588", +"Z: c #09FFA4", +"`: c #1DFEC2", +" < c #26FFD6", +".< c #2BFFEA", +"+< c #178D74", +"@< c #026D3B", +"#< c #039356", +"$< c #039E5E", +"%< c #03A363", +"&< c #03A567", +"*< c #039F65", +"=< c #048859", +"-< c #076244", +";< c #0B382C", +">< c #101416", +",< c #B47835", +"'< c #FF8E00", +")< c #FB8701", +"!< c #FF8800", +"~< c #FD8801", +"{< c #FF8700", +"]< c #EF9024", +"^< c #121114", +"/< c #E5E5E4", +"(< c #D3D4D4", +"_< c #DAD7D7", +":< c #C2C9CB", +"<< c #3EA9BF", +"[< c #23A8C3", +"}< c #7CB7C2", +"|< c #AFA8A7", +"1< c #141417", +"2< c #0B1014", +"3< c #066885", +"4< c #037DA0", +"5< c #074C60", +"6< c #056884", +"7< c #0281A4", +"8< c #0B3441", +"9< c #120A0B", +"0< c #101113", +"a< c #054F83", +"b< c #0260A1", +"c< c #0B2940", +"d< c #110C0C", +"e< c #17171A", +"f< c #525453", +"g< c #0F030F", +"h< c #0D4721", +"i< c #00FF4C", +"j< c #03F53F", +"k< c #09BC36", +"l< c #110E13", +"m< c #101314", +"n< c #05B166", +"o< c #03EE84", +"p< c #13F6A9", +"q< c #19DEB6", +"r< c #135F56", +"s< c #100107", +"t< c #101517", +"u< c #0C2D22", +"v< c #085134", +"w< c #047548", +"x< c #038F58", +"y< c #039C62", +"z< c #03A368", +"A< c #03A46B", +"B< c #039C69", +"C< c #04825A", +"D< c #085A43", +"E< c #0C3129", +"F< c #101115", +"G< c #12080E", +"H< c #140C0F", +"I< c #030C1A", +"J< c #B47B36", +"K< c #FF9200", +"L< c #FB8A01", +"M< c #FF8C00", +"N< c #FD8C01", +"O< c #FF8B00", +"P< c #EF9324", +"Q< c #20232A", +"R< c #101014", +"S< c #131317", +"T< c #D1D1D2", +"U< c #D2D3D4", +"V< c #DFD9D7", +"W< c #9FBCC2", +"X< c #33B1CA", +"Y< c #249EB7", +"Z< c #0E2C34", +"`< c #0D080B", +" [ c #130F11", +".[ c #0C2630", +"+[ c #03799B", +"@[ c #047090", +"#[ c #074558", +"$[ c #037899", +"%[ c #037292", +"&[ c #0E1E25", +"*[ c #110D0F", +"=[ c #120C0B", +"-[ c #0A2F4A", +";[ c #0263A7", +">[ c #064775", +",[ c #110F11", +"'[ c #111115", +")[ c #121216", +"![ c #0E0E12", +"~[ c #424244", +"{[ c #787978", +"][ c #484C4A", +"^[ c #0A000B", +"/[ c #099426", +"([ c #09B132", +"_[ c #069527", +":[ c #049023", +"<[ c #110B13", +"[[ c #111014", +"}[ c #12070F", +"|[ c #101F1A", +"1[ c #0F2C20", +"2[ c #11060B", +"3[ c #121416", +"4[ c #120C12", +"5[ c #120B11", +"6[ c #101516", +"7[ c #0D2D23", +"8[ c #085136", +"9[ c #04744B", +"0[ c #038D5C", +"a[ c #039B66", +"b[ c #03A26D", +"c[ c #03A370", +"d[ c #03996C", +"e[ c #057C5B", +"f[ c #095341", +"g[ c #112D25", +"h[ c #040A19", +"i[ c #B47933", +"j[ c #FF9700", +"k[ c #FB8E01", +"l[ c #FF9000", +"m[ c #FD9001", +"n[ c #FF8F00", +"o[ c #EF9724", +"p[ c #21242A", +"q[ c #131215", +"r[ c #151518", +"s[ c #1B1B1E", +"t[ c #A4A4A5", +"u[ c #E2E2E2", +"v[ c #CFD2D2", +"w[ c #E9E0DE", +"x[ c #56909C", +"y[ c #00809C", +"z[ c #066C82", +"A[ c #11191E", +"B[ c #120B0D", +"C[ c #093F50", +"D[ c #0282A8", +"E[ c #065E78", +"F[ c #08495C", +"G[ c #0284A7", +"H[ c #055F78", +"I[ c #111215", +"J[ c #121115", +"K[ c #121113", +"L[ c #111318", +"M[ c #055288", +"N[ c #025F9F", +"O[ c #0D2538", +"P[ c #120E0D", +"Q[ c #111216", +"R[ c #0A0A0E", +"S[ c #313133", +"T[ c #716D6F", +"U[ c #7C7178", +"V[ c #443F44", +"W[ c #0F6214", +"X[ c #133618", +"Y[ c #100A13", +"Z[ c #058F24", +"`[ c #049F26", +" } c #0F2015", +".} c #130814", +"+} c #111515", +"@} c #111416", +"#} c #120E13", +"$} c #120B12", +"%} c #121417", +"&} c #111315", +"*} c #0D2D24", +"=} c #085038", +"-} c #04724E", +";} c #038C5F", +">} c #039A6B", +",} c #03A173", +"'} c #03A175", +")} c #06966D", +"!} c #007262", +"~} c #B19345", +"{} c #FF9600", +"]} c #FB9301", +"^} c #FF9300", +"/} c #FD9301", +"(} c #EF9924", +"_} c #E5E5E5", +":} c #8D8D8F", +"<} c #100D10", +"[} c #065F72", +"}} c #038DA9", +"|} c #075364", +"1} c #120D0F", +"2} c #111316", +"3} c #065972", +"4} c #0282A7", +"5} c #084B5F", +"6} c #06576E", +"7} c #0286AB", +"8} c #094658", +"9} c #120B0C", +"0} c #111317", +"a} c #130C0B", +"b} c #0B304C", +"c} c #0264A8", +"d} c #064572", +"e} c #120F11", +"f} c #1E1E21", +"g} c #757574", +"h} c #726F71", +"i} c #6C7770", +"j} c #2AD164", +"k} c #1FE657", +"l} c #189123", +"m} c #0E2112", +"n} c #130C16", +"o} c #067E21", +"p} c #03AA28", +"q} c #0E2E17", +"r} c #130713", +"s} c #111415", +"t} c #121316", +"u} c #130D13", +"v} c #111517", +"w} c #0D2C25", +"x} c #084F3A", +"y} c #057151", +"z} c #038B64", +"A} c #06996E", +"B} c #00A384", +"C} c #AFAD56", +"D} c #FF9500", +"E} c #FB9702", +"F} c #FD9701", +"G} c #EF9C24", +"H} c #21252C", +"I} c #0D0F12", +"J} c #151519", +"K} c #0B0B0F", +"L} c #1B1B1F", +"M} c #090B0F", +"N} c #111C21", +"O} c #04758D", +"P} c #0285A1", +"Q} c #0B3944", +"R} c #130C0E", +"S} c #0F1B21", +"T} c #046F90", +"U} c #03789B", +"V} c #093D4E", +"W} c #056B88", +"X} c #0C2E3A", +"Y} c #11161D", +"Z} c #04558E", +"`} c #025D9D", +" | c #0D2335", +".| c #130E0F", +"+| c #4C4C4E", +"@| c #6F7270", +"#| c #786973", +"$| c #4F9C66", +"%| c #00FF4D", +"&| c #00F63F", +"*| c #22C746", +"=| c #2E242D", +"-| c #0A0F0F", +";| c #141317", +">| c #120714", +",| c #086C1F", +"'| c #02B529", +")| c #0C3D1A", +"!| c #130614", +"~| c #131315", +"{| c #130C12", +"]| c #0D2D26", +"^| c #0C4E3A", +"/| c #00715F", +"(| c #AFA64E", +"_| c #FF9B00", +":| c #FB9B02", +"<| c #FD9B01", +"[| c #EFA024", +"}| c #231F26", +"|| c #10070A", +"1| c #141215", +"2| c #1D1D20", +"3| c #D2D2D3", +"4| c #E3E3E3", +"5| c #6F6F71", +"6| c #131619", +"7| c #0D3039", +"8| c #0385A0", +"9| c #037790", +"0| c #0F2228", +"a| c #131013", +"b| c #0C303D", +"c| c #027FA3", +"d| c #056785", +"e| c #0A3948", +"f| c #037C9E", +"g| c #046F8D", +"h| c #101B20", +"i| c #131012", +"j| c #121317", +"k| c #121418", +"l| c #140D0C", +"m| c #0B3554", +"n| c #0264A9", +"o| c #084169", +"p| c #130F0F", +"q| c #707371", +"r| c #766C74", +"s| c #5C8E69", +"t| c #00FC3D", +"u| c #03E735", +"v| c #22B739", +"w| c #69706A", +"x| c #251E26", +"y| c #0C1010", +"z| c #141517", +"A| c #0A591D", +"B| c #01B82A", +"C| c #0B521C", +"D| c #140614", +"E| c #121315", +"F| c #130E13", +"G| c #160D10", +"H| c #03111F", +"I| c #B38939", +"J| c #FFA500", +"K| c #FB9D01", +"L| c #FF9E00", +"M| c #FD9F01", +"N| c #FF9C00", +"O| c #EEAA2A", +"P| c #186E68", +"Q| c #083532", +"R| c #121A1C", +"S| c #130B0F", +"T| c #130C10", +"U| c #16161A", +"V| c #333335", +"W| c #030307", +"X| c #130B0D", +"Y| c #094B5A", +"Z| c #028CA9", +"`| c #066175", +" 1 c #130D0F", +".1 c #084A5F", +"+1 c #0284AA", +"@1 c #085167", +"#1 c #094456", +"$1 c #0286AA", +"%1 c #07586F", +"&1 c #131114", +"*1 c #11171E", +"=1 c #045690", +"-1 c #035C9A", +";1 c #0F202F", +">1 c #130F10", +",1 c #2F2F32", +"'1 c #747274", +")1 c #70756F", +"!1 c #26A638", +"~1 c #349F2D", +"{1 c #28AE32", +"]1 c #23BB44", +"^1 c #5E6960", +"/1 c #1D161F", +"(1 c #0E1112", +"_1 c #141518", +":1 c #0B4B1B", +"<1 c #02B72A", +"[1 c #09651F", +"}1 c #131216", +"|1 c #151616", +"11 c #050B1B", +"21 c #B48435", +"31 c #FFA900", +"41 c #FBA001", +"51 c #FFA100", +"61 c #FDA202", +"71 c #FF9F00", +"81 c #EEAE2B", +"91 c #13A697", +"01 c #009584", +"a1 c #058276", +"b1 c #085B56", +"c1 c #0D3132", +"d1 c #111619", +"e1 c #140B10", +"f1 c #140D12", +"g1 c #333336", +"h1 c #6E6E70", +"i1 c #040408", +"j1 c #066579", +"k1 c #028BA7", +"l1 c #094958", +"m1 c #130D10", +"n1 c #05637F", +"o1 c #0280A5", +"p1 c #0B3C4C", +"q1 c #075870", +"r1 c #0A4051", +"s1 c #140C0E", +"t1 c #121419", +"u1 c #140D0D", +"v1 c #0265AA", +"w1 c #083F67", +"x1 c #131318", +"y1 c #363639", +"z1 c #787877", +"A1 c #727372", +"B1 c #777176", +"C1 c #637F65", +"D1 c #2E922C", +"E1 c #47922C", +"F1 c #6B7C66", +"G1 c #2DA748", +"H1 c #1DC23E", +"I1 c #4A5F4F", +"J1 c #19101B", +"K1 c #131618", +"L1 c #140715", +"M1 c #0D391A", +"N1 c #02B429", +"O1 c #077722", +"P1 c #120E15", +"Q1 c #131017", +"R1 c #121517", +"S1 c #131217", +"T1 c #171515", +"U1 c #060D1C", +"V1 c #B48836", +"W1 c #FFAD00", +"X1 c #FBA401", +"Y1 c #FDA501", +"Z1 c #FFA400", +"`1 c #EEAB27", +" 2 c #17766D", +".2 c #049787", +"+2 c #039D8F", +"@2 c #04948A", +"#2 c #067B76", +"$2 c #095755", +"%2 c #0F2D2E", +"&2 c #140F12", +"*2 c #131518", +"=2 c #131417", +"-2 c #666668", +";2 c #141316", +">2 c #141012", +",2 c #112025", +"'2 c #057A93", +")2 c #03829C", +"!2 c #0E2F38", +"~2 c #140F11", +"{2 c #141113", +"]2 c #10242C", +"^2 c #047799", +"/2 c #057293", +"(2 c #0D2F3B", +"_2 c #056E8C", +":2 c #0F2932", +"<2 c #150E10", +"[2 c #141315", +"}2 c #13171C", +"|2 c #06568E", +"12 c #045A98", +"22 c #111D29", +"32 c #141112", +"42 c #131418", +"52 c #7B7B7A", +"62 c #707270", +"72 c #797279", +"82 c #558656", +"92 c #339826", +"02 c #529336", +"a2 c #787977", +"b2 c #776F75", +"c2 c #2DA444", +"d2 c #1EC840", +"e2 c #415C47", +"f2 c #150A16", +"g2 c #131617", +"h2 c #141617", +"i2 c #0F2D18", +"j2 c #04AA28", +"k2 c #068C24", +"l2 c #121616", +"m2 c #140E16", +"n2 c #161516", +"o2 c #060C1D", +"p2 c #B48A36", +"q2 c #FFB100", +"r2 c #FBA701", +"s2 c #FDA901", +"t2 c #EFAA23", +"u2 c #22252D", +"v2 c #0B2322", +"w2 c #0B4843", +"x2 c #066960", +"y2 c #04857B", +"z2 c #03968D", +"A2 c #039B95", +"B2 c #04908D", +"C2 c #067575", +"D2 c #0A5052", +"E2 c #0F292D", +"F2 c #140B0F", +"G2 c #171216", +"H2 c #090A0E", +"I2 c #313337", +"J2 c #CCCDCE", +"K2 c #505053", +"L2 c #020206", +"M2 c #17171B", +"N2 c #141418", +"O2 c #13151A", +"P2 c #150C0F", +"Q2 c #0D3641", +"R2 c #0389A5", +"S2 c #057087", +"T2 c #121B20", +"U2 c #140E10", +"V2 c #0C3B4C", +"W2 c #0382A9", +"X2 c #085B76", +"Y2 c #0D323F", +"Z2 c #0380A2", +"`2 c #066985", +" 3 c #12181D", +".3 c #150E0E", +"+3 c #0C3453", +"@3 c #0264AA", +"#3 c #0A3A5F", +"$3 c #140F0F", +"%3 c #131419", +"&3 c #515153", +"*3 c #7A7B7A", +"=3 c #767276", +"-3 c #4A8E44", +";3 c #3F9822", +">3 c #618C45", +",3 c #78767B", +"'3 c #7A7078", +")3 c #3AA24E", +"!3 c #1ECC41", +"~3 c #2D5237", +"{3 c #110613", +"]3 c #141718", +"^3 c #150B17", +"/3 c #112218", +"(3 c #049F27", +"_3 c #059C26", +":3 c #112018", +"<3 c #140C17", +"[3 c #171516", +"}3 c #B58C36", +"|3 c #FFB500", +"13 c #FBAB01", +"23 c #FDAD01", +"33 c #EFAE24", +"43 c #24252D", +"53 c #110B0F", +"63 c #160E13", +"73 c #102728", +"83 c #0B4744", +"93 c #066964", +"03 c #048580", +"a3 c #039693", +"b3 c #03999A", +"c3 c #048C90", +"d3 c #076D72", +"e3 c #0D494F", +"f3 c #0A1F24", +"g3 c #2D292C", +"h3 c #D8D0CF", +"i3 c #E6E2E1", +"j3 c #D5D7D7", +"k3 c #D6D7D7", +"l3 c #D8D7D7", +"m3 c #D6D8D8", +"n3 c #D4D8D8", +"o3 c #D3D5D5", +"p3 c #505052", +"q3 c #050509", +"r3 c #18181C", +"s3 c #141519", +"t3 c #150D10", +"u3 c #095262", +"v3 c #038DAA", +"w3 c #08586A", +"x3 c #141013", +"y3 c #08546C", +"z3 c #0284AB", +"A3 c #0B4254", +"B3 c #0288AD", +"C3 c #095167", +"D3 c #13171E", +"E3 c #055691", +"F3 c #045894", +"G3 c #111C27", +"H3 c #141214", +"I3 c #605E61", +"J3 c #797F78", +"K3 c #439234", +"L3 c #4E9822", +"M3 c #6C8658", +"N3 c #7A757D", +"O3 c #777976", +"P3 c #7F727C", +"Q3 c #3D9F51", +"R3 c #15CB3A", +"S3 c #1A4926", +"T3 c #130715", +"U3 c #131718", +"V3 c #150E17", +"W3 c #131717", +"X3 c #069025", +"Y3 c #03AB28", +"Z3 c #0F2E19", +"`3 c #150916", +" 4 c #181617", +".4 c #070D1E", +"+4 c #B58E36", +"@4 c #FFB900", +"#4 c #FBAF01", +"$4 c #FDB001", +"%4 c #EFB124", +"&4 c #24262E", +"*4 c #15171A", +"=4 c #151115", +"-4 c #160E12", +";4 c #102729", +">4 c #0B4647", +",4 c #066869", +"'4 c #048486", +")4 c #03959A", +"!4 c #0599A1", +"~4 c #028690", +"{4 c #3EA0A8", +"]4 c #8CC1C6", +"^4 c #B8C7C9", +"/4 c #E3DBDA", +"(4 c #DEDBDA", +"_4 c #D5D8D8", +":4 c #DFD5D5", +"<4 c #E8D4D4", +"[4 c #E6D3D3", +"}4 c #DADDDD", +"|4 c #19191C", +"14 c #151417", +"24 c #066B81", +"34 c #0C3E4A", +"44 c #160F11", +"54 c #151418", +"64 c #131A20", +"74 c #056C8B", +"84 c #037CA0", +"94 c #0F2E3A", +"04 c #085A72", +"a4 c #0D3947", +"b4 c #160E10", +"c4 c #14161A", +"d4 c #16100F", +"e4 c #0B3B5F", +"f4 c #0265AB", +"g4 c #0B395B", +"h4 c #161010", +"i4 c #1B171F", +"j4 c #60715C", +"k4 c #48982D", +"l4 c #5A9527", +"m4 c #748069", +"n4 c #79777B", +"o4 c #797978", +"p4 c #797A79", +"q4 c #7F737D", +"r4 c #409B52", +"s4 c #17CF3C", +"t4 c #174C24", +"u4 c #140615", +"v4 c #151719", +"w4 c #151118", +"x4 c #087F23", +"y4 c #03B42A", +"z4 c #0E3F1B", +"A4 c #160917", +"B4 c #141618", +"C4 c #141419", +"D4 c #171617", +"E4 c #070C1E", +"F4 c #B59037", +"G4 c #FFBD00", +"H4 c #FBB201", +"I4 c #FFB400", +"J4 c #FDB401", +"K4 c #EFB424", +"L4 c #151419", +"M4 c #10272A", +"N4 c #0C484B", +"O4 c #026066", +"P4 c #14929B", +"Q4 c #2ABCC7", +"R4 c #24B5C4", +"S4 c #35B4C3", +"T4 c #58B2BE", +"U4 c #89B9BF", +"V4 c #BBC8CA", +"W4 c #E3D7D5", +"X4 c #B2E5E3", +"Y4 c #5BF0F0", +"Z4 c #67EFEF", +"`4 c #A9CFD1", +" 5 c #43373A", +".5 c #07090D", +"+5 c #151013", +"@5 c #11242C", +"#5 c #047F99", +"$5 c #047C95", +"%5 c #11252D", +"&5 c #151215", +"*5 c #0F2D39", +"=5 c #037DA2", +"-5 c #066886", +";5 c #10262F", +">5 c #057291", +",5 c #047898", +"'5 c #11242D", +")5 c #151315", +"!5 c #121C27", +"~5 c #055A98", +"{5 c #05558F", +"]5 c #131922", +"^5 c #151316", +"/5 c #161719", +"(5 c #100B17", +"_5 c #26471C", +":5 c #519D27", +"<5 c #669132", +"[5 c #787A76", +"}5 c #797879", +"|5 c #7B7D7C", +"15 c #80747E", +"25 c #419652", +"35 c #15CE3A", +"45 c #125421", +"55 c #140816", +"65 c #141719", +"75 c #151319", +"85 c #150C17", +"95 c #097021", +"05 c #02BB2B", +"a5 c #0C4F1D", +"b5 c #151018", +"c5 c #181717", +"d5 c #B59237", +"e5 c #FFC100", +"f5 c #FBB601", +"g5 c #FFB800", +"h5 c #FDB801", +"i5 c #EFB724", +"j5 c #151619", +"k5 c #15161A", +"l5 c #181317", +"m5 c #0D0509", +"n5 c #3B3B3E", +"o5 c #ACC3C4", +"p5 c #75B0B4", +"q5 c #48A9B2", +"r5 c #2EADBC", +"s5 c #23B4C7", +"t5 c #24B5CA", +"u5 c #39B0C4", +"v5 c #51B5C4", +"w5 c #0CD5DC", +"x5 c #00EDF2", +"y5 c #00EEFC", +"z5 c #075E68", +"A5 c #180C0F", +"B5 c #15171B", +"C5 c #14171B", +"D5 c #0D3D49", +"E5 c #038CA8", +"F5 c #06677D", +"G5 c #14161B", +"H5 c #0B4659", +"I5 c #0285AC", +"J5 c #0A4E63", +"K5 c #0383A7", +"L5 c #06637E", +"M5 c #14191D", +"N5 c #15161B", +"O5 c #0B3C60", +"P5 c #151618", +"Q5 c #14111A", +"R5 c #2A5A15", +"S5 c #4B8C11", +"T5 c #738F45", +"U5 c #7A797E", +"V5 c #7B7C7B", +"W5 c #7D7E7D", +"X5 c #81757E", +"Y5 c #4D945C", +"Z5 c #15D03B", +"`5 c #0F5D21", +" 6 c #150816", +".6 c #0B5C1F", +"+6 c #02BF2B", +"@6 c #0B5E1D", +"#6 c #122119", +"$6 c #12291C", +"%6 c #160A17", +"&6 c #191718", +"*6 c #080D1F", +"=6 c #B59437", +"-6 c #FFC600", +";6 c #FBBA01", +">6 c #FFBC00", +",6 c #FDBC01", +"'6 c #EFBA24", +")6 c #25272F", +"!6 c #131519", +"~6 c #B7B7B8", +"{6 c #EBE6E5", +"]6 c #E1DAD9", +"^6 c #D2D3D3", +"/6 c #AAC1C4", +"(6 c #76B1B8", +"_6 c #48AAB8", +":6 c #2FACC1", +"<6 c #08B6D1", +"[6 c #03C0D7", +"}6 c #0FBCCC", +"|6 c #0AC8E0", +"16 c #03EDFF", +"26 c #07E4E6", +"36 c #152226", +"46 c #161216", +"56 c #16171A", +"66 c #161013", +"76 c #09586A", +"86 c #028EAA", +"96 c #0A4E5D", +"06 c #16171B", +"a6 c #075F7A", +"b6 c #0F3442", +"c6 c #0C4355", +"d6 c #0289AE", +"e6 c #0A4B5E", +"f6 c #17080A", +"g6 c #17060A", +"h6 c #161418", +"i6 c #161519", +"j6 c #161416", +"k6 c #131D27", +"l6 c #055B99", +"m6 c #05548C", +"n6 c #141921", +"o6 c #161518", +"p6 c #171A19", +"q6 c #397215", +"r6 c #4E8209", +"s6 c #566637", +"t6 c #7A7880", +"u6 c #7A7B79", +"v6 c #7C7D7D", +"w6 c #7D807E", +"x6 c #867883", +"y6 c #539360", +"z6 c #13CD38", +"A6 c #0D6220", +"B6 c #160A18", +"C6 c #160B18", +"D6 c #0C4E1C", +"E6 c #03B730", +"F6 c #07EA59", +"G6 c #05FA53", +"H6 c #0D6625", +"I6 c #160B17", +"J6 c #15181A", +"K6 c #181718", +"L6 c #B59637", +"M6 c #FFC900", +"N6 c #FBBD01", +"O6 c #FFC000", +"P6 c #FDBF01", +"Q6 c #EFBD24", +"R6 c #25262F", +"S6 c #19191D", +"T6 c #828284", +"U6 c #E6E7E6", +"V6 c #E2DDDD", +"W6 c #E3DCDB", +"X6 c #AEC1C5", +"Y6 c #25BBC7", +"Z6 c #00C5D7", +"`6 c #04D5EA", +" 7 c #04DAEE", +".7 c #05EAFF", +"+7 c #18EAF5", +"@7 c #173032", +"#7 c #150F13", +"$7 c #14181D", +"%7 c #067188", +"&7 c #0386A1", +"*7 c #0F333E", +"=7 c #161114", +"-7 c #161417", +";7 c #12222A", +">7 c #047496", +",7 c #057395", +"'7 c #12232A", +")7 c #085B74", +"!7 c #0284A8", +"~7 c #068693", +"{7 c #0A888D", +"]7 c #15191E", +"^7 c #161115", +"/7 c #15171C", +"(7 c #171010", +"_7 c #0B3C61", +":7 c #0D314E", +"<7 c #171111", +"[7 c #160F19", +"}7 c #14121A", +"|7 c #1D2718", +"17 c #457E11", +"27 c #5B810F", +"37 c #1C2310", +"47 c #47464D", +"57 c #838482", +"67 c #7E817E", +"77 c #867984", +"87 c #558F60", +"97 c #10C835", +"07 c #096E1F", +"a7 c #160E19", +"b7 c #16151A", +"c7 c #170716", +"d7 c #04C547", +"e7 c #08FF63", +"f7 c #0DFF59", +"g7 c #08E146", +"h7 c #161A1B", +"i7 c #191819", +"j7 c #080D20", +"k7 c #B59837", +"l7 c #FFCD00", +"m7 c #FBC101", +"n7 c #FFC400", +"o7 c #FDC301", +"p7 c #FFC500", +"q7 c #EFC024", +"r7 c #48484B", +"s7 c #D7DBDB", +"t7 c #F0DAD9", +"u7 c #81F2F1", +"v7 c #00F8FF", +"w7 c #08E5F3", +"x7 c #17F5F9", +"y7 c #1EFFFF", +"z7 c #22CFD0", +"A7 c #16171C", +"B7 c #171114", +"C7 c #112C34", +"D7 c #04849F", +"E7 c #05758D", +"F7 c #131F25", +"G7 c #171013", +"H7 c #0E3745", +"I7 c #095872", +"J7 c #113037", +"K7 c #03AFCC", +"L7 c #05C8E4", +"M7 c #06A6B9", +"N7 c #151317", +"O7 c #16161B", +"P7 c #131D28", +"Q7 c #045C9B", +"R7 c #065086", +"S7 c #16141A", +"T7 c #161319", +"U7 c #12331D", +"V7 c #171319", +"W7 c #130D1A", +"X7 c #283E17", +"Y7 c #54890E", +"Z7 c #58720E", +"`7 c #1A1B1B", +" 8 c #0F0F14", +".8 c #858584", +"+8 c #7F8280", +"@8 c #887B85", +"#8 c #558A60", +"$8 c #0CC532", +"%8 c #07751F", +"&8 c #170F1A", +"*8 c #151A1B", +"=8 c #170D18", +"-8 c #07B53C", +";8 c #00FF45", +">8 c #05EF3F", +",8 c #18AC47", +"'8 c #17131A", +")8 c #1A1919", +"!8 c #090D20", +"~8 c #B59A37", +"{8 c #FFD200", +"]8 c #FBC501", +"^8 c #FFC700", +"/8 c #FDC701", +"(8 c #EFC324", +"_8 c #262730", +":8 c #18181B", +"<8 c #212125", +"[8 c #C5C5C6", +"}8 c #E5E6E6", +"|8 c #807B7C", +"18 c #0093A0", +"28 c #02F6FF", +"38 c #18FCFD", +"48 c #21F7FB", +"58 c #117E8E", +"68 c #150F14", +"78 c #17181C", +"88 c #17161A", +"98 c #16181D", +"08 c #180F12", +"a8 c #0D4452", +"b8 c #028DAA", +"c8 c #085D70", +"d8 c #171417", +"e8 c #17181D", +"f8 c #171214", +"g8 c #0A536A", +"h8 c #03779E", +"i8 c #078091", +"j8 c #02E0E4", +"k8 c #07C4D8", +"l8 c #04D4F3", +"m8 c #09F6FF", +"n8 c #175254", +"o8 c #160A0F", +"p8 c #17191D", +"q8 c #181212", +"r8 c #0C3C61", +"s8 c #0263A9", +"t8 c #0E3049", +"u8 c #181415", +"v8 c #16191F", +"w8 c #16181B", +"x8 c #170E18", +"y8 c #0D9738", +"z8 c #08FF4D", +"A8 c #0BA22A", +"B8 c #140B1B", +"C8 c #385914", +"D8 c #618C0C", +"E8 c #516010", +"F8 c #14131C", +"G8 c #808381", +"H8 c #887D86", +"I8 c #5E8967", +"J8 c #0EC133", +"K8 c #067C20", +"L8 c #17141A", +"M8 c #17161B", +"N8 c #15271D", +"O8 c #0B882A", +"P8 c #04D033", +"Q8 c #0E5922", +"R8 c #180A19", +"S8 c #16191B", +"T8 c #191919", +"U8 c #B59C37", +"V8 c #FFD500", +"W8 c #FBC901", +"X8 c #FFCB00", +"Y8 c #FDCA01", +"Z8 c #EFC624", +"`8 c #949495", +" 9 c #E7E7E6", +".9 c #B7B8B9", +"+9 c #151216", +"@9 c #151014", +"#9 c #104E5E", +"$9 c #11606D", +"%9 c #057C94", +"&9 c #017D9D", +"*9 c #0E414F", +"=9 c #171215", +"-9 c #095F72", +";9 c #0C4351", +">9 c #181013", +",9 c #151A1F", +"'9 c #066786", +")9 c #0382A5", +"!9 c #00DBEB", +"~9 c #05F1FE", +"{9 c #15F9FF", +"]9 c #1EECF3", +"^9 c #193337", +"/9 c #161015", +"(9 c #171416", +"_9 c #13202D", +":9 c #045E9F", +"<9 c #064C80", +"[9 c #170F11", +"}9 c #180F10", +"|9 c #17111A", +"19 c #142E1D", +"29 c #01F443", +"39 c #06FF3E", +"49 c #07D130", +"59 c #191A1C", +"69 c #496C10", +"79 c #6B8B0A", +"89 c #404813", +"99 c #100F1C", +"09 c #1D1D21", +"a9 c #818482", +"b9 c #8C8089", +"c9 c #67896E", +"d9 c #0AB92E", +"e9 c #048A20", +"f9 c #171119", +"g9 c #180919", +"h9 c #190017", +"i9 c #0B6B22", +"j9 c #05A028", +"k9 c #1A191A", +"l9 c #090D21", +"m9 c #B69E37", +"n9 c #FFD900", +"o9 c #FBCC01", +"p9 c #FFCF00", +"q9 c #FDCE01", +"r9 c #FFD100", +"s9 c #EFC924", +"t9 c #262731", +"u9 c #1A1A1F", +"v9 c #0A0A0F", +"w9 c #58585B", +"x9 c #37373B", +"y9 c #0E0F14", +"z9 c #191A1E", +"A9 c #180D10", +"B9 c #190406", +"C9 c #0F3E4C", +"D9 c #0488A6", +"E9 c #05738E", +"F9 c #14232B", +"G9 c #181417", +"H9 c #171519", +"I9 c #151D22", +"J9 c #067790", +"K9 c #04809A", +"L9 c #122B34", +"M9 c #181518", +"N9 c #122C37", +"O9 c #057093", +"P9 c #0192B6", +"Q9 c #02E8F9", +"R9 c #18FDFF", +"S9 c #1293A8", +"T9 c #10222E", +"U9 c #181315", +"V9 c #0B3E69", +"W9 c #0075BB", +"X9 c #06729B", +"Y9 c #123B4B", +"Z9 c #181011", +"`9 c #17181B", +" 0 c #18111B", +".0 c #08A228", +"+0 c #04F431", +"@0 c #05C32C", +"#0 c #16691A", +"$0 c #5B730C", +"%0 c #70850A", +"&0 c #2E3117", +"*0 c #12111C", +"=0 c #26262A", +"-0 c #818582", +";0 c #8C828A", +">0 c #67876D", +",0 c #0BAC2A", +"'0 c #05B638", +")0 c #07D84A", +"!0 c #0C7C2B", +"~0 c #180B19", +"{0 c #13331E", +"]0 c #03B42B", +"^0 c #11421F", +"/0 c #180E1B", +"(0 c #17191C", +"_0 c #1B1A1A", +":0 c #0A0D21", +"<0 c #B6A037", +"[0 c #FFDE00", +"}0 c #FBD001", +"|0 c #FFD300", +"10 c #FDD201", +"20 c #EFCC24", +"30 c #272831", +"40 c #29292D", +"50 c #E8E8E8", +"60 c #707072", +"70 c #08080D", +"80 c #171A1F", +"90 c #171B1F", +"00 c #096277", +"a0 c #0489A8", +"b0 c #0A5B6F", +"c0 c #18171B", +"d0 c #191214", +"e0 c #11323B", +"f0 c #0488A3", +"g0 c #076D82", +"h0 c #161B1F", +"i0 c #190F11", +"j0 c #0B5E71", +"k0 c #03B4D7", +"l0 c #04C7E0", +"m0 c #00E3FF", +"n0 c #02A0C2", +"o0 c #095F79", +"p0 c #161C21", +"q0 c #18161A", +"r0 c #190D0E", +"s0 c #0D6E7D", +"t0 c #04A7E2", +"u0 c #03A9E5", +"v0 c #00B5FF", +"w0 c #104362", +"x0 c #19100F", +"y0 c #17191E", +"z0 c #17191B", +"A0 c #19101C", +"B0 c #125A17", +"C0 c #125F1C", +"D0 c #13371D", +"E0 c #01B723", +"F0 c #43A513", +"G0 c #787208", +"H0 c #1B1D1B", +"I0 c #1A1A1D", +"J0 c #313134", +"K0 c #858485", +"L0 c #828783", +"M0 c #91808C", +"N0 c #569768", +"O0 c #00FE56", +"P0 c #12FE63", +"Q0 c #04FF47", +"R0 c #135224", +"S0 c #190419", +"T0 c #089027", +"U0 c #098525", +"V0 c #190E1A", +"W0 c #17171C", +"X0 c #0A0D22", +"Y0 c #B6A238", +"Z0 c #FFE200", +"`0 c #FBD401", +" a c #FFD600", +".a c #FDD601", +"+a c #FFD800", +"@a c #EFCF24", +"#a c #18181D", +"$a c #101015", +"%a c #A3A3A4", +"&a c #E4E4E3", +"*a c #A8A8A9", +"=a c #181418", +"-a c #14252D", +";a c #067B96", +">a c #04829F", +",a c #103A46", +"'a c #191114", +")a c #191013", +"!a c #0D4B5A", +"~a c #038EAB", +"{a c #0B5363", +"]a c #152C2F", +"^a c #1A060A", +"/a c #0A9B9D", +"(a c #03D3E0", +"_a c #08C1DF", +":a c #03D9FF", +"b c #197816", +",b c #19211D", +"'b c #16161D", +")b c #717A0A", +"!b c #BAD803", +"~b c #51F11D", +"{b c #19881F", +"]b c #160C1B", +"^b c #8B8B8A", +"/b c #868786", +"(b c #878887", +"_b c #898588", +":b c #42C35F", +"c c #B5B5B6", +",c c #98989A", +"'c c #0D0D12", +")c c #1B1B20", +"!c c #18191F", +"~c c #15272F", +"{c c #057C98", +"]c c #04809E", +"^c c #123440", +"/c c #181C21", +"(c c #1A080D", +"_c c #00F5F9", +":c c #07DAE5", +"d c #18151E", +",d c #1C2C1C", +"'d c #2B7C12", +")d c #0D1A1E", +"!d c #5F5C15", +"~d c #EDF002", +"{d c #D3D606", +"]d c #686A11", +"^d c #5D6619", +"/d c #19101E", +"(d c #17261D", +"_d c #05A923", +":d c #078F21", +"e c #1B131D", +",e c #124921", +"'e c #03B72B", +")e c #15331F", +"!e c #0B6E43", +"~e c #0D5F3E", +"{e c #104F37", +"]e c #114433", +"^e c #14352C", +"/e c #162A27", +"(e c #182022", +"_e c #1A151C", +":e c #1B131B", +"f c #162C2A", +",f c #182224", +"'f c #1A1B1F", +")f c #1B161B", +"!f c #1B141A", +"~f c #1C1218", +"{f c #1C1319", +"]f c #1E1618", +"^f c #0E0921", +"/f c #B7AE37", +"(f c #FFFE00", +"_f c #FBEE01", +":f c #FFF100", +"g c #0F564D", +",g c #114843", +"'g c #173D37", +")g c #092235", +"!g c #B5B83E", +"~g c #FBF201", +"{g c #FEF500", +"]g c #FDF401", +"^g c #FFF800", +"/g c #F2EA27", +"(g c #1D1D27", +"_g c #605456", +":g c #CCE8E7", +"h c #089A83", +",h c #008C8E", +"'h c #B0D858", +")h c #FBF702", +"!h c #FDF701", +"~h c #FFFD00", +"{h c #EAE822", +"]h c #3B3D47", +"^h c #94CBCB", +"/h c #12FFFF", +"(h c #00FDFD", +"_h c #18F6FA", +":h c #BDDBDD", +"i c #03C8CD", +",i c #11CBCF", +"'i c #0BEFF6", +")i c #3BEFF3", +"!i c #D5D6D6", +"~i c #B3B3B4", +"{i c #1B1D22", +"]i c #1D1417", +"^i c #104C5C", +"/i c #048BAB", +"(i c #0A6379", +"_i c #09657A", +":i c #087E98", +"j c #0B6A7F", +",j c #1A1E23", +"'j c #1C1C22", +")j c #1D171A", +"!j c #133644", +"~j c #067A9F", +"{j c #0E556D", +"]j c #1E1113", +"^j c #113E4F", +"/j c #067EA1", +"(j c #114455", +"_j c #1D1619", +":j c #085189", +"k c #2E351B", +",k c #586F17", +"'k c #202123", +")k c #1B161F", +"!k c #0C7922", +"~k c #04BC26", +"{k c #144420", +"]k c #1F1222", +"^k c #14171A", +"/k c #46484A", +"(k c #969796", +"_k c #8F9290", +":k c #9A8E97", +"l c #1C1F22", +",l c #101028", +"'l c #B1B739", +")l c #EFFB01", +"!l c #F2FF00", +"~l c #F2FE02", +"{l c #F2FC31", +"]l c #D6DAE0", +"^l c #DFD4D3", +"/l c #CBD9D9", +"(l c #84E0E8", +"_l c #8ADFE2", +":l c #40BFC9", +"m c #1D181B", +",m c #067AA0", +"'m c #143949", +")m c #1F1113", +"!m c #10485B", +"~m c #153845", +"{m c #1C1D24", +"]m c #1E1819", +"^m c #133451", +"/m c #035FA5", +"(m c #133049", +"_m c #1E191B", +":m c #161623", +"n c #1C1B24", +",n c #22261E", +"'n c #526A1B", +")n c #292E21", +"!n c #4E6D18", +"~n c #2B3124", +"{n c #1A1922", +"]n c #1D1F23", +"^n c #1E1922", +"/n c #1B2724", +"(n c #02F04A", +"_n c #0EFD54", +":n c #03FF43", +"o c #E3FE02", +",o c #E6FC31", +"'o c #C0C0C1", +")o c #1F1F25", +"!o c #1D181E", +"~o c #0C6975", +"{o c #059AAA", +"]o c #077E8B", +"^o c #192A31", +"/o c #1E1D23", +"(o c #1F181D", +"_o c #173540", +":o c #0586A5", +"p c #1B252D", +",p c #20171A", +"'p c #0F5167", +")p c #07799B", +"!p c #192F39", +"~p c #201A1E", +"{p c #0B4B7D", +"]p c #20181A", +"^p c #1E2026", +"/p c #1F2023", +"(p c #1B1726", +"_p c #344518", +":p c #3F5419", +"

    q c #76AA80", +",q c #8E868D", +"'q c #1D1722", +")q c #174024", +"!q c #04BD2D", +"~q c #164B25", +"{q c #201624", +"]q c #1E1E25", +"^q c #14122B", +"/q c #A5B83A", +"(q c #D5FB01", +"_q c #D8FF00", +":q c #D8FE02", +"r c #1C262E", +",r c #22171A", +"'r c #134354", +")r c #067C9F", +"!r c #173A48", +"~r c #211A1D", +"{r c #201F23", +"]r c #07A9C2", +"^r c #06A4D8", +"/r c #03B0FF", +"(r c #1096C4", +"_r c #21191A", +":r c #202124", +"s c #1F1F26", +",s c #446C19", +"'s c #2D3726", +")s c #34531C", +"!s c #334627", +"~s c #1C1825", +"{s c #211625", +"]s c #0D8425", +"^s c #0AA729", +"/s c #18171E", +"(s c #404044", +"_s c #9E9F9E", +":s c #9A9B9A", +"t c #D1FC31", +",t c #D8D7DD", +"'t c #DADBD9", +")t c #202227", +"!t c #211E23", +"~t c #1D272E", +"{t c #09808E", +"]t c #069AAA", +"^t c #0D626D", +"/t c #211C22", +"(t c #202127", +"_t c #202228", +":t c #221A1E", +"u c #0782A0", +",u c #134E5F", +"'u c #221A1F", +")u c #173846", +"!u c #10536C", +"~u c #124C61", +"{u c #07789B", +"]u c #1B313C", +"^u c #221E22", +"/u c #20252B", +"(u c #202229", +"_u c #1D2936", +":u c #055DA2", +"v c #1B3B27", +",v c #221A26", +"'v c #27223B", +")v c #B7D85A", +"!v c #C0FF00", +"~v c #BCFD02", +"{v c #BDFF00", +"]v c #BDFE02", +"^v c #BBFF00", +"/v c #C5F92E", +"(v c #E6E5EA", +"_v c #909091", +":v c #15161C", +"w c #1F252B", +",w c #222026", +"'w c #23161C", +")w c #0DA0A4", +"!w c #11FAFA", +"~w c #237177", +"{w c #21161C", +"]w c #22242A", +"^w c #231C21", +"/w c #163F4C", +"(w c #154858", +"_w c #231B20", +":w c #21242B", +"x c #273721", +",x c #37621D", +"'x c #221F2A", +")x c #222328", +"!x c #201B29", +"~x c #2F521F", +"{x c #334F26", +"]x c #284421", +"^x c #325B24", +"/x c #1B3826", +"(x c #05BF29", +"_x c #145A26", +":x c #2B1F2F", +"y c #7B7A7D", +",y c #A1A2A2", +"'y c #A4A3A4", +")y c #9D9F9E", +"!y c #2BCA4D", +"~y c #43BF5D", +"{y c #AFA6AD", +"]y c #46494B", +"^y c #1B1520", +"/y c #0D982D", +"(y c #0A9C2C", +"_y c #17171D", +":y c #979896", +"z c #ACFE03", +",z c #ABFF00", +"'z c #ABFE01", +")z c #ADF025", +"!z c #33313E", +"~z c #251B21", +"{z c #154D57", +"]z c #078594", +"^z c #1C333A", +"/z c #241E25", +"(z c #241D22", +"_z c #135163", +":z c #067D9A", +"A c #125D72", +",A c #251F24", +"'A c #23242B", +")A c #252127", +"!A c #1F2B33", +"~A c #105F74", +"{A c #241F23", +"]A c #23252C", +"^A c #21272E", +"/A c #0790AE", +"(A c #05C5E3", +"_A c #00DCF9", +":A c #185D6D", +"B c #04D3D8", +",B c #0BC9DC", +"'B c #13B9C6", +")B c #261A1F", +"!B c #22262D", +"~B c #0B6E94", +"{B c #098698", +"]B c #1F4034", +"^B c #261624", +"/B c #261B25", +"(B c #261C24", +"_B c #251F26", +":B c #26151B", +"C c #08B38C", +",C c #156848", +"'C c #16574B", +")C c #1A4A47", +"!C c #1E363A", +"~C c #1E444B", +"{C c #15767C", +"]C c #212B32", +"^C c #242229", +"/C c #23242C", +"(C c #23242F", +"_C c #0A59A5", +":C c #1A304E", +"D c #135950", +",D c #185242", +"'D c #136258", +")D c #135C59", +"!D c #099DA2", +"~D c #1F6368", +"{D c #26181E", +"]D c #24272D", +"^D c #262426", +"/D c #0C3983", +"(D c #153668", +"_D c #272323", +":D c #24262B", +"E c #1A5560", +",E c #261B21", +"'E c #24272E", +")E c #27171E", +"!E c #272324", +"~E c #113272", +"{E c #113475", +"]E c #28221D", +"^E c #24252E", +"/E c #25222B", +"(E c #233030", +"_E c #232B2E", +":E c #203F33", +"F c #21323A", +",F c #262127", +"'F c #25262D", +")F c #261C23", +"!F c #27171F", +"~F c #1A6B6F", +"{F c #21333A", +"]F c #252228", +"^F c #272423", +"/F c #13367B", +"(F c #0240C4", +"_F c #1E294A", +":F c #262425", +"G c #106979", +",G c #271F25", +"'G c #25272E", +")G c #252A30", +"!G c #261F27", +"~G c #1F555A", +"{G c #1A6E71", +"]G c #281A21", +"^G c #185864", +"/G c #00FCFF", +"(G c #13ADB5", +"_G c #29181C", +":G c #242B32", +"H c #164B60", +",H c #253227", +"'H c #1E5238", +")H c #0F574A", +"!H c #184A3D", +"~H c #135981", +"{H c #096D96", +"]H c #242430", +"^H c #281E26", +"/H c #233F44", +"(H c #13596D", +"_H c #0679A0", +":H c #20313D", +"I c #098A98", +",I c #0790A0", +"'I c #136069", +")I c #1B6468", +"!I c #272128", +"~I c #26272E", +"{I c #0D6D85", +"]I c #26242A", +"^I c #281E23", +"/I c #155665", +"(I c #0676A4", +"_I c #0DB063", +":I c #01D759", +"J c #252D30", +",J c #28202B", +"'J c #262A2F", +")J c #303238", +"!J c #C3C4C4", +"~J c #CFD0D0", +"{J c #CFD2CD", +"]J c #D7CFE1", +"^J c #B3F071", +"/J c #7FFF00", +"(J c #87FE03", +"_J c #85FF00", +":J c #85FE01", +"K c #206426", +",K c #2A3631", +"'K c #291C2E", +")K c #127D29", +"!K c #2AD64A", +"~K c #AAACAA", +"{K c #B3ABB1", +"]K c #89AC91", +"^K c #1CD743", +"/K c #66B477", +"(K c #3D3241", +"_K c #09A82E", +":K c #0D952D", +"L c #232737", +",L c #272527", +"'L c #252C2F", +")L c #24352F", +"!L c #1F5032", +"~L c #204A31", +"{L c #24342F", +"]L c #224231", +"^L c #224132", +"/L c #233A30", +"(L c #204A32", +"_L c #213433", +":L c #304028", +"M c #0F787E", +",M c #233237", +"'M c #0F8899", +")M c #00D0EF", +"!M c #02E2FE", +"~M c #0B7692", +"{M c #06B2CA", +"]M c #038FC6", +"^M c #026898", +"/M c #292429", +"(M c #27262C", +"_M c #252934", +":M c #134B6A", +"N c #79FE02", +",N c #7AFF00", +"'N c #7AFE01", +")N c #85F62A", +"!N c #1E8C7D", +"~N c #06816B", +"{N c #0B8370", +"]N c #0A8371", +"^N c #0B8070", +"/N c #0E766B", +"(N c #0E766C", +"_N c #0E756C", +":N c #0E756D", +"O c #26312F", +",O c #27342D", +"'O c #3C6523", +")O c #385528", +"!O c #4F751F", +"~O c #089122", +"{O c #0CA629", +"]O c #198130", +"^O c #28282E", +"/O c #28252F", +"(O c #26312C", +"_O c #226A22", +":O c #292C30", +"P c #01B3CB", +",P c #06C0D1", +"'P c #06BED5", +")P c #03DDF9", +"!P c #0AF3FF", +"~P c #1E9196", +"{P c #281820", +"]P c #272B32", +"^P c #0C6E88", +"/P c #0E6E87", +"(P c #292733", +"_P c #087A4E", +":P c #136044", +"

    Q c #05FFA8", +",Q c #05FEA1", +"'Q c #13FEB8", +")Q c #24FAD6", +"!Q c #0C9464", +"~Q c #06804D", +"{Q c #098554", +"]Q c #24A06F", +"^Q c #2AA475", +"/Q c #2BA376", +"(Q c #2BA377", +"_Q c #2BA375", +":Q c #299C84", +"R c #132674", +",R c #2B2824", +"'R c #282830", +")R c #263030", +"!R c #243B31", +"~R c #243E31", +"{R c #253831", +"]R c #253731", +"^R c #272E30", +"/R c #253931", +"(R c #234531", +"_R c #243B30", +":R c #243F31", +"S c #15FCFD", +",S c #23F2F7", +"'S c #0F7386", +")S c #252730", +"!S c #2A282E", +"~S c #29282F", +"{S c #2A262C", +"]S c #24323C", +"^S c #087A96", +"/S c #145F74", +"(S c #2A242A", +"_S c #2A2027", +":S c #2D1620", +"T c #2CC14C", +",T c #2D2C33", +"'T c #2B1F30", +")T c #176B2E", +"!T c #06C22F", +"~T c #1F482D", +"{T c #2B2230", +"]T c #282A2F", +"^T c #138156", +"/T c #089D5E", +"(T c #08804C", +"_T c #0A5E3A", +":T c #095E3A", +"U c #1E3264", +",U c #26283B", +"'U c #103EA5", +")U c #054FFF", +"!U c #21397C", +"~U c #262936", +"{U c #242D47", +"]U c #272A39", +"^U c #272A37", +"/U c #272939", +"(U c #292830", +"_U c #263331", +":U c #243D31", +"V c #2A282F", +",V c #292A32", +"'V c #2B242B", +")V c #07809E", +"!V c #1A4F61", +"~V c #2B2329", +"{V c #29222A", +"]V c #0ECACC", +"^V c #00F2FF", +"/V c #178A9E", +"(V c #2C1C22", +"_V c #2A2329", +":V c #106881", +"W c #22953E", +",W c #281E2E", +"'W c #292D31", +")W c #2A2130", +"!W c #11882E", +"~W c #07B62F", +"{W c #24362E", +"]W c #2A2531", +"^W c #0A5D3B", +"/W c #0A5A39", +"(W c #077F4D", +"_W c #0C915A", +":W c #1F5844", +"X c #252C46", +",X c #252F45", +"'X c #272D3C", +")X c #2A292D", +"!X c #2A2931", +"~X c #2A292F", +"{X c #2A2830", +"]X c #283231", +"^X c #254332", +"/X c #292E31", +"(X c #205933", +"_X c #234A32", +":X c #263D31", +"Y c #0592B2", +",Y c #04C3D4", +"'Y c #177D8A", +")Y c #2C272C", +"!Y c #0E7892", +"~Y c #19435E", +"{Y c #1F5260", +"]Y c #0AB7E1", +"^Y c #12FEFF", +"/Y c #14CDD4", +"(Y c #223A53", +"_Y c #1D506C", +":Y c #253849", +"Z c #2C222E", +",Z c #2B2730", +"'Z c #292C32", +")Z c #2A2B32", +"!Z c #2C2C33", +"~Z c #4C4C52", +"{Z c #9EEF70", +"]Z c #53FF00", +"^Z c #5EFE03", +"/Z c #5DFE01", +"(Z c #58FF00", +"_Z c #6FF026", +":Z c #3C3845", +"` c #273A31", +",` c #264031", +"'` c #283731", +")` c #224A31", +"!` c #248028", +"~` c #294730", +"{` c #1D8E22", +"]` c #177B2C", +"^` c #0F9127", +"/` c #167629", +"(` c #293031", +"_` c #2B2530", +":` c #263C39", +"<` c #187D4E", +"[` c #283430", +"}` c #2E1624", +"|` c #2B202D", +"1` c #1A6428", +"2` c #2A3833", +"3` c #2A2631", +"4` c #2B2732", +"5` c #273531", +"6` c #12891E", +"7` c #1F6526", +"8` c #2A2C31", +"9` c #9D989D", +"0` c #A3B7A6", +"a` c #1FD641", +"b` c #5EC472", +"c` c #BCAFBA", +"d` c #B4B3B4", +"e` c #AEAFAE", +"f` c #30C851", +"g` c #099C2C", +"h` c #2A2C32", +"i` c #18692E", +"j` c #1E512F", +"k` c #2C2532", +"l` c #283638", +"m` c #2D222E", +"n` c #2B2A32", +"o` c #2D2D34", +"p` c #1F1F27", +"q` c #6A6A6F", +"r` c #CACDC9", +"s` c #D6CADD", +"t` c #9CEF6F", +"u` c #4FFF00", +"v` c #5AFE03", +"w` c #59FE01", +"x` c #54FF00", +"y` c #6CF026", +"z` c #3D3946", +"A` c #2B2C33", +"B` c #2B2830", +"C` c #10717E", +"D` c #0D818F", +"E` c #135567", +"F` c #0980A0", +"G` c #078BAE", +"H` c #125B70", +"I` c #2B282E", +"J` c #145E74", +"K` c #097A96", +"L` c #26343E", +"M` c #2C282F", +"N` c #2B2A33", +"O` c #0E6356", +"P` c #204740", +"Q` c #1D4B61", +"R` c #11637C", +"S` c #2D252A", +"T` c #2B2931", +"U` c #273942", +"V` c #2A2F36", +"W` c #06D4DA", +"X` c #0CFFFF", +"Y` c #20C9D1", +"Z` c #04AACA", +"`` c #05E5FF", +" . c #18BCCC", +". . c #1F5266", +"+ . c #214B60", +"@ . c #233F58", +"# . c #11717E", +"$ . c #117A90", +"% . c #1F596E", +"& . c #21475E", +"* . c #1D4875", +"= . c #1D4872", +"- . c #204266", +"; . c #1E4565", +"> . c #0A729B", +", . c #194C86", +"' . c #1157AA", +") . c #1A5183", +"! . c #174C7C", +"~ . c #0962AF", +"{ . c #0D62A1", +"] . c #16518F", +"^ . c #144C90", +"/ . c #0C5A9E", +"( . c #1A3783", +"_ . c #183B87", +": . c #173B8E", +"< . c #1B3A7C", +"[ . c #15368E", +"} . c #0D3A8D", +"| . c #18388C", +"1 . c #183B8B", +"2 . c #183A88", +"3 . c #1B387B", +"4 . c #183F8C", +"5 . c #1B3C7B", +"6 . c #1E376F", +"7 . c #223059", +"8 . c #1F3469", +"9 . c #223859", +"0 . c #223A59", +"a . c #233257", +"b . c #25344C", +"c . c #282D40", +"d . c #243553", +"e . c #213961", +"f . c #243551", +"g . c #263249", +"h . c #28313E", +"i . c #233855", +"j . c #292E3B", +"k . c #28303F", +"l . c #2B292E", +"m . c #2A2F32", +"n . c #283833", +"o . c #254633", +"p . c #244B33", +"q . c #244A33", +"r . c #293432", +"s . c #293332", +"t . c #254731", +"u . c #283631", +"v . c #205E30", +"w . c #263B33", +"x . c #256929", +"y . c #294830", +"z . c #1B8B24", +"A . c #1B782B", +"B . c #109229", +"C . c #128327", +"D . c #293132", +"E . c #2B252E", +"F . c #0FC577", +"G . c #05FF8E", +"H . c #0BCA6E", +"I . c #188779", +"J . c #205945", +"K . c #128729", +"L . c #264F35", +"M . c #2C2434", +"N . c #1C6326", +"O . c #188A1D", +"P . c #2B3431", +"Q . c #2B2832", +"R . c #898C8C", +"S . c #C3B7C1", +"T . c #59C06C", +"U . c #23D845", +"V . c #A1B3A4", +"W . c #B8B3B7", +"X . c #B0B4B1", +"Y . c #BFB3BC", +"Z . c #62B574", +"` . c #00BB28", +" .. c #2B2932", +"... c #253830", +"+.. c #08B830", +"@.. c #12862C", +"#.. c #2E162F", +"$.. c #2C2632", +"%.. c #2A2D32", +"&.. c #2A2A33", +"*.. c #2D2D35", +"=.. c #1F1F28", +"-.. c #8A8A8E", +";.. c #9AEF6F", +">.. c #4BFF00", +",.. c #56FE03", +"'.. c #55FE01", +").. c #50FF00", +"!.. c #69F026", +"~.. c #3D3846", +"{.. c #2A2C34", +"].. c #2D252D", +"^.. c #1F454F", +"/.. c #078D9C", +"(.. c #1A5964", +"_.. c #194354", +":.. c #0784A5", +"<.. c #088AAD", +"[.. c #125970", +"}.. c #2A2B34", +"|.. c #2C262D", +"1.. c #213E4C", +"2.. c #1B4F61", +"3.. c #2D252C", +"4.. c #2D2630", +"5.. c #145652", +"6.. c #146059", +"7.. c #301F28", +"8.. c #195263", +"9.. c #11657C", +"0.. c #292F37", +"a.. c #25434B", +"b.. c #25414A", +"c.. c #2A2F37", +"d.. c #1E5E6B", +"e.. c #1B8D9E", +"f.. c #264A55", +"g.. c #1B6173", +"h.. c #18A7B7", +"i.. c #295158", +"j.. c #214558", +"k.. c #234858", +"l.. c #244253", +"m.. c #1B5D79", +"n.. c #0890A2", +"o.. c #1E5267", +"p.. c #195387", +"q.. c #185A88", +"r.. c #185F8B", +"s.. c #115DAB", +"t.. c #19508C", +"u.. c #0F6792", +"v.. c #0D669F", +"w.. c #1B4E84", +"x.. c #1A5182", +"y.. c #164590", +"z.. c #085DAC", +"A.. c #0F5598", +"B.. c #0B5FB0", +"C.. c #18438F", +"D.. c #0E548B", +"E.. c #183C84", +"F.. c #15409C", +"G.. c #1A4080", +"H.. c #173D91", +"I.. c #0B60C6", +"J.. c #0867C6", +"K.. c #174096", +"L.. c #17378F", +"M.. c #1C3779", +"N.. c #1A387F", +"O.. c #164194", +"P.. c #1B397B", +"Q.. c #233158", +"R.. c #193C85", +"S.. c #154297", +"T.. c #1C4175", +"U.. c #1F3767", +"V.. c #25314C", +"W.. c #22385B", +"X.. c #263448", +"Y.. c #203F66", +"Z.. c #25344D", +"`.. c #243851", +" +. c #282E3D", +".+. c #25354B", +"++. c #223E5A", +"@+. c #26344A", +"#+. c #272F41", +"$+. c #2A2B35", +"%+. c #2A2D33", +"&+. c #293133", +"*+. c #254434", +"=+. c #283933", +"-+. c #273A33", +";+. c #234F33", +">+. c #263E32", +",+. c #293333", +"'+. c #264033", +")+. c #234E31", +"!+. c #254831", +"~+. c #22682A", +"{+. c #284E2F", +"]+. c #1B7B28", +"^+. c #1D6E2A", +"/+. c #167B2B", +"(+. c #0D9425", +"_+. c #07DD71", +":+. c #01FF67", +"<+. c #05F9BF", +"[+. c #08FFE0", +"}+. c #02FA98", +"|+. c #07F34B", +"1+. c #10D240", +"2+. c #2B2733", +"3+. c #273D30", +"4+. c #188E1B", +"5+. c #265729", +"6+. c #2B2434", +"7+. c #21212A", +"8+. c #7F8082", +"9+. c #C2BDC1", +"0+. c #9CAF9F", +"a+. c #22D743", +"b+. c #5FC572", +"c+. c #BEB1BB", +"d+. c #BAB4B8", +"e+. c #99AE9E", +"f+. c #08BB31", +"g+. c #13822F", +"h+. c #2D2233", +"i+. c #2A2F33", +"j+. c #2D2032", +"k+. c #148030", +"l+. c #01DE41", +"m+. c #12973F", +"n+. c #264034", +"o+. c #2C2332", +"p+. c #A8A8AA", +"q+. c #D6C9DC", +"r+. c #98EF6F", +"s+. c #47FF00", +"t+. c #53FE03", +"u+. c #51FF00", +"v+. c #52FE01", +"w+. c #4DFF00", +"x+. c #66F026", +"y+. c #2C2930", +"z+. c #10727F", +"A+. c #0C8392", +"B+. c #2A2F35", +"C+. c #194757", +"D+. c #0883A4", +"E+. c #13596E", +"F+. c #2C2B32", +"G+. c #0E6E88", +"H+. c #2E262F", +"I+. c #1E4347", +"J+. c #0F655F", +"K+. c #2C2E36", +"L+. c #2E2329", +"M+. c #1A5362", +"N+. c #12667A", +"O+. c #2E262C", +"P+. c #2B2C34", +"Q+. c #273E44", +"R+. c #26434B", +"S+. c #244E55", +"T+. c #21575E", +"U+. c #244B53", +"V+. c #24444E", +"W+. c #263A45", +"X+. c #244A53", +"Y+. c #1D5B6C", +"Z+. c #1E566B", +"`+. c #1D6073", +" @. c #1E5C6E", +".@. c #214D62", +"+@. c #214C68", +"@@. c #16687A", +"#@. c #0F758F", +"$@. c #1B5181", +"%@. c #204D66", +"&@. c #165C94", +"*@. c #165695", +"=@. c #165B96", +"-@. c #1E496D", +";@. c #0C6B92", +">@. c #155590", +",@. c #1B457D", +"'@. c #1D4477", +")@. c #0F5590", +"!@. c #0D53A0", +"~@. c #0C5CA3", +"{@. c #1C387E", +"]@. c #134D84", +"^@. c #144C82", +"/@. c #18408F", +"(@. c #164693", +"_@. c #1B3D7D", +":@. c #0F62B3", +"<@. c #0E83EF", +"[@. c #1C4289", +"}@. c #163D91", +"|@. c #143FA0", +"1@. c #1347A4", +"2@. c #14409E", +"3@. c #17408F", +"4@. c #1C4079", +"5@. c #1E3B6F", +"6@. c #1E3F70", +"7@. c #1E3D72", +"8@. c #203D69", +"9@. c #1E3C71", +"0@. c #223D5D", +"a@. c #223C5B", +"b@. c #22395C", +"c@. c #213962", +"d@. c #283241", +"e@. c #25384F", +"f@. c #214262", +"g@. c #253A51", +"h@. c #233C5A", +"i@. c #25364D", +"j@. c #28313F", +"k@. c #2B2C35", +"l@. c #2A2C35", +"m@. c #2A303A", +"n@. c #273E33", +"o@. c #283B33", +"p@. c #264333", +"q@. c #244C33", +"r@. c #293533", +"s@. c #244D33", +"t@. c #244C32", +"u@. c #245032", +"v@. c #274233", +"w@. c #264632", +"x@. c #273E32", +"y@. c #24572D", +"z@. c #236A2D", +"A@. c #1D642C", +"B@. c #198328", +"C@. c #1E612E", +"D@. c #0AA123", +"E@. c #273C31", +"F@. c #2A3334", +"G@. c #2A3033", +"H@. c #2C2732", +"I@. c #0F963A", +"J@. c #09C04D", +"K@. c #04DD78", +"L@. c #03DA7D", +"M@. c #0ADF8E", +"N@. c #07F746", +"O@. c #1E9F41", +"P@. c #2C2432", +"Q@. c #2B2E32", +"R@. c #2C2734", +"S@. c #1F7023", +"T@. c #217F1E", +"U@. c #2C2D33", +"V@. c #2B2C32", +"W@. c #717174", +"X@. c #BBBEBB", +"Y@. c #BAAEB8", +"Z@. c #5BC26E", +"`@. c #21D843", +" #. c #99B09D", +".#. c #B9B4B8", +"+#. c #B2B5B3", +"@#. c #B5ACB3", +"##. c #28A144", +"$#. c #04B12B", +"%#. c #283732", +"&#. c #2C2933", +"*#. c #2C2731", +"=#. c #0CBF4D", +"-#. c #07FF69", +";#. c #06FF5F", +">#. c #05E543", +",#. c #273C32", +"'#. c #2C2733", +")#. c #2C2C34", +"!#. c #36363D", +"~#. c #C9CCC8", +"{#. c #D6C9DB", +"]#. c #96EE6F", +"^#. c #43FF00", +"/#. c #4FFE03", +"(#. c #4EFE01", +"_#. c #49FF00", +":#. c #63F126", +"<#. c #3E3A47", +"[#. c #2C2D34", +"}#. c #2B2D35", +"|#. c #2E262D", +"1#. c #204751", +"2#. c #088D9C", +"3#. c #1C5964", +"4#. c #302127", +"5#. c #184A5B", +"6#. c #0982A3", +"7#. c #0989AC", +"8#. c #13586D", +"9#. c #1C4E60", +"0#. c #22414F", +"a#. c #2E272E", +"b#. c #2B2F37", +"c#. c #2D2B32", +"d#. c #26363D", +"e#. c #0C6867", +"f#. c #28393F", +"g#. c #2C2931", +"h#. c #1C525F", +"i#. c #126A7B", +"j#. c #2C2B33", +"k#. c #2C2A32", +"l#. c #2B3037", +"m#. c #2B3038", +"n#. c #273F45", +"o#. c #2A353C", +"p#. c #26484D", +"q#. c #12F4EC", +"r#. c #254150", +"s#. c #225360", +"t#. c #1B4D7E", +"u#. c #1266A8", +"v#. c #1E4675", +"w#. c #147A9E", +"x#. c #13D8D9", +"y#. c #1A417F", +"z#. c #085AAE", +"A#. c #1C3F7E", +"B#. c #1A3C81", +"C#. c #1B3C82", +"D#. c #124291", +"E#. c #173B7F", +"F#. c #1E3474", +"G#. c #15429A", +"H#. c #1F376E", +"I#. c #1B3F7F", +"J#. c #1C3C7A", +"K#. c #1B3D7E", +"L#. c #19438A", +"M#. c #18438C", +"N#. c #1C3B7D", +"O#. c #1B417E", +"P#. c #18478D", +"Q#. c #27334B", +"R#. c #253253", +"S#. c #1A4684", +"T#. c #20406A", +"U#. c #23345B", +"V#. c #273349", +"W#. c #283044", +"X#. c #283146", +"Y#. c #243D55", +"Z#. c #273547", +"`#. c #243E56", +" $. c #283342", +".$. c #293341", +"+$. c #2B2C37", +"@$. c #292F40", +"#$. c #2B2D36", +"$$. c #2B2E38", +"%$. c #2B2F33", +"&$. c #2B2D33", +"*$. c #293934", +"=$. c #2A3234", +"-$. c #2B3133", +";$. c #2A3333", +">$. c #2A3133", +",$. c #273F33", +"'$. c #2A3434", +")$. c #264733", +"!$. c #274032", +"~$. c #283C33", +"{$. c #22592F", +"]$. c #216D2D", +"^$. c #1E652E", +"/$. c #149926", +"($. c #225831", +"_$. c #06B322", +":$. c #224B2F", +"<$. c #2E2434", +"[$. c #2D2534", +"}$. c #22562F", +"|$. c #137325", +"1$. c #2E2230", +"2$. c #128842", +"3$. c #00D750", +"4$. c #03C15C", +"5$. c #1D5937", +"6$. c #2F1C31", +"7$. c #2D2635", +"8$. c #27462E", +"9$. c #209019", +"0$. c #2B4D2C", +"a$. c #2C2535", +"b$. c #2E2E36", +"c$. c #66666B", +"d$. c #BCBEBC", +"e$. c #9EB2A1", +"f$. c #53C067", +"g$. c #BBB0B9", +"h$. c #B2B6B3", +"i$. c #BAB0B8", +"j$. c #3B6F4A", +"k$. c #00BF2A", +"l$. c #1C6831", +"m$. c #301B33", +"n$. c #254C37", +"o$. c #00FB57", +"p$. c #0BFE60", +"q$. c #11EB56", +"r$. c #03FB46", +"s$. c #1F7A3D", +"t$. c #2E1E32", +"u$. c #2B2F34", +"v$. c #24242D", +"w$. c #4D4D53", +"x$. c #D6C8DB", +"y$. c #93EE6F", +"z$. c #3FFF00", +"A$. c #4BFE03", +"B$. c #4AFE01", +"C$. c #45FF00", +"D$. c #60F126", +"E$. c #3E3947", +"F$. c #107381", +"G$. c #29323B", +"H$. c #2E252B", +"I$. c #18485A", +"J$. c #14566B", +"K$. c #2D272E", +"L$. c #28333D", +"M$. c #0A7997", +"N$. c #2D2930", +"O$. c #2B2E36", +"P$. c #2F1D25", +"Q$. c #2C242D", +"R$. c #0E6268", +"S$. c #20494F", +"T$. c #2E252E", +"U$. c #2A2E36", +"V$. c #2E252C", +"W$. c #175E6A", +"X$. c #16616E", +"Y$. c #2A3037", +"Z$. c #283E43", +"`$. c #29363C", +" %. c #2A343B", +".%. c #25494E", +"+%. c #26474C", +"@%. c #26464C", +"#%. c #206365", +"$%. c #1E6E6F", +"%%. c #1C8E8E", +"&%. c #1F8385", +"*%. c #1B687F", +"=%. c #1A6D81", +"-%. c #1F5E6E", +";%. c #20586C", +">%. c #17A1AC", +",%. c #1690AE", +"'%. c #1C537C", +")%. c #1A5B85", +"!%. c #1F466B", +"~%. c #18578D", +"{%. c #17B6BD", +"]%. c #12A6BE", +"^%. c #24345E", +"/%. c #0F5291", +"(%. c #153C88", +"_%. c #1C377B", +":%. c #1B3A86", +"<%. c #0F4096", +"[%. c #193A7A", +"}%. c #174097", +"|%. c #193D89", +"1%. c #1D3978", +"2%. c #1A4386", +"3%. c #19448A", +"4%. c #18488F", +"5%. c #1D4074", +"6%. c #1B4180", +"7%. c #19458A", +"8%. c #194587", +"9%. c #19488A", +"0%. c #1D3B75", +"a%. c #1D3D76", +"b%. c #233958", +"c%. c #1A4C86", +"d%. c #1F416D", +"e%. c #1E446F", +"f%. c #223D5F", +"g%. c #214662", +"h%. c #243F56", +"i%. c #23405B", +"j%. c #273546", +"k%. c #233B59", +"l%. c #22415D", +"m%. c #204668", +"n%. c #273246", +"o%. c #26364B", +"p%. c #2A2F38", +"q%. c #2A2D3A", +"r%. c #2A2D38", +"s%. c #29313E", +"t%. c #29323A", +"u%. c #2A3034", +"v%. c #283B34", +"w%. c #264635", +"x%. c #293735", +"y%. c #293833", +"z%. c #2A3233", +"A%. c #2B2B34", +"B%. c #225833", +"C%. c #283A33", +"D%. c #283E32", +"E%. c #254932", +"F%. c #1F662F", +"G%. c #1E732C", +"H%. c #1F5F2F", +"I%. c #0DAF25", +"J%. c #1F6E31", +"K%. c #09AB24", +"L%. c #1C632C", +"M%. c #2D2735", +"N%. c #2C3134", +"O%. c #177A24", +"P%. c #21512E", +"Q%. c #293B38", +"R%. c #196B38", +"S%. c #128836", +"T%. c #00D146", +"U%. c #0E8E55", +"V%. c #2A2E34", +"W%. c #23791F", +"X%. c #297620", +"Y%. c #2C2935", +"Z%. c #23232C", +"`%. c #56565B", +" &. c #BCBCBB", +".&. c #B1B4B2", +"+&. c #BDB1BB", +"@&. c #5CC26F", +"#&. c #1FD741", +"$&. c #97B09C", +"%&. c #B9B4B9", +"&&. c #565A5C", +"*&. c #03A027", +"=&. c #10A132", +"-&. c #283D34", +";&. c #03F24B", +">&. c #00F946", +",&. c #02EE3C", +"'&. c #04E03B", +")&. c #225937", +"!&. c #2E2133", +"~&. c #2F2F36", +"{&. c #6B6B6F", +"]&. c #C8CBC7", +"^&. c #93F070", +"/&. c #3AFF00", +"(&. c #48FE03", +"_&. c #46FE01", +":&. c #41FF00", +"<&. c #5DF126", +"[&. c #3F3A48", +"}&. c #2C2D35", +"|&. c #214853", +"1&. c #1C5661", +"2&. c #2E272F", +"3&. c #2E2930", +"4&. c #194859", +"5&. c #0882A4", +"6&. c #0889AC", +"7&. c #185164", +"8&. c #2E272D", +"9&. c #165E74", +"0&. c #0A7B98", +"a&. c #2A2E38", +"b&. c #2D2931", +"c&. c #1F787D", +"d&. c #0E878F", +"e&. c #19525C", +"f&. c #2F2830", +"g&. c #2F252D", +"h&. c #146972", +"i&. c #195A64", +"j&. c #2F242C", +"k&. c #2C2B34", +"l&. c #2A363C", +"m&. c #283E42", +"n&. c #235656", +"o&. c #206664", +"p&. c #235657", +"q&. c #254D4D", +"r&. c #254B4D", +"s&. c #23595D", +"t&. c #225A5A", +"u&. c #216164", +"v&. c #197F88", +"w&. c #1B607E", +"x&. c #196C88", +"y&. c #1D6277", +"z&. c #1F5871", +"A&. c #1B6581", +"B&. c #156D7F", +"C&. c #21476D", +"D&. c #1C597B", +"E&. c #1C557D", +"F&. c #1B6287", +"G&. c #12F1E9", +"H&. c #147293", +"I&. c #25345C", +"J&. c #116D9C", +"K&. c #06A5DC", +"L&. c #22406A", +"M&. c #1B4583", +"N&. c #085DC1", +"O&. c #1D3E76", +"P&. c #193E8D", +"Q&. c #1A4087", +"R&. c #1E3873", +"S&. c #1F3A6F", +"T&. c #1C3F7C", +"U&. c #174895", +"V&. c #1C407F", +"W&. c #174A95", +"X&. c #223562", +"Y&. c #203C69", +"Z&. c #1D4476", +"`&. c #1B4782", +" *. c #1D4377", +".*. c #214068", +"+*. c #1F4670", +"@*. c #1F4572", +"#*. c #214067", +"$*. c #224463", +"%*. c #24445A", +"&*. c #244257", +"**. c #283347", +"=*. c #20496A", +"-*. c #214865", +";*. c #263D4E", +">*. c #27354B", +",*. c #293241", +"'*. c #243E57", +")*. c #283647", +"!*. c #293442", +"~*. c #2A313D", +"{*. c #2B303A", +"]*. c #2C2D36", +"^*. c #2A3734", +"/*. c #293C35", +"(*. c #254D31", +"_*. c #293931", +":*. c #2B3435", +"<*. c #264A34", +"[*. c #2A3634", +"}*. c #254D33", +"|*. c #293C33", +"1*. c #293C34", +"2*. c #235532", +"3*. c #225A32", +"4*. c #283F33", +"5*. c #245132", +"6*. c #17822B", +"7*. c #215830", +"8*. c #149627", +"9*. c #265432", +"0*. c #0CA326", +"a*. c #157E2A", +"b*. c #2E2635", +"c*. c #2A3534", +"d*. c #2B3034", +"e*. c #2C2E34", +"f*. c #2E2636", +"g*. c #25562B", +"h*. c #1B7522", +"i*. c #2E2735", +"j*. c #225C34", +"k*. c #1E6D34", +"l*. c #1B6723", +"m*. c #10933A", +"n*. c #00CE50", +"o*. c #16734A", +"p*. c #2F1C33", +"q*. c #29522B", +"r*. c #289018", +"s*. c #2E4230", +"t*. c #2C2735", +"u*. c #2E2E35", +"v*. c #25252E", +"w*. c #B2B4B3", +"x*. c #BAB5B9", +"y*. c #9EB2A2", +"z*. c #23D744", +"A*. c #54C268", +"B*. c #BAAFB8", +"C*. c #BCC1BC", +"D*. c #635766", +"E*. c #0F6827", +"F*. c #08C532", +"G*. c #224D31", +"H*. c #301E34", +"I*. c #1D7238", +"J*. c #07D83C", +"K*. c #07C335", +"L*. c #07D438", +"M*. c #2D2C35", +"N*. c #2F2F37", +"O*. c #D2C4D7", +"P*. c #84E364", +"Q*. c #38FF00", +"R*. c #43FD03", +"S*. c #42FE01", +"T*. c #3CFF00", +"U*. c #5AF126", +"V*. c #3F3B48", +"W*. c #2D2E35", +"X*. c #2D2C34", +"Y*. c #0E7886", +"Z*. c #0F7C8A", +"`*. c #2E292F", +" =. c #1C4555", +".=. c #0981A2", +"+=. c #2F282E", +"@=. c #253B48", +"#=. c #077D9C", +"$=. c #147485", +"%=. c #2A3C42", +"&=. c #2E252D", +"*=. c #2C3139", +"==. c #2F212A", +"-=. c #216369", +";=. c #04FFFF", +">=. c #2A464E", +",=. c #2D262E", +"'=. c #2F262E", +")=. c #15696F", +"!=. c #195D64", +"~=. c #2F2930", +"{=. c #293E41", +"]=. c #254E4D", +"^=. c #293D41", +"/=. c #293E42", +"(=. c #264B4C", +"_=. c #274648", +":=. c #274749", +"<=. c #1F6C66", +"[=. c #1F6A68", +"}=. c #1E7270", +"|=. c #1F6B6B", +"1=. c #235A5D", +"2=. c #1C7479", +"3=. c #167C94", +"4=. c #196E89", +"5=. c #1E6374", +"6=. c #1F556F", +"7=. c #1C557F", +"8=. c #0A8B9F", +"9=. c #22445B", +"0=. c #1D5A7E", +"a=. c #20526E", +"b=. c #1899AF", +"c=. c #189BB0", +"d=. c #1F406E", +"e=. c #0EB5C7", +"f=. c #11A1BF", +"g=. c #1C3F7D", +"h=. c #184983", +"i=. c #135685", +"j=. c #135785", +"k=. c #193C83", +"l=. c #195A8B", +"m=. c #0AABE6", +"n=. c #204577", +"o=. c #17418E", +"p=. c #0873EC", +"q=. c #1C4B95", +"r=. c #203569", +"s=. c #223864", +"t=. c #1E3975", +"u=. c #21366A", +"v=. c #1D3E7C", +"w=. c #1A4189", +"x=. c #16489A", +"y=. c #164B9A", +"z=. c #174694", +"A=. c #1C447E", +"B=. c #194A8B", +"C=. c #145BA3", +"D=. c #1B4D82", +"E=. c #1D477B", +"F=. c #194C8C", +"G=. c #1A548A", +"H=. c #263C53", +"I=. c #223D63", +"J=. c #283A4A", +"K=. c #254156", +"L=. c #273B4C", +"M=. c #253C58", +"N=. c #224764", +"O=. c #244059", +"P=. c #2C3038", +"Q=. c #253B55", +"R=. c #293547", +"S=. c #2B333C", +"T=. c #273C4D", +"U=. c #293643", +"V=. c #2D2C36", +"W=. c #2C3234", +"X=. c #2A3A35", +"Y=. c #284033", +"Z=. c #245A47", +"`=. c #226145", +" -. c #2B3132", +".-. c #2A3B35", +"+-. c #274734", +"@-. c #2A3834", +"#-. c #293D34", +"$-. c #284233", +"%-. c #284234", +"&-. c #284134", +"*-. c #0ADA41", +"=-. c #1A9138", +"--. c #119726", +";-. c #246435", +">-. c #109629", +",-. c #138628", +"'-. c #2F2436", +")-. c #2C3135", +"!-. c #2D2B35", +"~-. c #2D3135", +"{-. c #1E771E", +"]-. c #274C2D", +"^-. c #2D3036", +"/-. c #227130", +"(-. c #1C7626", +"_-. c #23572A", +":-. c #2C2835", +"<-. c #0AA93F", +"[-. c #00C452", +"}-. c #20543F", +"|-. c #2B7C1A", +"1-. c #2F6B24", +"2-. c #2D2737", +"3-. c #3D3D44", +"4-. c #B1B1B2", +"5-. c #B6B5B5", +"6-. c #BDB2BB", +"7-. c #1FD841", +"8-. c #95AF9A", +"9-. c #C5C0C4", +"0-. c #757078", +"a-. c #1C3529", +"b-. c #0AC033", +"c-. c #158230", +"d-. c #2F2334", +"e-. c #2E2634", +"f-. c #2A2E32", +"g-. c #12752B", +"h-. c #06C932", +"i-. c #11782B", +"j-. c #2D2633", +"k-. c #2C2C35", +"l-. c #A7A7A9", +"m-. c #CCD0CB", +"n-. c #C4B5C9", +"o-. c #68C84B", +"p-. c #39FF00", +"q-. c #3FFC02", +"r-. c #3EFF00", +"s-. c #3FFE01", +"t-. c #57F126", +"u-. c #1E4E59", +"v-. c #1F4F5A", +"w-. c #2E262E", +"x-. c #2C2F38", +"y-. c #30272D", +"z-. c #1E4251", +"A-. c #0981A3", +"B-. c #0888AC", +"C-. c #194F62", +"D-. c #2F272E", +"E-. c #2D2A32", +"F-. c #2A383F", +"G-. c #08A2B8", +"H-. c #00CCE5", +"I-. c #03DBED", +"J-. c #254852", +"K-. c #2E2830", +"L-. c #2D2831", +"M-. c #28474D", +"N-. c #06BAC9", +"O-. c #18ADB9", +"P-. c #2E373E", +"Q-. c #2F252E", +"R-. c #156B6E", +"S-. c #195E63", +"T-. c #283E41", +"U-. c #20645B", +"V-. c #25504E", +"W-. c #27484A", +"X-. c #254D4E", +"Y-. c #206962", +"Z-. c #216262", +"`-. c #1E6E69", +" ;. c #188982", +".;. c #206561", +"+;. c #1C717A", +"@;. c #1F5772", +"#;. c #205769", +"$;. c #205269", +"%;. c #205F6D", +"&;. c #1E5B72", +"*;. c #14748C", +"=;. c #127683", +"-;. c #28374D", +";;. c #1B5986", +">;. c #13E4E0", +",;. c #12F0E9", +"';. c #13E1E1", +");. c #14C7D2", +"!;. c #0FAEBD", +"~;. c #166596", +"{;. c #174796", +"];. c #0C63A0", +"^;. c #0599D0", +"/;. c #0894D3", +"(;. c #1B3589", +"_;. c #0D4C9E", +":;. c #134893", +"<;. c #164B98", +"[;. c #0951BB", +"};. c #1C3D83", +"|;. c #183E8E", +"1;. c #173F94", +"2;. c #193D8E", +"3;. c #143FA4", +"4;. c #1342A7", +"5;. c #19408B", +"6;. c #1B4184", +"7;. c #1C4180", +"8;. c #1A4A88", +"9;. c #15539C", +"0;. c #15589C", +"a;. c #175294", +"b;. c #1D4379", +"c;. c #1E4976", +"d;. c #1B4D84", +"e;. c #1C4C7D", +"f;. c #1C4E7E", +"g;. c #1C4C7C", +"h;. c #214466", +"i;. c #20436C", +"j;. c #254055", +"k;. c #28354A", +"l;. c #273D4F", +"m;. c #283546", +"n;. c #263F52", +"o;. c #24415C", +"p;. c #263D53", +"q;. c #254256", +"r;. c #2A3340", +"s;. c #2D2A34", +"t;. c #293B3C", +"u;. c #273D49", +"v;. c #254847", +"w;. c #283E33", +"x;. c #0CCA77", +"y;. c #0FCF6D", +"z;. c #2B3331", +"A;. c #274735", +"B;. c #2A3735", +"C;. c #293B35", +"D;. c #293F34", +"E;. c #274534", +"F;. c #293E34", +"G;. c #284334", +"H;. c #244F32", +"I;. c #1C8A3B", +"J;. c #24673A", +"K;. c #0BB228", +"L;. c #208437", +"M;. c #1B6D2D", +"N;. c #0E9825", +"O;. c #2D2F34", +"P;. c #2E2637", +"Q;. c #275427", +"R;. c #22701D", +"S;. c #2E2537", +"T;. c #2A5030", +"U;. c #228126", +"V;. c #1E7323", +"W;. c #263D33", +"X;. c #03BE47", +"Y;. c #08B848", +"Z;. c #317E1A", +"`;. c #2F3832", +" >. c #2C2A35", +".>. c #38383F", +"+>. c #B4B5B4", +"@>. c #BBB6BA", +"#>. c #9FB3A3", +"$>. c #52C167", +"%>. c #C7BCC4", +"&>. c #7B7E7F", +"*>. c #241D2B", +"=>. c #148F31", +"->. c #0AB12E", +";>. c #273D33", +">>. c #302034", +",>. c #2E2A36", +"'>. c #0E8A2C", +")>. c #07C532", +"!>. c #37373F", +"~>. c #BEBEBF", +"{>. c #D0D3CE", +"]>. c #AD9EB4", +"^>. c #57B93D", +"/>. c #3BFC01", +"(>. c #3BFE01", +"_>. c #35FF00", +":>. c #54F126", +"<>. c #403B49", +"[>. c #2D2D36", +"}>. c #2C2E37", +"|>. c #0E7A88", +"1>. c #107A88", +"2>. c #2C2F37", +"3>. c #30282F", +"4>. c #1F4251", +"5>. c #194E61", +"6>. c #2F282F", +"7>. c #2D2E37", +"8>. c #2D3038", +"9>. c #30212A", +"0>. c #21676D", +"a>. c #04E8EC", +"b>. c #0ABDD5", +"c>. c #01F3FF", +"d>. c #1E969A", +"e>. c #2F1D26", +"f>. c #2C333B", +"g>. c #312028", +"h>. c #166675", +"i>. c #1E515E", +"j>. c #30222A", +"k>. c #2D2F38", +"l>. c #2D2F37", +"m>. c #30252F", +"n>. c #156B6C", +"o>. c #196365", +"p>. c #2F2C32", +"q>. c #274748", +"r>. c #26504C", +"s>. c #21645B", +"t>. c #255350", +"u>. c #264E4C", +"v>. c #245555", +"w>. c #206864", +"x>. c #19897B", +"y>. c #21635E", +"z>. c #216560", +"A>. c #225E5E", +"B>. c #23575A", +"C>. c #234E62", +"D>. c #1F6073", +"E>. c #1C6D7C", +"F>. c #225865", +"G>. c #244F5D", +"H>. c #1C6783", +"I>. c #244761", +"J>. c #0C8C9D", +"K>. c #1E5765", +"L>. c #1C879A", +"M>. c #12F3EB", +"N>. c #18AAB8", +"O>. c #0CA4C6", +"P>. c #0AD6FB", +"Q>. c #11A1D1", +"R>. c #1B3A89", +"S>. c #184A87", +"T>. c #15477C", +"U>. c #0D5DC4", +"V>. c #0985FF", +"W>. c #21427A", +"X>. c #1441A0", +"Y>. c #1B3A88", +"Z>. c #163F9D", +"`>. c #1A3D8C", +" ,. c #16429C", +".,. c #173F95", +"+,. c #1B4286", +"@,. c #1547A1", +"#,. c #174795", +"$,. c #1D497F", +"%,. c #1A4E8A", +"&,. c #1A4A8B", +"*,. c #19528F", +"=,. c #165A9A", +"-,. c #1B5287", +";,. c #1D4E7D", +">,. c #1463A3", +",,. c #175C97", +"',. c #1C5581", +"),. c #273B52", +"!,. c #253E5B", +"~,. c #264055", +"{,. c #264156", +"],. c #293849", +"^,. c #24485E", +"/,. c #28364C", +"(,. c #234B62", +"_,. c #264154", +":,. c #2C2E38", +"<,. c #2A3442", +"[,. c #293746", +"},. c #2A3B3B", +"|,. c #293B41", +"1,. c #2B3440", +"2,. c #1C743F", +"3,. c #16863F", +"4,. c #2B3835", +"5,. c #2A3D36", +"6,. c #293E36", +"7,. c #2A3C35", +"8,. c #274B34", +"9,. c #245534", +"0,. c #235C33", +"a,. c #206A32", +"b,. c #2B3233", +"c,. c #264E33", +"d,. c #0CA52A", +"e,. c #1A8E38", +"f,. c #215F31", +"g,. c #0AA424", +"h,. c #2C2F35", +"i,. c #2E2C36", +"j,. c #2E2F35", +"k,. c #2B2637", +"l,. c #2C3335", +"m,. c #257918", +"n,. c #2B462F", +"o,. c #2E2B38", +"p,. c #2B6F26", +"q,. c #20891E", +"r,. c #29472F", +"s,. c #2E2837", +"t,. c #302335", +"u,. c #205637", +"v,. c #05D940", +"w,. c #198C3A", +"x,. c #2E2737", +"y,. c #2D2F35", +"z,. c #A2A2A3", +"A,. c #B5B4B5", +"B,. c #B4B6B4", +"C,. c #BEB2BC", +"D,. c #5DC270", +"E,. c #1DD740", +"F,. c #A0BBA4", +"G,. c #969398", +"H,. c #281B2E", +"I,. c #1E6A37", +"J,. c #00F04C", +"K,. c #02F04F", +"L,. c #15973D", +"M,. c #2F2C37", +"N,. c #0B9B2D", +"O,. c #07C131", +"P,. c #19592B", +"Q,. c #2F2636", +"R,. c #2D2F36", +"S,. c #4F4F55", +"T,. c #D3D7D2", +"U,. c #918298", +"V,. c #4EB236", +"W,. c #36FF00", +"X,. c #36FC01", +"Y,. c #37FE01", +"Z,. c #31FF00", +"`,. c #51F126", +" '. c #2E2F36", +".'. c #1F505A", +"+'. c #088D9D", +"@'. c #204E59", +"#'. c #30292F", +"$'. c #2E2E37", +"%'. c #2D2E36", +"&'. c #28464E", +"*'. c #01F2F4", +"='. c #08FFFF", +"-'. c #18FFFF", +";'. c #2A6D76", +">'. c #2F222A", +",'. c #2D3139", +"''. c #2F2B32", +")'. c #127783", +"!'. c #234B55", +"~'. c #302930", +"{'. c #302931", +"]'. c #127673", +"^'. c #1D5B5B", +"/'. c #2C3A3C", +"('. c #274C4A", +"_'. c #2D3238", +":'. c #264F4B", +"<'. c #235E56", +"['. c #245A55", +"}'. c #1D796A", +"|'. c #255553", +"1'. c #1E7368", +"2'. c #264F4F", +"3'. c #1E6F6E", +"4'. c #1D6D73", +"5'. c #205C6D", +"6'. c #24515C", +"7'. c #235261", +"8'. c #21576B", +"9'. c #20536F", +"0'. c #224869", +"a'. c #186A8A", +"b'. c #0C809A", +"c'. c #14D2D5", +"d'. c #14CDD6", +"e'. c #1067A7", +"f'. c #0A5BAD", +"g'. c #15449D", +"h'. c #1A3E8E", +"i'. c #0E5F97", +"j'. c #1059AA", +"k'. c #1956B1", +"l'. c #1445A6", +"m'. c #1C3D81", +"n'. c #1D3E80", +"o'. c #1A3A8A", +"p'. c #1A3D8B", +"q'. c #1D3D7F", +"r'. c #21386E", +"s'. c #1D3F7D", +"t'. c #1543A1", +"u'. c #19438F", +"v'. c #1552A1", +"w'. c #174C96", +"x'. c #1A488A", +"y'. c #1361AA", +"z'. c #1557A0", +"A'. c #16579E", +"B'. c #175F99", +"C'. c #1C5584", +"D'. c #1B5787", +"E'. c #17639A", +"F'. c #205171", +"G'. c #1F5176", +"H'. c #234962", +"I'. c #1D557D", +"J'. c #25455B", +"K'. c #2A3947", +"L'. c #264658", +"M'. c #2A3944", +"N'. c #2C323E", +"O'. c #293C4B", +"P'. c #2A3844", +"Q'. c #2B3541", +"R'. c #2C343A", +"S'. c #293F3E", +"T'. c #293E40", +"U'. c #2B3140", +"V'. c #294534", +"W'. c #168A3B", +"X'. c #2C3136", +"Y'. c #2C3436", +"Z'. c #2B3836", +"`'. c #2C3536", +" ). c #284535", +".). c #274A35", +"+). c #245B33", +"@). c #255334", +"#). c #206A33", +"$). c #1E7632", +"%). c #226534", +"&). c #109B2C", +"*). c #15B73D", +"=). c #265233", +"-). c #08AD24", +";). c #2F2A36", +">). c #2E2D35", +",). c #2B2936", +"'). c #353934", +")). c #316E19", +"!). c #2B5F13", +"~). c #301834", +"{). c #31422E", +"]). c #2A891A", +"^). c #266826", +"/). c #2F2937", +"(). c #2D2C38", +"_). c #345D22", +":). c #20A227", +"<). c #00D752", +"[). c #19633F", +"}). c #312434", +"|). c #99999B", +"1). c #9FB2A3", +"2). c #21D543", +"3). c #5ACC6F", +"4). c #9E949E", +"5). c #0CCB51", +"6). c #08FF6B", +"7). c #10F964", +"8). c #00FF4B", +"9). c #1B8339", +"0). c #312035", +"a). c #2C3235", +"b). c #302A37", +"c). c #24392F", +"d). c #0BAA2F", +"e). c #07BA30", +"f). c #1C4C2C", +"g). c #312637", +"h). c #2F2F38", +"i). c #57575D", +"j). c #D0D0CF", +"k). c #71627A", +"l). c #4CB236", +"m). c #32FF00", +"n). c #33FC01", +"o). c #33FE01", +"p). c #2DFF00", +"q). c #4EF126", +"r). c #0E7B8A", +"s). c #127583", +"t). c #2E2C34", +"u). c #0887AB", +"v). c #194D5F", +"w). c #205E6D", +"x). c #19A3B5", +"y). c #14ABBF", +"z). c #125E77", +"A). c #2F2A31", +"B). c #2F2A32", +"C). c #13747E", +"D). c #25444D", +"E). c #2F2831", +"F). c #2F2A33", +"G). c #0F8178", +"H). c #187969", +"I). c #235C54", +"J). c #235D56", +"K). c #245852", +"L). c #1F6F61", +"M). c #1D7968", +"N). c #206B5F", +"O). c #21685D", +"P). c #1E716B", +"Q). c #1F6F68", +"R). c #1C7674", +"S). c #168B8F", +"T). c #224669", +"U). c #204076", +"V). c #107595", +"W). c #0F669C", +"X). c #185399", +"Y). c #17659C", +"Z). c #167DAB", +"`). c #168FB7", +" !. c #14C8D3", +".!. c #0CB2D7", +"+!. c #115793", +"@!. c #164E8A", +"#!. c #1C3386", +"$!. c #0E8CB9", +"%!. c #0C9BE2", +"&!. c #183290", +"*!. c #1A408D", +"=!. c #1F3873", +"-!. c #1242AF", +";!. c #1A3A89", +">!. c #1B3B88", +",!. c #194890", +"'!. c #1A4489", +")!. c #194590", +"!!. c #223B67", +"~!. c #213B6D", +"{!. c #1D487E", +"]!. c #194C8F", +"^!. c #21436C", +"/!. c #1A5289", +"(!. c #0C69C6", +"_!. c #1452A4", +":!. c #204F72", +"~. c #2EFF00", +",~. c #2FFC01", +"'~. c #2FFF00", +")~. c #30FE01", +"!~. c #29FF00", +"~~. c #4BF126", +"{~. c #413C4A", +"]~. c #2E3038", +"^~. c #312830", +"/~. c #1F515D", +"(~. c #098C9C", +"_~. c #234953", +":~. c #2E2F38", +"<~. c #312930", +"[~. c #0787AB", +"}~. c #1C4A5B", +"|~. c #31282F", +"1~. c #30272E", +"2~. c #321B22", +"3~. c #1F4558", +"4~. c #058DB0", +"5~. c #1E4A5B", +"6~. c #2F2B34", +"7~. c #13757C", +"8~. c #25464F", +"9~. c #2E2D36", +"0~. c #2E3037", +"a~. c #2D3639", +"b~. c #0E8677", +"c~. c #197766", +"d~. c #26564B", +"e~. c #25574F", +"f~. c #245A51", +"g~. c #22665C", +"h~. c #245D56", +"i~. c #236156", +"j~. c #284A4B", +"k~. c #245856", +"l~. c #274C4D", +"m~. c #235D5B", +"n~. c #245959", +"o~. c #264E52", +"p~. c #1E7175", +"q~. c #264759", +"r~. c #254F5A", +"s~. c #284251", +"t~. c #225965", +"u~. c #235764", +"v~. c #25495F", +"w~. c #1F5178", +"x~. c #174F99", +"y~. c #195E8F", +"z~. c #0F7E8D", +"A~. c #1B4D7F", +"B~. c #1264B1", +"C~. c #1D4081", +"D~. c #195291", +"E~. c #1C4583", +"F~. c #1969A2", +"G~. c #11D7E1", +"H~. c #11E5E8", +"I~. c #0A5AB4", +"J~. c #0864BE", +"K~. c #143BA3", +"L~. c #0A79DA", +"M~. c #0B8EFC", +"N~. c #143AA6", +"O~. c #1A3F8D", +"P~. c #143DA6", +"Q~. c #0F3EBC", +"R~. c #0F46BE", +"S~. c #1543A3", +"T~. c #173C99", +"U~. c #1C3C86", +"V~. c #1C3C83", +"W~. c #1E347C", +"X~. c #183F96", +"Y~. c #203F74", +"Z~. c #1A498F", +"`~. c #1C4E85", +" {. c #195B93", +".{. c #195391", +"+{. c #1559A3", +"@{. c #1B5489", +"#{. c #1B4F8A", +"${. c #1C5A82", +"%{. c #1C6184", +"&{. c #1A618C", +"*{. c #22466C", +"={. c #244D63", +"-{. c #25455E", +";{. c #25445C", +">{. c #254A5F", +",{. c #284150", +"'{. c #284050", +"){. c #25485E", +"!{. c #264859", +"~{. c #2C333C", +"{{. c #27474B", +"]{. c #255246", +"^{. c #294743", +"/{. c #243E46", +"({. c #3B5E32", +"_{. c #5AE515", +":{. c #1B6F3F", +"<{. c #2F2D35", +"[{. c #2B3B37", +"}{. c #284B36", +"|{. c #2B3E39", +"1{. c #2A3F36", +"2{. c #294535", +"3{. c #255536", +"4{. c #294736", +"5{. c #274F35", +"6{. c #245935", +"7{. c #284C37", +"8{. c #1A6F2C", +"9{. c #17892E", +"0{. c #294B38", +"a{. c #119429", +"b{. c #1C672D", +"c{. c #312438", +"d{. c #2E3036", +"e{. c #2F3036", +"f{. c #2C2838", +"g{. c #374A32", +"h{. c #74F300", +"i{. c #39F24B", +"j{. c #02FEC7", +"k{. c #05FF9B", +"l{. c #1BCD4F", +"m{. c #305722", +"n{. c #2E2A3A", +"o{. c #2E2A38", +"p{. c #37731E", +"q{. c #3D791C", +"r{. c #302B39", +"s{. c #2D2A33", +"t{. c #07B646", +"u{. c #06B64A", +"v{. c #2D2834", +"w{. c #2F2E37", +"x{. c #2E2F37", +"y{. c #808084", +"z{. c #C0C0BF", +"A{. c #B5B7B5", +"B{. c #BCB7BB", +"C{. c #25D947", +"D{. c #4BC262", +"E{. c #422B44", +"F{. c #0EAB3C", +"G{. c #01ED38", +"H{. c #04EF3D", +"I{. c #1A6D32", +"J{. c #312337", +"K{. c #2D3137", +"L{. c #2D3136", +"M{. c #312638", +"N{. c #1C542D", +"O{. c #07C031", +"P{. c #0BA42F", +"Q{. c #56565C", +"R{. c #D1D5D0", +"S{. c #6C5C75", +"T{. c #49B336", +"U{. c #2AFF00", +"V{. c #2BFC01", +"W{. c #2BFF00", +"X{. c #2CFE01", +"Y{. c #25FF00", +"Z{. c #48F126", +"`{. c #2F2E35", +" ]. c #0D7E8D", +".]. c #137481", +"+]. c #312A30", +"@]. c #204250", +"#]. c #0985A8", +"$]. c #204757", +"%]. c #2F2E36", +"&]. c #2E3139", +"*]. c #2E333B", +"=]. c #16667E", +"-]. c #0883A3", +";]. c #293640", +">]. c #322830", +",]. c #12777B", +"']. c #25474E", +")]. c #312932", +"!]. c #2E3238", +"~]. c #2D353A", +"{]. c #284E45", +"]]. c #0F8775", +"^]. c #158B6E", +"/]. c #217057", +"(]. c #226756", +"_]. c #294945", +":]. c #245C51", +"<]. c #206E5D", +"[]. c #26534C", +"}]. c #236457", +"|]. c #22635C", +"1]. c #22665A", +"2]. c #265251", +"3]. c #294749", +"4]. c #26504F", +"5]. c #2A4446", +"6]. c #244E60", +"7]. c #215F6B", +"8]. c #264E59", +"9]. c #235463", +"0]. c #245263", +"a]. c #1F5978", +"b]. c #22406D", +"c]. c #17609A", +"d]. c #204C7A", +"e]. c #136E96", +"f]. c #14617A", +"g]. c #1D3C7F", +"h]. c #1A4E8D", +"i]. c #184596", +"j]. c #1249AE", +"k]. c #1A418F", +"l]. c #1254AC", +"m]. c #10EDEE", +"n]. c #12F2EC", +"o]. c #007BD8", +"p]. c #05CEF6", +"q]. c #0E75D7", +"r]. c #0E41BF", +"s]. c #0E4BC9", +"t]. c #0D3DC3", +"u]. c #0E43C3", +"v]. c #0B3FCE", +"w]. c #0645E5", +"x]. c #0C43CA", +"y]. c #0C43CB", +"z]. c #163FA0", +"A]. c #0F47BC", +"B]. c #0A4AD0", +"C]. c #1149B4", +"D]. c #1C3586", +"E]. c #184197", +"F]. c #213D72", +"G]. c #1C3F85", +"H]. c #185298", +"I]. c #175999", +"J]. c #1F507A", +"K]. c #166B9F", +"L]. c #1A5B8E", +"M]. c #1E4C7E", +"N]. c #1E5B7F", +"O]. c #1F5677", +"P]. c #1A658F", +"Q]. c #1B6288", +"R]. c #215471", +"S]. c #22526A", +"T]. c #264459", +"U]. c #234F68", +"V]. c #274857", +"W]. c #284454", +"X]. c #2A3E4B", +"Y]. c #293F4C", +"Z]. c #254F50", +"`]. c #27474F", +" ^. c #264F46", +".^. c #294143", +"+^. c #2C4342", +"@^. c #459821", +"#^. c #1B8843", +"$^. c #2D2E38", +"%^. c #2D3736", +"&^. c #284B37", +"*^. c #25553C", +"=^. c #294538", +"-^. c #284D35", +";^. c #265536", +">^. c #265336", +",^. c #236036", +"'^. c #255735", +")^. c #275237", +"!^. c #14942E", +"~^. c #18812E", +"{^. c #2F343A", +"]^. c #187F2C", +"^^. c #167C2A", +"/^. c #322338", +"(^. c #2E3136", +"_^. c #2F3136", +":^. c #2C253C", +"<^. c #3C7119", +"[^. c #33CE35", +"}^. c #00F487", +"|^. c #00E177", +"1^. c #48E13D", +"2^. c #44492A", +"3^. c #2A293A", +"4^. c #32472E", +"5^. c #418D13", +"6^. c #364630", +"7^. c #312B36", +"8^. c #283A35", +"9^. c #00D24C", +"0^. c #108E42", +"a^. c #322134", +"b^. c #2E3137", +"c^. c #313139", +"d^. c #C1C1C0", +"e^. c #5CC06F", +"f^. c #23DF46", +"g^. c #304C3C", +"h^. c #2E2835", +"i^. c #169E3A", +"j^. c #12A036", +"k^. c #0BB333", +"l^. c #08B12E", +"m^. c #22452F", +"n^. c #312938", +"o^. c #312537", +"p^. c #0BB433", +"q^. c #303039", +"r^. c #262630", +"s^. c #D1D4CF", +"t^. c #47B336", +"u^. c #26FF00", +"v^. c #28FC01", +"w^. c #27FF00", +"x^. c #28FE01", +"y^. c #21FF00", +"z^. c #45F126", +"A^. c #413C4B", +"B^. c #2E3039", +"C^. c #312931", +"D^. c #1C5763", +"E^. c #098C9D", +"F^. c #244751", +"G^. c #312A31", +"H^. c #204150", +"I^. c #0881A3", +"J^. c #0885A8", +"K^. c #204656", +"L^. c #0C7E9D", +"M^. c #116B85", +"N^. c #2E2D34", +"O^. c #0E8485", +"P^. c #26464D", +"Q^. c #302933", +"R^. c #2B3C3F", +"S^. c #294541", +"T^. c #2B4342", +"U^. c #0B987C", +"V^. c #139572", +"W^. c #255C4E", +"X^. c #245D50", +"Y^. c #226354", +"Z^. c #1D7C62", +"`^. c #236354", +" /. c #26534B", +"./. c #1E7665", +"+/. c #1C7E66", +"@/. c #1E7767", +"#/. c #216765", +"$/. c #294546", +"%/. c #26524F", +"&/. c #235A5F", +"*/. c #22576B", +"=/. c #26505A", +"-/. c #21606D", +";/. c #22556E", +">/. c #264259", +",/. c #214871", +"'/. c #1A538C", +")/. c #1F4F7B", +"!/. c #1B588B", +"~/. c #07BBC4", +"{/. c #0EA9CA", +"]/. c #1B488C", +"^/. c #1657A0", +"//. c #0E53C1", +"(/. c #1048B9", +"_/. c #0A40D1", +":/. c #0E70D5", +"(. c #25252F", +",(. c #65656A", +"'(. c #B6B7B6", +")(. c #BDB8BC", +"!(. c #2ADD4B", +"~(. c #1D9236", +"{(. c #2F2337", +"](. c #312437", +"^(. c #332038", +"/(. c #204B2F", +"((. c #08BC31", +"_(. c #0BA32E", +":(. c #283633", +"<(. c #19632E", +"[(. c #D0D4CF", +"}(. c #45B337", +"|(. c #22FF00", +"1(. c #24FC01", +"2(. c #23FF00", +"3(. c #25FE01", +"4(. c #1DFF00", +"5(. c #42F126", +"6(. c #423D4B", +"7(. c #2F3038", +"8(. c #302E36", +"9(. c #2C343D", +"0(. c #0C8190", +"a(. c #166E7B", +"b(. c #312B33", +"c(. c #2F3139", +"d(. c #322B31", +"e(. c #214150", +"f(. c #214555", +"g(. c #322A31", +"h(. c #2E323A", +"i(. c #2F323A", +"j(. c #2F313A", +"k(. c #312B32", +"l(. c #264250", +"m(. c #0789AC", +"n(. c #1B5667", +"o(. c #127C78", +"p(. c #293F45", +"q(. c #312B34", +"r(. c #2C3D3E", +"s(. c #285045", +"t(. c #294C45", +"u(. c #236453", +"v(. c #0D9372", +"w(. c #206355", +"x(. c #28534A", +"y(. c #284E49", +"z(. c #1E7A5E", +"A(. c #226854", +"B(. c #255E4E", +"C(. c #255D51", +"D(. c #26594F", +"E(. c #246254", +"F(. c #2D3741", +"G(. c #2B4142", +"H(. c #265256", +"I(. c #255958", +"J(. c #2A454C", +"K(. c #2A404E", +"L(. c #2B3F47", +"M(. c #294A50", +"N(. c #24565F", +"O(. c #22606E", +"P(. c #244F64", +"Q(. c #176C9E", +"R(. c #1A5991", +"S(. c #1C4D87", +"T(. c #0CBEDB", +"U(. c #11B9CC", +"V(. c #1A428C", +"W(. c #155DA5", +"X(. c #0E4EC1", +"Y(. c #114CB5", +"Z(. c #0C58CC", +"`(. c #0C45C9", +" _. c #10D8EB", +"._. c #0766EE", +"+_. c #0B4EDC", +"@_. c #013BF1", +"#_. c #0541E8", +"$_. c #0444EC", +"%_. c #0242F6", +"&_. c #0442EC", +"*_. c #063FE2", +"=_. c #0343EF", +"-_. c #0A42D4", +";_. c #0646E3", +">_. c #093CD6", +",_. c #063DE5", +"'_. c #0846D9", +")_. c #0447EB", +"!_. c #0B46D0", +"~_. c #0D43C5", +"{_. c #0F3DBF", +"]_. c #1547A6", +"^_. c #104FB9", +"/_. c #1654A2", +"(_. c #185897", +"__. c #1D4D82", +":_. c #186298", +"<_. c #196994", +"[_. c #156CA4", +"}_. c #1E5B81", +"|_. c #264460", +"1_. c #225670", +"2_. c #1279AF", +"3_. c #1B678A", +"4_. c #205D78", +"5_. c #215872", +"6_. c #244E66", +"7_. c #274A5C", +"8_. c #235069", +"9_. c #284856", +"0_. c #284B4A", +"a_. c #2A3E40", +"b_. c #1A9581", +"c_. c #0FCE93", +"d_. c #2A413E", +"e_. c #245448", +"f_. c #2F4F3D", +"g_. c #219A34", +"h_. c #21593D", +"i_. c #265B37", +"j_. c #2F3137", +"k_. c #284F38", +"l_. c #246138", +"m_. c #246139", +"n_. c #275337", +"o_. c #294D38", +"p_. c #226A36", +"q_. c #265A38", +"r_. c #1A8030", +"s_. c #18802D", +"t_. c #303239", +"u_. c #294734", +"v_. c #0F9A27", +"w_. c #312739", +"x_. c #26622D", +"y_. c #13872C", +"z_. c #2E4F2D", +"A_. c #4B9409", +"B_. c #1DA246", +"C_. c #0C9150", +"D_. c #322B34", +"E_. c #385629", +"F_. c #498B13", +"G_. c #353D34", +"H_. c #2E2C38", +"I_. c #303037", +"J_. c #2F3238", +"K_. c #332235", +"L_. c #16793F", +"M_. c #00DD4F", +"N_. c #244A38", +"O_. c #322737", +"P_. c #5A5A5F", +"Q_. c #B6B8B6", +"R_. c #C0B4BE", +"S_. c #62C274", +"T_. c #0BC72F", +"U_. c #312D39", +"V_. c #2E3437", +"W_. c #322738", +"X_. c #1A622E", +"Y_. c #07C632", +"Z_. c #0F902E", +"`_. c #302F38", +" :. c #2F3037", +".:. c #2F2D37", +"+:. c #31313A", +"@:. c #56565D", +"#:. c #CDCDCC", +"$:. c #CFD3CE", +"%:. c #6D5C75", +"&:. c #44B337", +"*:. c #1EFF00", +"=:. c #20FC01", +"-:. c #20FF00", +";:. c #21FE01", +">:. c #19FF00", +",:. c #3FF126", +"':. c #433D4B", +"):. c #322931", +"!:. c #1D5965", +"~:. c #0A8A9A", +"{:. c #27424C", +"]:. c #322B32", +"^:. c #0A81A3", +"/:. c #0A84A7", +"(:. c #214554", +"_:. c #34252C", +"::. c #32232C", +"<:. c #32262E", +"[:. c #32292F", +"}:. c #1C5A6F", +"|:. c #078BA9", +"1:. c #0E8481", +"2:. c #2E363D", +"3:. c #312835", +"4:. c #294E43", +"5:. c #2A4842", +"6:. c #285246", +"7:. c #22664E", +"8:. c #09AB87", +"9:. c #216755", +"0:. c #255F4C", +"a:. c #26594A", +"b:. c #255C4A", +"c:. c #226953", +"d:. c #207256", +"e:. c #216E58", +"f:. c #294C44", +"g:. c #294A4A", +"h:. c #294C4B", +"i:. c #284E4E", +"j:. c #2A4747", +"k:. c #255956", +"l:. c #206B6B", +"m:. c #2B3C4B", +"n:. c #26545B", +"o:. c #235D67", +"p:. c #255161", +"q:. c #215F73", +"r:. c #225D6E", +"s:. c #1E5982", +"t:. c #1C5289", +"u:. c #1C5A89", +"v:. c #16B4C7", +"w:. c #12EFE9", +"x:. c #11D5DC", +"y:. c #1087BF", +"z:. c #1152BC", +"A:. c #0A48D3", +"B:. c #0940D5", +"C:. c #074ADF", +"D:. c #0662F1", +"E:. c #0BB5F2", +"F:. c #023CF3", +"G:. c #0B3BCE", +"H:. c #093FDA", +"I:. c #0042FE", +"J:. c #013FF9", +"K:. c #053FE7", +"L:. c #0243F4", +"M:. c #0143F7", +"N:. c #0340EF", +"O:. c #0541EA", +"P:. c #0341EE", +"Q:. c #0647E4", +"R:. c #0642E6", +"S:. c #0A40D4", +"T:. c #0C3FCB", +"U:. c #034AF1", +"V:. c #0B42CE", +"W:. c #114AB5", +"X:. c #1646A2", +"Y:. c #194C96", +"Z:. c #204E79", +"`:. c #1A5A91", +" <. c #196694", +".<. c #1F4B7B", +"+<. c #1B568D", +"@<. c #1C6389", +"#<. c #1579A4", +"$<. c #1673A3", +"%<. c #27425B", +"&<. c #1F5A7C", +"*<. c #215773", +"=<. c #215B75", +"-<. c #284457", +";<. c #284A50", +"><. c #2C3B3E", +",<. c #2C3C45", +"'<. c #1F6A5C", +")<. c #119F59", +"!<. c #2A454B", +"~<. c #264E53", +"{<. c #2C493B", +"]<. c #249634", +"^<. c #1E6941", +"/<. c #2C4234", +"(<. c #2B4438", +"_<. c #2D3A38", +":<. c #2A4838", +"<<. c #1F7739", +"[<. c #255B38", +"}<. c #226938", +"|<. c #255C37", +"1<. c #245F38", +"2<. c #28543A", +"3<. c #1F6D33", +"4<. c #12962B", +"5<. c #285139", +"6<. c #2A4837", +"7<. c #109727", +"8<. c #2A3F35", +"9<. c #312C39", +"0<. c #302E38", +"a<. c #303339", +"b<. c #178624", +"c<. c #28752C", +"d<. c #336D21", +"e<. c #3C8119", +"f<. c #3B542F", +"g<. c #0BA052", +"h<. c #1A7947", +"i<. c #332934", +"j<. c #488715", +"k<. c #436325", +"l<. c #2E2A3B", +"m<. c #303137", +"n<. c #303138", +"o<. c #302636", +"p<. c #0AA246", +"q<. c #04C94A", +"r<. c #312C38", +"s<. c #2F3138", +"t<. c #B6B7B7", +"u<. c #BBB7BA", +"v<. c #ACB7AE", +"w<. c #1DCA3E", +"x<. c #0F8B29", +"y<. c #302937", +"z<. c #14792D", +"A<. c #07CA32", +"B<. c #147A2E", +"C<. c #302837", +"D<. c #2F2F39", +"E<. c #272731", +"F<. c #42B337", +"G<. c #1AFF00", +"H<. c #1DFC01", +"I<. c #1CFF00", +"J<. c #1DFE01", +"K<. c #15FF00", +"L<. c #3CF126", +"M<. c #433D4C", +"N<. c #2F3039", +"O<. c #302E37", +"P<. c #2D353E", +"Q<. c #0C8291", +"R<. c #322B33", +"S<. c #0981A4", +"T<. c #0B7FA3", +"U<. c #127F8D", +"V<. c #0FBDC0", +"W<. c #23616C", +"X<. c #302C35", +"Y<. c #11738D", +"Z<. c #059A9B", +"`<. c #2C393D", +" [. c #2D3C3D", +".[. c #2B4340", +"+[. c #275648", +"@[. c #29473C", +"#[. c #1AA0A1", +"$[. c #00FFED", +"%[. c #0EB992", +"&[. c #2A4A40", +"*[. c #255E4B", +"=[. c #226952", +"-[. c #1E7C5A", +";[. c #216D51", +">[. c #236654", +",[. c #294C46", +"'[. c #2A4843", +")[. c #284D4C", +"![. c #27504F", +"~[. c #26515B", +"{[. c #2C4146", +"][. c #1E8F8E", +"^[. c #20868A", +"/[. c #1F6B79", +"([. c #1F6D7A", +"_[. c #216474", +":[. c #215A74", +"<[. c #1C819B", +"[[. c #1B89A3", +"}[. c #1E5A80", +"|[. c #195794", +"1[. c #13E4E3", +"2[. c #0FBFE6", +"3[. c #076DE8", +"4[. c #054FEB", +"5[. c #0968E3", +"6[. c #0DC1F0", +"7[. c #075BE8", +"8[. c #0144F8", +"9[. c #0244F6", +"0[. c #003CFB", +"a[. c #0140F9", +"b[. c #013EF8", +"c[. c #043EED", +"d[. c #043FED", +"e[. c #033FF0", +"f[. c #0040FF", +"g[. c #0040FD", +"h[. c #013BF8", +"i[. c #0248F6", +"j[. c #023EF5", +"k[. c #033DF1", +"l[. c #0744DF", +"m[. c #0742E0", +"n[. c #0A3ED2", +"o[. c #0942D6", +"p[. c #0E49C2", +"q[. c #1247B1", +"r[. c #1054BC", +"s[. c #1A5191", +"t[. c #1457AA", +"u[. c #196596", +"v[. c #1C5189", +"w[. c #17609E", +"x[. c #18649A", +"y[. c #196394", +"z[. c #1E5F82", +"A[. c #1E5A81", +"B[. c #264761", +"C[. c #234E6B", +"D[. c #23576D", +"E[. c #284759", +"F[. c #2C3B49", +"G[. c #2B4145", +"H[. c #2B3D49", +"I[. c #2C3A48", +"J[. c #2D363A", +"K[. c #108B4C", +"L[. c #265254", +"M[. c #294544", +"N[. c #2D6F2F", +"O[. c #198240", +"P[. c #294848", +"Q[. c #284D3C", +"R[. c #2D3C37", +"S[. c #245F39", +"T[. c #20723A", +"U[. c #284E39", +"V[. c #1E793A", +"W[. c #236639", +"X[. c #294C39", +"Y[. c #265838", +"Z[. c #27583A", +"`[. c #235E35", +" }. c #177D2B", +".}. c #2A473A", +"+}. c #302E3A", +"@}. c #138D29", +"#}. c #255032", +"$}. c #32283A", +"%}. c #312B3A", +"&}. c #245B2D", +"*}. c #198C1C", +"=}. c #368D1D", +"-}. c #3B6F22", +";}. c #3D5230", +">}. c #263D3C", +",}. c #06B058", +"'}. c #2F822E", +")}. c #537D12", +"!}. c #323738", +"~}. c #2F2D39", +"{}. c #302F39", +"]}. c #312D38", +"^}. c #2A3639", +"/}. c #01C54C", +"(}. c #0CAA45", +"_}. c #43434B", +":}. c #B5B8B5", +"<}. c #C4B8C2", +"[}. c #57AF69", +"}}. c #00BB22", +"|}. c #32293A", +"1}. c #10902E", +"2}. c #07C732", +"3}. c #1B632F", +"4}. c #322739", +"5}. c #32323A", +"6}. c #282831", +"7}. c #CED2CD", +"8}. c #40B337", +"9}. c #16FF00", +"0}. c #19FC01", +"a}. c #18FF00", +"b}. c #1AFE01", +"c}. c #11FF00", +"d}. c #39F126", +"e}. c #443E4C", +"f}. c #30323A", +"g}. c #332A32", +"h}. c #1D5B67", +"i}. c #2A3F49", +"j}. c #322D34", +"k}. c #303139", +"l}. c #332C33", +"m}. c #223F4D", +"n}. c #0496B7", +"o}. c #00C5E4", +"p}. c #04E7F1", +"q}. c #00EFFF", +"r}. c #215E72", +"s}. c #33272E", +"t}. c #30323B", +"u}. c #332A33", +"v}. c #28434A", +"w}. c #01A3A2", +"x}. c #18666E", +"y}. c #275B43", +"z}. c #285245", +"A}. c #265D49", +"B}. c #295244", +"C}. c #0CC0B2", +"D}. c #01DDBE", +"E}. c #14E1C8", +"F}. c #295144", +"G}. c #255D4B", +"H}. c #265C4B", +"I}. c #2B4840", +"J}. c #2A4A44", +"K}. c #2A4946", +"L}. c #245F5C", +"M}. c #2B4544", +"N}. c #265654", +"O}. c #1C7188", +"P}. c #1D6588", +"Q}. c #1463A9", +"R}. c #196DA0", +"S}. c #13B7D2", +"T}. c #12E0E7", +"U}. c #12F1EC", +"V}. c #11E3ED", +"W}. c #0DCBEC", +"X}. c #0A8EEB", +"Y}. c #0346F2", +"Z}. c #033FF1", +"`}. c #0140F7", +" |. c #0639E5", +".|. c #0339EF", +"+|. c #0244F5", +"@|. c #023DF6", +"#|. c #023AF3", +"$|. c #013AF6", +"%|. c #013DF8", +"&|. c #053CE9", +"*|. c #023CF6", +"=|. c #023FF3", +"-|. c #024BF4", +";|. c #0548E9", +">|. c #064EE4", +",|. c #0C41CC", +"'|. c #0840DC", +")|. c #0B4BD0", +"!|. c #0E52C2", +"~|. c #17579F", +"{|. c #1154B7", +"]|. c #1658A5", +"^|. c #0E6AC2", +"/|. c #1E5D85", +"(|. c #23526E", +"_|. c #24446B", +":|. c #1C6D89", +"<|. c #1C658A", +"[|. c #1C6289", +"}|. c #24566A", +"||. c #225E73", +"1|. c #2D3848", +"2|. c #25565F", +"3|. c #25585B", +"4|. c #2E3A44", +"5|. c #294353", +"6|. c #2F4F42", +"7|. c #1CBF35", +"8|. c #1F654B", +"9|. c #2F3546", +"0|. c #302A3E", +"a|. c #2F6131", +"b|. c #169544", +"c|. c #255444", +"d|. c #28543C", +"e|. c #2B4838", +"f|. c #285438", +"g|. c #2C4438", +"h|. c #226C3A", +"i|. c #265D3A", +"j|. c #255E39", +"k|. c #265C3A", +"l|. c #226E3A", +"m|. c #246439", +"n|. c #226A39", +"o|. c #109D2C", +"p|. c #2D3F38", +"q|. c #351F3A", +"r|. c #1A7B2D", +"s|. c #34263A", +"t|. c #303338", +"u|. c #30253C", +"v|. c #2E3F35", +"w|. c #1C7B1E", +"x|. c #27791F", +"y|. c #388D1C", +"z|. c #323139", +"A|. c #3A7221", +"B|. c #3B5B32", +"C|. c #311E38", +"D|. c #206740", +"E|. c #13D048", +"F|. c #375730", +"G|. c #30283A", +"H|. c #2F3339", +"I|. c #332937", +"J|. c #205540", +"K|. c #00DA50", +"L|. c #14893F", +"M|. c #332637", +"N|. c #393940", +"O|. c #C2BFC1", +"P|. c #86918A", +"Q|. c #02AF25", +"R|. c #15922F", +"S|. c #322D3A", +"T|. c #293933", +"U|. c #0CA62F", +"V|. c #09BF32", +"W|. c #214F30", +"X|. c #33293A", +"Y|. c #32323B", +"Z|. c #CDD1CC", +"`|. c #3FB437", +" 1. c #13FF00", +".1. c #16FC01", +"+1. c #17FE01", +"@1. c #0EFF00", +"#1. c #37F126", +"$1. c #443E4D", +"%1. c #30313A", +"&1. c #312F37", +"*1. c #2D3740", +"=1. c #0C8493", +"-1. c #1A6673", +";1. c #332B34", +">1. c #32333A", +",1. c #0AB0BA", +"'1. c #07C1D7", +")1. c #07C3E2", +"!1. c #00E5FF", +"~1. c #16A5B2", +"{1. c #33282D", +"]1. c #2F373E", +"^1. c #31323A", +"/1. c #2C3E40", +"(1. c #08978B", +"_1. c #0889A7", +":1. c #1D6D5E", +"<1. c #21774E", +"[1. c #255F4B", +"}1. c #217353", +"|1. c #088366", +"11. c #0FBA99", +"21. c #24967F", +"31. c #216A4C", +"41. c #23694E", +"51. c #285547", +"61. c #236B51", +"71. c #27594A", +"81. c #2A4948", +"91. c #2B4945", +"01. c #294F4D", +"a1. c #27564D", +"b1. c #2E393D", +"c1. c #285151", +"d1. c #246157", +"e1. c #255C5C", +"f1. c #2A474C", +"g1. c #265A5C", +"h1. c #216C69", +"i1. c #23636A", +"j1. c #255864", +"k1. c #205D7A", +"l1. c #1D6986", +"m1. c #215A77", +"n1. c #1E5B84", +"o1. c #17689E", +"p1. c #1767A0", +"q1. c #18709B", +"r1. c #1D5C89", +"s1. c #18649D", +"t1. c #18599D", +"u1. c #185A9C", +"v1. c #0766E0", +"w1. c #0B55D2", +"x1. c #0A4AD6", +"y1. c #056FCA", +"z1. c #0555DD", +"A1. c #0358D3", +"B1. c #073DDF", +"C1. c #0242F4", +"D1. c #023BF3", +"E1. c #053BE7", +"F1. c #033EF0", +"G1. c #043CEE", +"H1. c #043AED", +"I1. c #0239F6", +"J1. c #013DF7", +"K1. c #023AF6", +"L1. c #0138F7", +"M1. c #0239F5", +"N1. c #0133FA", +"O1. c #043EEC", +"P1. c #033DF0", +"Q1. c #0047FF", +"R1. c #0143F8", +"S1. c #0344EF", +"T1. c #0448ED", +"U1. c #0549E9", +"V1. c #0946D8", +"W1. c #093FD9", +"X1. c #094BD7", +"Y1. c #0F50C0", +"Z1. c #1059BD", +"`1. c #0C51CD", +" 2. c #115EB8", +".2. c #155DA9", +"+2. c #1F517F", +"@2. c #186C9D", +"#2. c #196697", +"$2. c #1A6B93", +"%2. c #1F5D80", +"&2. c #1B6391", +"*2. c #1E6384", +"=2. c #1F5E81", +"-2. c #2A4357", +";2. c #206A75", +">2. c #255A61", +",2. c #2A4955", +"'2. c #274B5D", +")2. c #2E5E41", +"!2. c #2ED822", +"~2. c #1B7852", +"{2. c #294D4F", +"]2. c #284C44", +"^2. c #2A6637", +"/2. c #1A973F", +"(2. c #1B734B", +"_2. c #2C4638", +":2. c #2A4B3B", +"<2. c #2C4439", +"[2. c #24663C", +"}2. c #179C3F", +"|2. c #28523B", +"12. c #265E3B", +"22. c #1B8A3C", +"32. c #24663B", +"42. c #207139", +"52. c #138D2A", +"62. c #34263B", +"72. c #206530", +"82. c #1A762C", +"92. c #34243B", +"02. c #313039", +"a2. c #313239", +"b2. c #2F293B", +"c2. c #375331", +"d2. c #247D19", +"e2. c #245A28", +"f2. c #31771F", +"g2. c #347528", +"h2. c #30233E", +"i2. c #386F24", +"j2. c #3B5933", +"k2. c #2C263E", +"l2. c #49611D", +"m2. c #28AE37", +"n2. c #0C9954", +"o2. c #312D37", +"p2. c #31303A", +"q2. c #332838", +"r2. c #137C47", +"s2. c #00DC4E", +"t2. c #1D6B3B", +"u2. c #332638", +"v2. c #30333A", +"w2. c #B8B9B8", +"x2. c #C0C3C0", +"y2. c #928593", +"z2. c #156D2B", +"A2. c #08C72D", +"B2. c #264C34", +"C2. c #332A3A", +"D2. c #332B3B", +"E2. c #234831", +"F2. c #09B830", +"G2. c #0BB131", +"H2. c #283E34", +"I2. c #332C3B", +"J2. c #C2C2C3", +"K2. c #3DB438", +"L2. c #0FFF00", +"M2. c #12FC01", +"N2. c #13FE01", +"O2. c #0AFF00", +"P2. c #34F126", +"Q2. c #332B33", +"R2. c #19616E", +"S2. c #0B8797", +"T2. c #2B3D47", +"U2. c #322D36", +"V2. c #312D36", +"W2. c #0AD5D6", +"X2. c #00F1F9", +"Y2. c #00D7EF", +"Z2. c #0EFFFF", +"`2. c #2C9B9F", +" 3. c #31232C", +".3. c #30353D", +"+3. c #30343B", +"@3. c #2A4346", +"#3. c #108871", +"$3. c #127588", +"%3. c #0A879C", +"&3. c #255D42", +"*3. c #285D40", +"=3. c #10786A", +"-3. c #0F7C6C", +";3. c #295542", +">3. c #26563F", +",3. c #2C4341", +"'3. c #24634C", +")3. c #265C48", +"!3. c #295043", +"~3. c #27554C", +"{3. c #275549", +"]3. c #2C433E", +"^3. c #275751", +"/3. c #2D3E3D", +"(3. c #28504E", +"_3. c #265A53", +":3. c #24605A", +"<3. c #27565A", +"[3. c #2B444A", +"}3. c #265958", +"|3. c #285157", +"13. c #2A4951", +"23. c #2B3D4F", +"33. c #225A74", +"43. c #255664", +"53. c #1D6689", +"63. c #1F5D7F", +"73. c #1B6590", +"83. c #1D5B86", +"93. c #156CA8", +"03. c #1278B3", +"a3. c #1A5E93", +"b3. c #1362AF", +"c3. c #0A6FD6", +"d3. c #0F48C0", +"e3. c #0B57D1", +"f3. c #094DDB", +"g3. c #054CE0", +"h3. c #0285D0", +"i3. c #03B0E8", +"j3. c #034CF4", +"k3. c #043BEC", +"l3. c #063BE6", +"m3. c #0137F7", +"n3. c #0235F4", +"o3. c #0139FA", +"p3. c #0238F4", +"q3. c #013FFA", +"r3. c #0235F5", +"s3. c #0136FA", +"t3. c #0034FD", +"u3. c #0039FD", +"v3. c #0139F7", +"w3. c #0232F6", +"x3. c #043BEE", +"y3. c #023EF4", +"z3. c #0040FB", +"A3. c #0043FD", +"B3. c #0242F5", +"C3. c #014BF7", +"D3. c #0648E3", +"E3. c #084CDB", +"F3. c #0C46CC", +"G3. c #0D58C9", +"H3. c #0C53CB", +"I3. c #1256B3", +"J3. c #18519B", +"K3. c #1268B2", +"L3. c #1171B7", +"M3. c #1E5682", +"N3. c #186C9B", +"O3. c #1C5C8C", +"P3. c #186F9A", +"Q3. c #235B6F", +"R3. c #215976", +"S3. c #225573", +"T3. c #225B6F", +"U3. c #264F5E", +"V3. c #255B5D", +"W3. c #236064", +"X3. c #2A4750", +"Y3. c #294551", +"Z3. c #236937", +"`3. c #149252", +" 4. c #2A4252", +".4. c #2C4246", +"+4. c #2D4433", +"@4. c #12CE6E", +"#4. c #0BE27C", +"$4. c #2B4C3F", +"%4. c #265941", +"&4. c #275940", +"*4. c #25623D", +"=4. c #21733D", +"-4. c #236A3B", +";4. c #216F3C", +">4. c #226C3C", +",4. c #25613B", +"'4. c #29523B", +")4. c #0EBA36", +"!4. c #226B38", +"~4. c #274D34", +"{4. c #13912C", +"]4. c #33263B", +"^4. c #313339", +"/4. c #2E273C", +"(4. c #3A5F2D", +"_4. c #54F005", +":4. c #2ABF04", +"<4. c #397424", +"[4. c #328716", +"}4. c #30692D", +"|4. c #30243D", +"14. c #366229", +"24. c #385536", +"34. c #373E33", +"44. c #5D8E0E", +"54. c #414D2B", +"64. c #0B9F53", +"74. c #178349", +"84. c #2E323B", +"94. c #09A14E", +"04. c #01D049", +"a4. c #24523A", +"b4. c #332839", +"c4. c #979799", +"d4. c #BEBFBD", +"e4. c #A19EA2", +"f4. c #2B3736", +"g4. c #0BB72D", +"h4. c #13922E", +"i4. c #322A39", +"j4. c #1D5B30", +"k4. c #08C332", +"l4. c #0E9F30", +"m4. c #2D3337", +"n4. c #322E3A", +"o4. c #33333C", +"p4. c #CACAC9", +"q4. c #6E5C75", +"r4. c #3CB438", +"s4. c #0CFF00", +"t4. c #10FC02", +"u4. c #0FFF01", +"v4. c #11FE03", +"w4. c #08FF00", +"x4. c #32F127", +"y4. c #453F4D", +"z4. c #31323B", +"A4. c #332F37", +"B4. c #2C3B45", +"C4. c #0B8696", +"D4. c #1A6471", +"E4. c #332C34", +"F4. c #31333C", +"G4. c #342831", +"H4. c #236B74", +"I4. c #00E1FA", +"J4. c #0DEEFF", +"K4. c #21EAF1", +"L4. c #246371", +"M4. c #332931", +"N4. c #31323C", +"O4. c #2F3C3E", +"P4. c #31333A", +"Q4. c #2B4245", +"R4. c #108F6F", +"S4. c #2B4441", +"T4. c #0B7F98", +"U4. c #13798D", +"V4. c #178483", +"W4. c #078476", +"X4. c #1D805B", +"Y4. c #2C4A40", +"Z4. c #2C4842", +"`4. c #236C4B", +" 5. c #2B4B42", +".5. c #266248", +"+5. c #266148", +"@5. c #2A4D46", +"#5. c #2D4342", +"$5. c #2D4443", +"%5. c #2A4E47", +"&5. c #2F3B3D", +"*5. c #2E3F43", +"=5. c #2C4749", +"-5. c #236A63", +";5. c #236860", +">5. c #265A5A", +",5. c #265D5C", +"'5. c #2A4957", +")5. c #2A4959", +"!5. c #225378", +"~5. c #25466C", +"{5. c #1D628A", +"]5. c #1F5B80", +"^5. c #1F5F80", +"/5. c #205B7D", +"(5. c #196A9D", +"_5. c #1766A2", +":5. c #1567A9", +"<5. c #1D578A", +"[5. c #1752A3", +"}5. c #0E5AC4", +"|5. c #1251B7", +"15. c #0264F5", +"25. c #0350F0", +"35. c #03A7E7", +"45. c #09E5FB", +"55. c #0548F2", +"65. c #0237F4", +"75. c #023FF7", +"85. c #0235F6", +"95. c #003AFF", +"05. c #0038FE", +"a5. c #0334F0", +"b5. c #0437ED", +"c5. c #0232F4", +"d5. c #0333F2", +"e5. c #0037FD", +"f5. c #0438EB", +"g5. c #032EF1", +"h5. c #0136F9", +"i5. c #0437EE", +"j5. c #0634E4", +"k5. c #0233F5", +"l5. c #013AF8", +"m5. c #0240F7", +"n5. c #0345F1", +"o5. c #0444ED", +"p5. c #0846DE", +"q5. c #0A4ED7", +"r5. c #0C47CB", +"s5. c #0B4DD0", +"t5. c #0E56C5", +"u5. c #1160BA", +"v5. c #0C69CF", +"w5. c #1670A4", +"x5. c #1270B7", +"y5. c #166BA7", +"z5. c #1D5A8A", +"A5. c #225577", +"B5. c #196D9A", +"C5. c #1B6A91", +"D5. c #20607D", +"E5. c #235F70", +"F5. c #1C7181", +"G5. c #284B5C", +"H5. c #29504B", +"I5. c #1E867F", +"J5. c #265E5F", +"K5. c #2B513B", +"L5. c #149848", +"M5. c #275048", +"N5. c #275A42", +"O5. c #18A951", +"P5. c #12B25E", +"Q5. c #28603D", +"R5. c #275A3D", +"S5. c #1F7E40", +"T5. c #24663D", +"U5. c #2B4D3B", +"V5. c #1A8F3F", +"W5. c #246A3C", +"X5. c #1E813F", +"Y5. c #236C3D", +"Z5. c #28593C", +"`5. c #21733E", +" 6. c #04FA38", +".6. c #1C9939", +"+6. c #37193A", +"@6. c #236F3C", +"#6. c #05FF3C", +"$6. c #285E39", +"%6. c #33283A", +"&6. c #323439", +"*6. c #30263D", +"=6. c #396C29", +"-6. c #4FF60F", +";6. c #489918", +">6. c #2F7022", +",6. c #316231", +"'6. c #31253D", +")6. c #35632A", +"!6. c #385537", +"~6. c #516E1A", +"{6. c #56771B", +"]6. c #31273D", +"^6. c #2B423B", +"/6. c #08B756", +"(6. c #216143", +"_6. c #352738", +":6. c #31343A", +"<6. c #342C38", +"[6. c #264A42", +"}6. c #02BC51", +"|6. c #07BC44", +"16. c #2B3F3A", +"26. c #332D3B", +"36. c #33333B", +"46. c #8F8F92", +"56. c #382C3F", +"66. c #1B7331", +"76. c #07C62C", +"86. c #264E34", +"96. c #342B3B", +"06. c #17712F", +"a6. c #07CC33", +"b6. c #138930", +"c6. c #57575E", +"d6. c #CBCFCA", +"e6. c #6F5C75", +"f6. c #36B438", +"g6. c #00FF00", +"h6. c #05FC01", +"i6. c #03FF00", +"j6. c #05FE01", +"k6. c #29F126", +"l6. c #453F4E", +"m6. c #32313B", +"n6. c #342C34", +"o6. c #1A6370", +"p6. c #0C8696", +"q6. c #332F38", +"r6. c #32313A", +"s6. c #342931", +"t6. c #2D3F4D", +"u6. c #236072", +"v6. c #0C7593", +"w6. c #0C6E8D", +"x6. c #2B4045", +"y6. c #2F3E3D", +"z6. c #31313B", +"A6. c #342B37", +"B6. c #274E4C", +"C6. c #108C70", +"D6. c #2F4335", +"E6. c #1A7678", +"F6. c #00C4DF", +"G6. c #11A3A3", +"H6. c #2C4E3A", +"I6. c #275C46", +"J6. c #295442", +"K6. c #295444", +"L6. c #266249", +"M6. c #285A45", +"N6. c #285846", +"O6. c #2A4F43", +"P6. c #2A4F46", +"Q6. c #303741", +"R6. c #2C4546", +"S6. c #2A4F4D", +"T6. c #2B4C47", +"U6. c #29544E", +"V6. c #265B5C", +"W6. c #285450", +"X6. c #25615F", +"Y6. c #284660", +"Z6. c #29435D", +"`6. c #1C6690", +" 7. c #225479", +".7. c #29415A", +"+7. c #205981", +"@7. c #255073", +"#7. c #1E688B", +"$7. c #03DCEA", +"%7. c #0FA8C4", +"&7. c #1D4F8B", +"*7. c #1074BF", +"=7. c #096FD8", +"-7. c #0E64C7", +";7. c #0969D9", +">7. c #065BE7", +",7. c #0351F0", +"'7. c #0346F0", +")7. c #036EF7", +"!7. c #055AF6", +"~7. c #0132F8", +"{7. c #0036FB", +"]7. c #0134F7", +"^7. c #0137F9", +"/7. c #0335F1", +"(7. c #0230F7", +"_7. c #0237F6", +":7. c #052FEA", +"<7. c #022DF5", +"[7. c #0134FA", +"}7. c #0138FA", +"|7. c #0435ED", +"17. c #022EF6", +"27. c #0031FF", +"37. c #003AFB", +"47. c #0032FD", +"57. c #023FF6", +"67. c #023FF4", +"77. c #0240F5", +"87. c #0246F3", +"97. c #033EF2", +"07. c #034CEF", +"a7. c #0B4AD2", +"b7. c #085ADF", +"c7. c #0A58D6", +"d7. c #115ABC", +"e7. c #1168BB", +"f7. c #1462AE", +"g7. c #0F73C3", +"h7. c #1660A5", +"i7. c #205B7E", +"j7. c #176FA2", +"k7. c #225B76", +"l7. c #18729F", +"m7. c #1F6C80", +"n7. c #27515E", +"o7. c #255B5F", +"p7. c #2C414B", +"q7. c #07E1B8", +"r7. c #1A9A81", +"s7. c #2D4243", +"t7. c #159E41", +"u7. c #1D6E57", +"v7. c #29564D", +"w7. c #2B4644", +"x7. c #26713E", +"y7. c #178740", +"z7. c #23693F", +"A7. c #275E3F", +"B7. c #246A3F", +"C7. c #24673F", +"D7. c #227140", +"E7. c #207B40", +"F7. c #20793F", +"G7. c #29553E", +"H7. c #25633E", +"I7. c #2F403D", +"J7. c #17852D", +"K7. c #245B34", +"L7. c #381B3C", +"M7. c #1F7C39", +"N7. c #00FF2C", +"O7. c #276539", +"P7. c #34273B", +"Q7. c #31293D", +"R7. c #30921C", +"S7. c #43B314", +"T7. c #405429", +"U7. c #295C2D", +"V7. c #325A33", +"W7. c #32253D", +"X7. c #325E2E", +"Y7. c #487C28", +"Z7. c #62840F", +"`7. c #3C4234", +" 8. c #2F313C", +".8. c #352938", +"+8. c #215F42", +"@8. c #08B856", +"#8. c #2A443D", +"$8. c #342C3A", +"%8. c #31333B", +"&8. c #342A38", +"*8. c #1B6A4B", +"=8. c #00CC51", +"-8. c #0EA541", +";8. c #332E3A", +">8. c #31343B", +",8. c #34343D", +"'8. c #7F7F83", +")8. c #C4C4C3", +"!8. c #B5B6B6", +"~8. c #403D48", +"{8. c #2A3635", +"]8. c #0CB82E", +"^8. c #13942F", +"/8. c #332B3A", +"(8. c #08CA33", +"_8. c #187831", +":8. c #C9C9C8", +"<8. c #6C5C72", +"[8. c #49B449", +"}8. c #27FF20", +"|8. c #29FC23", +"18. c #28FF22", +"28. c #29FE24", +"38. c #22FF1C", +"48. c #46F142", +"58. c #443F4D", +"68. c #2C3C46", +"78. c #31343D", +"88. c #322F37", +"98. c #36242A", +"08. c #1D5266", +"a8. c #0883A5", +"b8. c #1A586E", +"c8. c #342D35", +"d8. c #30363D", +"e8. c #303D3B", +"f8. c #216353", +"g8. c #0B9E73", +"h8. c #2B4F35", +"i8. c #13B29D", +"j8. c #01E4F5", +"k8. c #09E9FE", +"l8. c #1CC3BF", +"m8. c #285439", +"n8. c #275C47", +"o8. c #2B4C41", +"p8. c #2E403E", +"q8. c #22714D", +"r8. c #265F49", +"s8. c #295443", +"t8. c #2B4D42", +"u8. c #2D463F", +"v8. c #2D4540", +"w8. c #295350", +"x8. c #29514E", +"y8. c #30373C", +"z8. c #2E3E45", +"A8. c #294F57", +"B8. c #2B4850", +"C8. c #2B4956", +"D8. c #2C474E", +"E8. c #265665", +"F8. c #284862", +"G8. c #25596D", +"H8. c #2B4353", +"I8. c #245C6D", +"J8. c #197198", +"K8. c #12839C", +"L8. c #0D788D", +"M8. c #06D8DB", +"N8. c #17B8CF", +"O8. c #20507C", +"P8. c #1A5296", +"Q8. c #0B63D3", +"R8. c #0B62D2", +"S8. c #0753E0", +"T8. c #0A56D6", +"U8. c #015FFA", +"V8. c #0443EC", +"W8. c #033BEE", +"X8. c #003EFF", +"Y8. c #0137F8", +"Z8. c #0138F8", +"`8. c #0335F2", +" 9. c #0031FE", +".9. c #0033FB", +"+9. c #002FFD", +"@9. c #012DFA", +"#9. c #002AFD", +"$9. c #002CFC", +"%9. c #0031FB", +"&9. c #0134F8", +"*9. c #012EFA", +"=9. c #022EF5", +"-9. c #0133F9", +";9. c #0231F6", +">9. c #013AF9", +",9. c #0045FF", +"'9. c #0545E9", +")9. c #0640E4", +"!9. c #084ADE", +"~9. c #084EDE", +"{9. c #0A53D4", +"]9. c #0562E8", +"^9. c #0D68C9", +"/9. c #0D65CB", +"(9. c #1163B9", +"_9. c #0F77C0", +":9. c #1D618D", +"<9. c #166AA7", +"[9. c #1F6184", +"}9. c #1E6687", +"|9. c #274B5F", +"19. c #1775A0", +"29. c #24506A", +"39. c #265367", +"49. c #236260", +"59. c #275D63", +"69. c #1E5F4A", +"79. c #148560", +"89. c #323440", +"99. c #1C8741", +"09. c #1A784E", +"a9. c #2C464C", +"b9. c #2C424E", +"c9. c #266641", +"d9. c #169643", +"e9. c #246542", +"f9. c #29573E", +"g9. c #266242", +"h9. c #207941", +"i9. c #285A3F", +"j9. c #217641", +"k9. c #227040", +"l9. c #275C3F", +"m9. c #2B4D3D", +"n9. c #295941", +"o9. c #1D7738", +"p9. c #1B712E", +"q9. c #35283C", +"r9. c #33303C", +"s9. c #11982A", +"t9. c #1D702F", +"u9. c #35263D", +"v9. c #332B3E", +"w9. c #275626", +"x9. c #3A8E15", +"y9. c #39353A", +"z9. c #28622C", +"A9. c #315C34", +"B9. c #2F5E30", +"C9. c #5CA317", +"D9. c #536121", +"E9. c #2E2D3E", +"F9. c #342738", +"G9. c #17824A", +"H9. c #0CA853", +"I9. c #32303B", +"J9. c #118C52", +"K9. c #00CD4E", +"L9. c #129449", +"M9. c #31303B", +"N9. c #332D38", +"O9. c #282832", +"P9. c #757579", +"Q9. c #C2C2C1", +"R9. c #B8B7B8", +"S9. c #46494E", +"T9. c #302337", +"U9. c #1E7633", +"V9. c #342B3C", +"W9. c #0C9E2E", +"X9. c #0BC335", +"Y9. c #C8C8C7", +"Z9. c #BFBFC0", +"`9. c #CACEC9", +" 0. c #6D5C74", +".0. c #41B444", +"+0. c #16FF13", +"@0. c #19FC18", +"#0. c #18FF17", +"$0. c #1AFE18", +"%0. c #12FF0F", +"&0. c #3AF139", +"*0. c #46404E", +"=0. c #32343D", +"-0. c #352D35", +";0. c #1A6572", +">0. c #0D8393", +",0. c #2F3A43", +"'0. c #32333C", +")0. c #33353D", +"!0. c #106D8A", +"~0. c #0B7A9A", +"{0. c #2A3F4C", +"]0. c #2F463E", +"^0. c #32373B", +"/0. c #245A4F", +"(0. c #0C9B6F", +"_0. c #266944", +":0. c #246A4D", +"<0. c #07D7D6", +"[0. c #1DD2D3", +"}0. c #297054", +"|0. c #2B4B3D", +"10. c #22744A", +"20. c #295844", +"30. c #266648", +"40. c #285E45", +"50. c #2A5444", +"60. c #27604C", +"70. c #2D4740", +"80. c #303A40", +"90. c #2C4D44", +"00. c #285851", +"a0. c #26634D", +"b0. c #285B4D", +"c0. c #2C4A4B", +"d0. c #2D474B", +"e0. c #2B4E54", +"f0. c #28585D", +"g0. c #236676", +"h0. c #275767", +"i0. c #26506A", +"j0. c #1F768F", +"k0. c #06FEFC", +"l0. c #07C0C9", +"m0. c #0D7791", +"n0. c #1C628B", +"o0. c #0F86A7", +"p0. c #1C638C", +"q0. c #1F6589", +"r0. c #1F5887", +"s0. c #0E6DC6", +"t0. c #0C55CF", +"u0. c #0B56D2", +"v0. c #0954D9", +"w0. c #024DF7", +"x0. c #0156F9", +"y0. c #0048FB", +"z0. c #0041FC", +"A0. c #0341F2", +"B0. c #0241F6", +"C0. c #003BFC", +"D0. c #0033FF", +"E0. c #002DFB", +"F0. c #0031FC", +"G0. c #012FF9", +"H0. c #0126FB", +"I0. c #002CFE", +"J0. c #0131FA", +"K0. c #0532EB", +"L0. c #002AFB", +"M0. c #0035FF", +"N0. c #012EF8", +"O0. c #032CF3", +"P0. c #0137FA", +"Q0. c #003AFC", +"R0. c #053DEA", +"S0. c #003DFF", +"T0. c #004DFF", +"U0. c #004EFB", +"V0. c #0559EA", +"W0. c #084FDC", +"X0. c #065BE6", +"Y0. c #065FE4", +"Z0. c #0B5FD3", +"`0. c #1366B3", +" a. c #1278B9", +".a. c #0F7CC3", +"+a. c #1A609A", +"@a. c #1F5286", +"#a. c #19619E", +"$a. c #1A7599", +"%a. c #245D70", +"&a. c #265666", +"*a. c #255964", +"=a. c #25576B", +"-a. c #275C73", +";a. c #1B802B", +">a. c #03BF54", +",a. c #275368", +"'a. c #266635", +")a. c #17844D", +"!a. c #246456", +"~a. c #303A41", +"{a. c #26634B", +"]a. c #10AC47", +"^a. c #236843", +"/a. c #2C4D3D", +"(a. c #246B45", +"_a. c #295843", +":a. c #227441", +"b. c #2D4940", +",b. c #2E4540", +"'b. c #2A524D", +")b. c #303E3F", +"!b. c #2C4B45", +"~b. c #266251", +"{b. c #2D4649", +"]b. c #2A4F5B", +"^b. c #285961", +"/b. c #2B4E58", +"(b. c #2C4755", +"_b. c #236174", +":b. c #2C4459", +"c. c #3C4931", +",c. c #31960F", +"'c. c #2E5333", +")c. c #34293E", +"!c. c #27742A", +"~c. c #305837", +"{c. c #362F3B", +"]c. c #638F10", +"^c. c #516E26", +"/c. c #2E2A3F", +"(c. c #342E3B", +"_c. c #2B413D", +":c. c #1F6945", +"d. c #0039FC", +",d. c #0039FF", +"'d. c #0038FC", +")d. c #0034FE", +"!d. c #022FF3", +"~d. c #0230F5", +"{d. c #0237F7", +"]d. c #0432ED", +"^d. c #022BF7", +"/d. c #002FFF", +"(d. c #002EFF", +"_d. c #012FFA", +":d. c #0135F9", +"e. c #352F3D", +",e. c #33333D", +"'e. c #2C2C36", +")e. c #58585E", +"!e. c #C8CCC7", +"~e. c #35B53D", +"{e. c #00FF02", +"]e. c #01FC08", +"^e. c #00FF07", +"/e. c #01FE08", +"(e. c #26F12C", +"_e. c #47414F", +":e. c #33353F", +"f. c #1F5F89", +",f. c #1B6A96", +"'f. c #20597B", +")f. c #1D6B8C", +"!f. c #25606D", +"~f. c #28585E", +"{f. c #294D65", +"]f. c #285A5E", +"^f. c #265C53", +"/f. c #1C7942", +"(f. c #178870", +"_f. c #1F6C4A", +":f. c #10B979", +"g. c #058CA6", +",g. c #1A6C66", +"'g. c #1A8250", +")g. c #15855C", +"!g. c #2E4E3C", +"~g. c #286141", +"{g. c #2D4B3E", +"]g. c #276441", +"^g. c #256C42", +"/g. c #2E4941", +"(g. c #2A5940", +"_g. c #286142", +":g. c #286043", +"h. c #286247", +",h. c #217D4C", +"'h. c #295D45", +")h. c #2D4D41", +"!h. c #313C3E", +"~h. c #362D3D", +"{h. c #2B4B38", +"]h. c #197D2D", +"^h. c #34323D", +"/h. c #2F3E39", +"(h. c #0AAE25", +"_h. c #2A4F37", +":h. c #34343C", +"i. c #2F4056", +",i. c #285067", +"'i. c #225D80", +")i. c #1C6B94", +"!i. c #1A759A", +"~i. c #089DB7", +"{i. c #19679E", +"]i. c #176CAA", +"^i. c #1D5C92", +"/i. c #1B589A", +"(i. c #1A539E", +"_i. c #134FB5", +":i. c #0B4ED2", +"j. c #352F3C", +",j. c #178A59", +"'j. c #05C868", +")j. c #00FA63", +"!j. c #01FB5D", +"~j. c #1DA55B", +"{j. c #362C3D", +"]j. c #B3B3B5", +"^j. c #D2D2D1", +"/j. c #A1A1A4", +"(j. c #2D2D38", +"_j. c #1E7534", +":j. c #07C82C", +"k. c #0951DB", +",k. c #0E4FC8", +"'k. c #0A5FDA", +")k. c #066CE8", +"!k. c #1069C2", +"~k. c #185BA6", +"{k. c #1368B9", +"]k. c #1869A6", +"^k. c #186B9F", +"/k. c #147CAD", +"(k. c #1F698B", +"_k. c #226879", +":k. c #265B6E", +"l. c #0995A7", +",l. c #157584", +"'l. c #353139", +")l. c #33393F", +"!l. c #31413F", +"~l. c #323C3F", +"{l. c #30453F", +"]l. c #2D5040", +"^l. c #2D543B", +"/l. c #146C7C", +"(l. c #01A696", +"_l. c #188656", +":l. c #2F503C", +"m. c #28674D", +",m. c #217D52", +"'m. c #266A4C", +")m. c #24724E", +"!m. c #256F4D", +"~m. c #2D4F45", +"{m. c #323F41", +"]m. c #34373F", +"^m. c #382B40", +"/m. c #216A33", +"(m. c #372D40", +"_m. c #36323F", +":m. c #2D4739", +"n. c #24586C", +",n. c #187A88", +"'n. c #2E485C", +")n. c #196885", +"!n. c #12729A", +"~n. c #20618F", +"{n. c #1C6A98", +"]n. c #11A3D1", +"^n. c #11C8E0", +"/n. c #1357B8", +"(n. c #114BC0", +"_n. c #0D5CD0", +":n. c #0D50CF", +"o. c #52525A", +",o. c #D5D5D4", +"'o. c #79797E", +")o. c #373741", +"!o. c #34363F", +"~o. c #362E3F", +"{o. c #2D4F3F", +"]o. c #02FA4E", +"^o. c #10FF5C", +"/o. c #13F353", +"(o. c #01FF3C", +"_o. c #267A3F", +":o. c #37283F", +"p. c #0343F2", +",p. c #0846E2", +"'p. c #0FC8EB", +")p. c #0C4DD1", +"!p. c #075AE5", +"~p. c #0E59CC", +"{p. c #0C5BD2", +"]p. c #145AB7", +"^p. c #215787", +"/p. c #205A87", +"(p. c #1A64A0", +"_p. c #1D6195", +":p. c #20598C", +"q. c #01FC22", +",q. c #00FF21", +"'q. c #01FE23", +")q. c #00FF1B", +"!q. c #26F141", +"~q. c #382F38", +"{q. c #235763", +"]q. c #079BAF", +"^q. c #205D64", +"/q. c #363838", +"(q. c #314542", +"_q. c #333E3F", +":q. c #32423F", +"r. c #2B6055", +",r. c #1F7F51", +"'r. c #1D7F4B", +")r. c #2A6153", +"!r. c #286851", +"~r. c #2F4F48", +"{r. c #324345", +"]r. c #36323E", +"^r. c #353640", +"/r. c #36353F", +"(r. c #373140", +"_r. c #1A7E2F", +":r. c #2F463B", +"s. c #314352", +",s. c #343C47", +"'s. c #343945", +")s. c #2F585F", +"!s. c #0F9DA7", +"~s. c #1D6173", +"{s. c #353A46", +"]s. c #333C4C", +"^s. c #1E7070", +"/s. c #236367", +"(s. c #0B9BC0", +"_s. c #1283AF", +":s. c #1C6494", +"t. c #392C3D", +",t. c #09B857", +"'t. c #2F4240", +")t. c #373340", +"!t. c #343A41", +"~t. c #236C4F", +"{t. c #09B665", +"]t. c #323D42", +"^t. c #313E3D", +"/t. c #08BB45", +"(t. c #207241", +"_t. c #392C3F", +":t. c #383842", +"u. c #1B5A9E", +",u. c #224F85", +"'u. c #20598B", +")u. c #1E6A94", +"!u. c #1962A4", +"~u. c #245182", +"{u. c #245980", +"]u. c #206D85", +"^u. c #24716F", +"/u. c #2E5059", +"(u. c #2D545C", +"_u. c #2F5152", +":u. c #29655D", +"v. c #2C4E4A", +",v. c #373B3C", +"'v. c #2E5442", +")v. c #2D5F40", +"!v. c #0D8564", +"~v. c #1F6B54", +"{v. c #31503C", +"]v. c #2B643A", +"^v. c #255F4E", +"/v. c #0A7EA0", +"(v. c #13787A", +"_v. c #2F523B", +":v. c #286B40", +"w. c #31423C", +",w. c #1A7D2D", +"'w. c #3A2C44", +")w. c #353C3F", +"!w. c #335635", +"~w. c #2E8621", +"{w. c #16B41B", +"]w. c #257B29", +"^w. c #3E2A42", +"/w. c #332F45", +"(w. c #324F38", +"_w. c #3A8420", +":w. c #489913", +"x. c #246073", +",x. c #295573", +"'x. c #08A1BF", +")x. c #0DA9D1", +"!x. c #1E6798", +"~x. c #24587F", +"{x. c #25577C", +"]x. c #2A486D", +"^x. c #26507A", +"/x. c #225087", +"(x. c #1B74A9", +"_x. c #13D5DE", +":x. c #13E7E4", +"y. c #1E7440", +",y. c #09BC46", +"'y. c #AAAAAC", +")y. c #AFAFB1", +"!y. c #363940", +"~y. c #0BB22D", +"{y. c #46464E", +"]y. c #BBBBBA", +"^y. c #BEC2BE", +"/y. c #A08D9F", +"(y. c #3BBB59", +"_y. c #00FF32", +":y. c #01FC35", +"z. c #08B7AB", +",z. c #1D8B82", +"'z. c #256580", +")z. c #2B6063", +"!z. c #247278", +"~z. c #199399", +"{z. c #237D73", +"]z. c #218275", +"^z. c #2A6764", +"/z. c #237D6F", +"(z. c #1E8F79", +"_z. c #286C64", +":z. c #2D5F5B", +"A. c #1F6663", +",A. c #344B3B", +"'A. c #314B42", +")A. c #2C603F", +"!A. c #2E5740", +"~A. c #2C5F41", +"{A. c #315041", +"]A. c #363C43", +"^A. c #353E49", +"/A. c #373943", +"(A. c #2B4F5C", +"_A. c #167B88", +":A. c #353F4C", +"B. c #04EA7B", +",B. c #00FC76", +"'B. c #1DA268", +")B. c #3B2F40", +"!B. c #3B2E3E", +"~B. c #1F7B55", +"{B. c #0CB064", +"]B. c #323F42", +"^B. c #3C2D41", +"/B. c #236B41", +"(B. c #09BF46", +"_B. c #2F4A40", +":B. c #393342", +"C. c #24617F", +",C. c #237682", +"'C. c #227386", +")C. c #2D5263", +"!C. c #266F7D", +"~C. c #1E757E", +"{C. c #0D93A4", +"]C. c #227A86", +"^C. c #218082", +"/C. c #237979", +"(C. c #227681", +"_C. c #267576", +":C. c #237D78", +"D. c #393743", +",D. c #373F42", +"'D. c #393841", +")D. c #363D4B", +"!D. c #393744", +"~D. c #2A5662", +"{D. c #167E89", +"]D. c #393845", +"^D. c #147370", +"/D. c #304A4F", +"(D. c #363E51", +"_D. c #2E505E", +":D. c #314661", +"E. c #0BB859", +",E. c #21784D", +"'E. c #3C2F41", +")E. c #3A3340", +"!E. c #149C5F", +"~E. c #14995D", +"{E. c #393540", +"]E. c #3C3143", +"^E. c #256540", +"/E. c #08C246", +"(E. c #2D5141", +"_E. c #32323C", +":E. c #5A5A61", +"F. c #1F7D95", +",F. c #1A8B9B", +"'F. c #07A4AC", +")F. c #1D8894", +"!F. c #296175", +"~F. c #1D8297", +"{F. c #217F88", +"]F. c #286E6F", +"^F. c #267176", +"/F. c #2E5A60", +"(F. c #2B6965", +"_F. c #2C6466", +":F. c #324D51", +"G. c #343F55", +",G. c #2E4465", +"'G. c #2F4663", +")G. c #2C4C72", +"!G. c #22557F", +"~G. c #1B6389", +"{G. c #264C89", +"]G. c #1B5F93", +"^G. c #1C7A9F", +"/G. c #14DADF", +"(G. c #13EFE9", +"_G. c #17C6D2", +":G. c #1C73AB", +"H. c #295C41", +",H. c #08C347", +"'H. c #2C5943", +")H. c #3C3244", +"!H. c #3B3B46", +"~H. c #2E2E3A", +"{H. c #75757B", +"]H. c #5B5B63", +"^H. c #3A3A45", +"/H. c #9D9D9F", +"(H. c #B1B6B3", +"_H. c #C3B0BE", +":H. c #68E78D", +"I. c #178EB2", +",I. c #22778E", +"'I. c #1A80A6", +")I. c #1B83A3", +"!I. c #1F7898", +"~I. c #23728A", +"{I. c #0BB7C2", +"]I. c #0AD7E1", +"^I. c #296676", +"/I. c #2E5E66", +"(I. c #27747A", +"_I. c #267B7C", +":I. c #2E5E65", +"J. c #354151", +",J. c #363D52", +"'J. c #2E5053", +")J. c #128284", +"!J. c #2F466A", +"~J. c #2E4869", +"{J. c #334258", +"]J. c #334359", +"^J. c #2F4364", +"/J. c #284D7A", +"(J. c #2F4369", +"_J. c #1D5785", +":J. c #224E7B", +"K. c #3C3442", +",K. c #3B3544", +"'K. c #2C5541", +")K. c #286443", +"!K. c #3D3144", +"~K. c #393B44", +"{K. c #959599", +"]K. c #31313D", +"^K. c #6D6D73", +"/K. c #B0B4B2", +"(K. c #C2AFBC", +"_K. c #67E791", +":K. c #03FD54", +"L. c #1E7386", +",L. c #0B94A6", +"'L. c #2F5767", +")L. c #2E6068", +"!L. c #218B8D", +"~L. c #2A6C76", +"{L. c #2D626B", +"]L. c #27767C", +"^L. c #354B55", +"/L. c #354A52", +"(L. c #3E3042", +"_L. c #178F5A", +":L. c #237054", +"M. c #2F5469", +",M. c #10B9D8", +"'M. c #22748E", +")M. c #179DA9", +"!M. c #314A69", +"~M. c #323F5D", +"{M. c #304166", +"]M. c #264785", +"^M. c #2E3E6D", +"/M. c #2E3E6B", +"(M. c #2B4175", +"_M. c #243F8C", +":M. c #224393", +"N. c #256D42", +",N. c #3E3244", +"'N. c #3A3D44", +")N. c #B0B0B2", +"!N. c #C0AEBA", +"~N. c #67E694", +"{N. c #03FD5C", +"]N. c #00FF5A", +"^N. c #01FE5B", +"/N. c #26F26F", +"(N. c #4E4756", +"_N. c #374644", +":N. c #394044", +"O. c #325561", +",O. c #364752", +"'O. c #3E3344", +")O. c #2A614D", +"!O. c #0CAB66", +"~O. c #3D2E42", +"{O. c #1E9D6B", +"]O. c #04FF83", +"^O. c #374D4A", +"/O. c #3E3544", +"(O. c #21664F", +"_O. c #1D7454", +":O. c #403144", +"P. c #323D66", +",P. c #245677", +"'P. c #04BAD6", +")P. c #2A5080", +"!P. c #303867", +"~P. c #33415F", +"{P. c #373C53", +"]P. c #2F3F69", +"^P. c #304268", +"/P. c #213E95", +"(P. c #2B3D77", +"_P. c #293F7C", +":P. c #2A3C7B", +"Q. c #03FD63", +",Q. c #00FF61", +"'Q. c #01FE62", +")Q. c #26F275", +"!Q. c #4F4956", +"~Q. c #3C3A46", +"{Q. c #3A4145", +"]Q. c #384645", +"^Q. c #384744", +"/Q. c #364F43", +"(Q. c #335642", +"_Q. c #2E683F", +":Q. c #325A42", +"R. c #432842", +",R. c #236F46", +"'R. c #315246", +")R. c #3E3744", +"!R. c #2C544E", +"~R. c #187D5E", +"{R. c #3F3745", +"]R. c #334A47", +"^R. c #15804B", +"/R. c #354A4E", +"(R. c #0DA7A8", +"_R. c #2C5E64", +":R. c #37434E", +"S. c #314166", +",S. c #363B58", +"'S. c #313F68", +")S. c #2E406F", +"!S. c #2B3F77", +"~S. c #333E61", +"{S. c #2D3D73", +"]S. c #353F5C", +"^S. c #2E4170", +"/S. c #2B3E78", +"(S. c #2C3E75", +"_S. c #2A417B", +":S. c #303C69", +"T. c #03FD6A", +",T. c #00FF69", +"'T. c #01FE6A", +")T. c #26F27B", +"!T. c #3A4246", +"~T. c #3C3D46", +"{T. c #3D3B47", +"]T. c #306441", +"^T. c #325E41", +"/T. c #394744", +"(T. c #364F44", +"_T. c #374C44", +":T. c #325C42", +"U. c #3C3A47", +",U. c #3C4346", +"'U. c #2C842E", +")U. c #30663D", +"!U. c #188247", +"~U. c #335247", +"{U. c #3F3747", +"]U. c #24744A", +"^U. c #276548", +"/U. c #403546", +"(U. c #22734B", +"_U. c #364947", +":U. c #3F3444", +"V. c #3A424F", +",V. c #3C3D4A", +"'V. c #364151", +")V. c #1F6B84", +"!V. c #3F3943", +"~V. c #1D7889", +"{V. c #384450", +"]V. c #3E3B45", +"^V. c #3A454D", +"/V. c #08EEB6", +"(V. c #06E38F", +"_V. c #2D5E51", +":V. c #3F3645", +"W. c #363E5A", +",W. c #3B3D4C", +"'W. c #373D57", +")W. c #343F61", +"!W. c #334062", +"~W. c #363E5B", +"{W. c #373C58", +"]W. c #333F64", +"^W. c #303E67", +"/W. c #1A3182", +"(W. c #393D52", +"_W. c #324566", +":W. c #31436A", +"X. c #365544", +",X. c #326143", +"'X. c #365346", +")X. c #306643", +"!X. c #374F46", +"~X. c #355646", +"{X. c #3B4247", +"]X. c #3D3E48", +"^X. c #3D3E4A", +"/X. c #413840", +"(X. c #2B5164", +"_X. c #05A6C8", +":X. c #00C1EE", +"Y. c #AAAEAC", +",Y. c #BBA8B2", +"'Y. c #65E5A2", +")Y. c #00FF73", +"!Y. c #03FD79", +"~Y. c #00FF78", +"{Y. c #01FE79", +"]Y. c #00FF75", +"^Y. c #26F287", +"/Y. c #514A58", +"(Y. c #3E3D49", +"_Y. c #3C4348", +":Y. c #3B4748", +"Z. c #354D4B", +",Z. c #0BBB69", +"'Z. c #207E57", +")Z. c #413546", +"!Z. c #3D4048", +"~Z. c #413549", +"{Z. c #276D45", +"]Z. c #09C548", +"^Z. c #315847", +"/Z. c #616169", +"(Z. c #393945", +"_Z. c #505059", +":Z. c #A9ADAB", +"`. c #3A5147", +",`. c #287F3E", +"'`. c #0DB158", +")`. c #1B8E53", +"!`. c #403747", +"~`. c #1A935E", +"{`. c #0FAC64", +"]`. c #3A4048", +"^`. c #10AB46", +"/`. c #169C46", +"(`. c #40404B", +"_`. c #8B8B90", +":`. c #DBDBDA", +"<`. c #8B8B91", +"[`. c #3E3E4A", +"}`. c #42424D", +"|`. c #A1A1A2", +"1`. c #AFAFAE", +"2`. c #A8ADAB", +"3`. c #BAA7B0", +"4`. c #65E4A5", +"5`. c #00FF7B", +"6`. c #03FD80", +"7`. c #00FF7F", +"8`. c #01FE80", +"9`. c #00FF7D", +"0`. c #27F28D", +"a`. c #514B58", +"b`. c #3C4549", +"c`. c #3C4449", +"d`. c #3D4149", +"e`. c #375447", +"f`. c #3C4548", +"g`. c #394F48", +"h`. c #355B46", +"i`. c #355946", +"j`. c #306A44", +"k`. c #385247", +"l`. c #3A4B48", +"m`. c #3B4749", +"n`. c #3D4349", +"o`. c #3E3D4A", +"p`. c #3E4049", +"q`. c #3D414A", +"r`. c #3F4047", +"s`. c #374556", +"t`. c #166F94", +"u`. c #07D7DE", +"v`. c #04D5EC", +"w`. c #06F3FF", +"x`. c #346F77", +"y`. c #403440", +"z`. c #3E404C", +"A`. c #3F3E48", +"B`. c #213272", +"C`. c #3C3F4D", +"D`. c #3F3A45", +"E`. c #1D5A8C", +"F`. c #3B404F", +"G`. c #3F3D48", +"H`. c #413943", +"I`. c #315466", +"J`. c #226B83", +"K`. c #423842", +"L`. c #3F3C48", +"M`. c #374A57", +"N`. c #1F7788", +"O`. c #403B46", +"P`. c #3E3F4A", +"Q`. c #3E404B", +"R`. c #413541", +"S`. c #11CDD0", +"T`. c #00F5EB", +"U`. c #0BD2CC", +"V`. c #2098A5", +"W`. c #374C5B", +"X`. c #403A45", +"Y`. c #403A4B", +"Z`. c #344E43", +"``. c #0CBE8C", +" + c #01FFCC", +". + c #366564", +"+ + c #256D43", +"@ + c #2F5D4B", +"# + c #443345", +"$ + c #1C6F71", +"% + c #2A6268", +"& + c #453342", +"* + c #1E6C62", +"= + c #2C5E5B", +"- + c #413947", +"; + c #3A444F", +"> + c #0DA9A9", +", + c #296A70", +"' + c #394653", +") + c #0AA2B1", +"! + c #2E5B64", +"~ + c #423147", +"{ + c #3E6639", +"] + c #3D8226", +"^ + c #2B773A", +"/ + c #2F6C3F", +"( + c #41394B", +"_ + c #2C7E3D", +": + c #375344", +"< + c #40394B", +"[ + c #3E3F49", +"} + c #423548", +"| + c #27704F", +"1 + c #09C25C", +"2 + c #33534B", +"3 + c #443247", +"4 + c #2C6552", +"5 + c #08C16A", +"6 + c #2B6350", +"7 + c #413748", +"8 + c #41364A", +"9 + c #2B6546", +"0 + c #08C648", +"a + c #2D6046", +"b + c #42384A", +"c + c #B9B9BB", +"d + c #5D5D66", +"e + c #40404A", +"f + c #A8ACAA", +"g + c #B9A6AF", +"h + c #65E4A7", +"i + c #00FF80", +"j + c #03FD84", +"k + c #00FF84", +"l + c #01FE84", +"m + c #00FF81", +"n + c #27F291", +"o + c #3F3E4A", +"p + c #3D4449", +"q + c #3B4A49", +"r + c #3B4949", +"s + c #3A4D48", +"t + c #3C4748", +"u + c #3B4849", +"v + c #345E45", +"w + c #3B4B48", +"x + c #385148", +"y + c #385349", +"z + c #3B484A", +"A + c #3F3D49", +"B + c #38524A", +"C + c #3C474B", +"D + c #403D47", +"E + c #374958", +"F + c #1B6385", +"G + c #20919E", +"H + c #0BEEFC", +"I + c #2EB0B6", +"J + c #403E49", +"K + c #3F3F48", +"L + c #3C3D4C", +"M + c #1A3283", +"N + c #384355", +"O + c #1B5887", +"P + c #3F3E49", +"Q + c #3E3F4B", +"R + c #423C44", +"S + c #215884", +"T + c #34475E", +"U + c #413D45", +"V + c #3B4451", +"W + c #403C47", +"X + c #3C434E", +"Y + c #1D7C8C", +"Z + c #3D434E", +"` + c #3E414B", +" .+ c #423541", +"..+ c #239092", +"+.+ c #06D9D2", +"@.+ c #0AF2F2", +"#.+ c #0FB0D6", +"$.+ c #403E47", +"%.+ c #3B454A", +"&.+ c #1B8856", +"*.+ c #1C9065", +"=.+ c #384F53", +"-.+ c #2F5E47", +";.+ c #25734A", +">.+ c #473044", +",.+ c #22646A", +"'.+ c #2D5961", +").+ c #463341", +"!.+ c #226562", +"~.+ c #2D5C5C", +"{.+ c #423946", +"].+ c #3D414C", +"^.+ c #423642", +"/.+ c #1E8286", +"(.+ c #149596", +"_.+ c #452834", +":.+ c #198591", +"<.+ c #198094", +"[.+ c #414A3F", +"}.+ c #3F8724", +"|.+ c #327935", +"1.+ c #2B783A", +"2.+ c #413D4B", +"3.+ c #34703F", +"4.+ c #316B3E", +"5.+ c #10B059", +"6.+ c #1B9254", +"7.+ c #3B4349", +"8.+ c #0FAF66", +"9.+ c #19925D", +"0.+ c #413847", +"a.+ c #3E404A", +"b.+ c #3E3A48", +"c.+ c #13A446", +"d.+ c #14A648", +"e.+ c #403C4A", +"f.+ c #383844", +"g.+ c #5E5E67", +"h.+ c #D0D0D1", +"i.+ c #CFCFD0", +"j.+ c #41414C", +"k.+ c #363643", +"l.+ c #A7ABA9", +"m.+ c #B8A5AE", +"n.+ c #64E4A8", +"o.+ c #00FF83", +"p.+ c #03FD88", +"q.+ c #00FF87", +"r.+ c #01FE87", +"s.+ c #00FF85", +"t.+ c #27F293", +"u.+ c #514B59", +"v.+ c #3D444A", +"w.+ c #394F49", +"x.+ c #3D4249", +"y.+ c #375448", +"z.+ c #385348", +"A.+ c #3A4C49", +"B.+ c #326446", +"C.+ c #394E48", +"D.+ c #385248", +"E.+ c #306A47", +"F.+ c #365848", +"G.+ c #375449", +"H.+ c #3C474A", +"I.+ c #3C454A", +"J.+ c #3A4C4A", +"K.+ c #37544B", +"L.+ c #413A47", +"M.+ c #374857", +"N.+ c #186B8C", +"O.+ c #403845", +"P.+ c #3D4350", +"Q.+ c #3F3945", +"R.+ c #3F3C47", +"S.+ c #3E3F4C", +"T.+ c #423C3E", +"U.+ c #234F9B", +"V.+ c #3A3F59", +"W.+ c #403E46", +"X.+ c #413D46", +"Y.+ c #34465C", +"Z.+ c #1F5480", +"`.+ c #433B42", +" ++ c #285276", +".++ c #2A5072", +"+++ c #423B42", +"@++ c #433841", +"#++ c #25687E", +"$++ c #2D5A6D", +"%++ c #423943", +"&++ c #206E80", +"*++ c #394451", +"=++ c #3E3944", +"-++ c #128A85", +";++ c #00EFF8", +">++ c #02B4E0", +",++ c #19B7D5", +"'++ c #40444E", +")++ c #403A49", +"!++ c #217952", +"~++ c #267357", +"{++ c #27725C", +"]++ c #3B4547", +"^++ c #1B844A", +"/++ c #443443", +"(++ c #1C777F", +"_++ c #1C7F88", +":++ c #463442", +"<++ c #206665", +"[++ c #286464", +"}++ c #413844", +"|++ c #325861", +"1++ c #03D4D3", +"2++ c #209A9E", +"3++ c #256F7D", +"4++ c #1098A2", +"5++ c #437D1B", +"6++ c #3C7927", +"7++ c #297F38", +"8++ c #3E4648", +"9++ c #3F3C4A", +"0++ c #3F394B", +"a++ c #3B5844", +"b++ c #307C38", +"c++ c #423649", +"d++ c #28704F", +"e++ c #34544B", +"f++ c #443147", +"g++ c #20845A", +"h++ c #0AB968", +"i++ c #364C4B", +"j++ c #413B49", +"k++ c #2C6045", +"l++ c #07C647", +"m++ c #2C6A48", +"n++ c #372C40", +"o++ c #84868A", +"p++ c #95959A", +"q++ c #353541", +"r++ c #3F3F4B", +"s++ c #606068", +"t++ c #B0B0AF", +"u++ c #A6ABA9", +"v++ c #B8A5AD", +"w++ c #64E4A9", +"x++ c #00FF86", +"y++ c #03FD8B", +"z++ c #00FF8A", +"A++ c #01FE8A", +"B++ c #00FF88", +"C++ c #27F296", +"D++ c #524C59", +"E++ c #403E4B", +"F++ c #3C484A", +"G++ c #3F404A", +"H++ c #3F404B", +"I++ c #3D474A", +"J++ c #3A5048", +"K++ c #3B4C49", +"L++ c #395249", +"M++ c #3A5049", +"N++ c #3F414A", +"O++ c #3B4D49", +"P++ c #3A504A", +"Q++ c #385549", +"R++ c #3C4A4A", +"S++ c #37574A", +"T++ c #3D464A", +"U++ c #3B4B4C", +"V++ c #403E48", +"W++ c #394856", +"X++ c #147393", +"Y++ c #413D47", +"Z++ c #3F404C", +"`++ c #3E3F4D", +" @+ c #443F40", +".@+ c #234593", +"+@+ c #0546E0", +"@@+ c #39476A", +"#@+ c #413E44", +"$@+ c #433D45", +"%@+ c #2F4A66", +"&@+ c #423D45", +"*@+ c #324A64", +"=@+ c #235782", +"-@+ c #433D44", +";@+ c #413C46", +">@+ c #364E5E", +",@+ c #21718A", +"'@+ c #423843", +")@+ c #17AEB7", +"!@+ c #26858F", +"~@+ c #433541", +"{@+ c #3E414D", +"]@+ c #3B4852", +"^@+ c #147C7D", +"/@+ c #1C859E", +"(@+ c #0797C9", +"_@+ c #2B5F76", +":@+ c #433942", +"<@+ c #433749", +"[@+ c #296D52", +"}@+ c #287154", +"|@+ c #228061", +"1@+ c #3C474E", +"2@+ c #1F7E43", +"3@+ c #346160", +"4@+ c #07E1E6", +"5@+ c #04E9ED", +"6@+ c #3D5460", +"7@+ c #255D5E", +"8@+ c #236E6E", +"9@+ c #433A46", +"0@+ c #3E434E", +"a@+ c #43333F", +"b@+ c #278A91", +"c@+ c #07FFFF", +"d@+ c #06E0E4", +"e@+ c #26AA6D", +"f@+ c #27B671", +"g@+ c #298849", +"h@+ c #3D4B3D", +"i@+ c #403C4E", +"j@+ c #3F3D4B", +"k@+ c #40464A", +"l@+ c #338136", +"m@+ c #3C4F45", +"n@+ c #403C4C", +"o@+ c #403F4B", +"p@+ c #11B059", +"q@+ c #1B9455", +"r@+ c #453248", +"s@+ c #33584F", +"t@+ c #0AC06A", +"u@+ c #247756", +"v@+ c #433849", +"w@+ c #403949", +"x@+ c #179D47", +"y@+ c #12AF48", +"z@+ c #B2B1B5", +"A@+ c #D8D9D8", +"B@+ c #66666E", +"C@+ c #4E4E58", +"D@+ c #A6AAA8", +"E@+ c #B7A4AC", +"F@+ c #64E3AB", +"G@+ c #00FF8B", +"H@+ c #03FD8E", +"I@+ c #00FF8E", +"J@+ c #01FE8E", +"K@+ c #00FF8C", +"L@+ c #27F299", +"M@+ c #403F4A", +"N@+ c #3E444B", +"O@+ c #3C4B4A", +"P@+ c #385749", +"Q@+ c #3D484A", +"R@+ c #38564A", +"S@+ c #355F49", +"T@+ c #346348", +"U@+ c #3A4F4A", +"V@+ c #39544B", +"W@+ c #39534A", +"X@+ c #3D484B", +"Y@+ c #3E444C", +"Z@+ c #3F4448", +"`@+ c #394A55", +" #+ c #127795", +".#+ c #394753", +"+#+ c #413E49", +"@#+ c #414048", +"##+ c #3C3E51", +"$#+ c #1B3387", +"%#+ c #403D45", +"&#+ c #2B4F6F", +"*#+ c #255177", +"=#+ c #443D44", +"-#+ c #413F48", +";#+ c #3B4454", +">#+ c #1E5A8A", +",#+ c #1E748D", +"'#+ c #394A58", +")#+ c #433842", +"!#+ c #0BD6DC", +"~#+ c #17B8C1", +"{#+ c #443540", +"]#+ c #3F424D", +"^#+ c #3F414B", +"/#+ c #15787F", +"(#+ c #39474C", +"_#+ c #235E80", +":#+ c #1A688D", +"<#+ c #433C44", +"[#+ c #423A4A", +"}#+ c #33584E", +"|#+ c #247752", +"1#+ c #28745C", +"2#+ c #315F58", +"3#+ c #2A6E43", +"4#+ c #22735C", +"5#+ c #07CDD8", +"6#+ c #20BCC0", +"7#+ c #443D48", +"8#+ c #2B585E", +"9#+ c #246A6D", +"0#+ c #3E444E", +"a#+ c #44313D", +"b#+ c #1F9FA5", +"c#+ c #0ADCDC", +"d#+ c #0AF6F1", +"e#+ c #0EF5E4", +"f#+ c #05EDED", +"g#+ c #375763", +"h#+ c #413B45", +"i#+ c #3F414C", +"j#+ c #413B4D", +"k#+ c #397538", +"l#+ c #38643D", +"m#+ c #41394D", +"n#+ c #29704F", +"o#+ c #0AC35C", +"p#+ c #35544C", +"q#+ c #423748", +"r#+ c #16A162", +"s#+ c #12A562", +"t#+ c #433A4B", +"u#+ c #335A48", +"v#+ c #04C043", +"w#+ c #408B5D", +"x#+ c #D7CBD4", +"y#+ c #D1D4D2", +"z#+ c #D2D1D2", +"A#+ c #C6C6C7", +"B#+ c #474752", +"C#+ c #40404C", +"D#+ c #41414D", +"E#+ c #9B9B9D", +"F#+ c #ACACAB", +"G#+ c #A5A9A7", +"H#+ c #B6A3AB", +"I#+ c #64E3AD", +"J#+ c #00FF8F", +"K#+ c #03FD92", +"L#+ c #00FF92", +"M#+ c #01FE92", +"N#+ c #27F29C", +"O#+ c #524C5A", +"P#+ c #3E454B", +"Q#+ c #3B4C4B", +"R#+ c #3D474B", +"S#+ c #3A514A", +"T#+ c #3C494B", +"U#+ c #3B4D4B", +"V#+ c #34624A", +"W#+ c #38554A", +"X#+ c #365D4A", +"Y#+ c #413C49", +"Z#+ c #3A4656", +"`#+ c #127994", +" $+ c #384C54", +".$+ c #413D49", +"+$+ c #1751A7", +"@$+ c #334469", +"#$+ c #423E45", +"$$+ c #3F404D", +"%$+ c #3E404D", +"&$+ c #443B43", +"*$+ c #274770", +"=$+ c #294B6E", +"-$+ c #443D45", +";$+ c #423B46", +">$+ c #1F5E89", +",$+ c #38485A", +"'$+ c #3F414D", +")$+ c #433943", +"!$+ c #2A6075", +"~$+ c #28657A", +"{$+ c #47333D", +"]$+ c #2C6270", +"^$+ c #227585", +"/$+ c #433944", +"($+ c #167380", +"_$+ c #31555F", +":$+ c #30516A", +"<$+ c #0E79A7", +"[$+ c #3C424F", +"}$+ c #3D424B", +"|$+ c #1D8555", +"1$+ c #335B53", +"2$+ c #247B61", +"3$+ c #335E47", +"4$+ c #089968", +"5$+ c #33495D", +"6$+ c #433742", +"7$+ c #433945", +"8$+ c #2A5B64", +"9$+ c #25686E", +"0$+ c #433B47", +"a$+ c #423844", +"b$+ c #336B71", +"c$+ c #01ECEF", +"d$+ c #03D7D7", +"e$+ c #23CFAE", +"f$+ c #09FDF9", +"g$+ c #11E8EB", +"h$+ c #01FFFF", +"i$+ c #27969C", +"j$+ c #44313E", +"k$+ c #40394E", +"l$+ c #3E6140", +"m$+ c #377834", +"n$+ c #403E4D", +"o$+ c #403F4C", +"p$+ c #1B9556", +"q$+ c #462F48", +"r$+ c #297156", +"s$+ c #09C16A", +"t$+ c #305C50", +"u$+ c #42394B", +"v$+ c #159242", +"w$+ c #26CC5D", +"x$+ c #C5CEC8", +"y$+ c #D6D3D5", +"z$+ c #9F9FA3", +"A$+ c #A3A8A6", +"B$+ c #B5A3AA", +"C$+ c #64E3AE", +"D$+ c #00FF93", +"E$+ c #03FD96", +"F$+ c #00FF95", +"G$+ c #01FE95", +"H$+ c #27F29F", +"I$+ c #534D5A", +"J$+ c #413F4B", +"K$+ c #3E464C", +"L$+ c #40424B", +"M$+ c #40414B", +"N$+ c #3F434B", +"O$+ c #3D494B", +"P$+ c #3F424B", +"Q$+ c #3F444B", +"R$+ c #423C4C", +"S$+ c #3C4C4B", +"T$+ c #3B514B", +"U$+ c #3A524A", +"V$+ c #3E474B", +"W$+ c #3E484C", +"X$+ c #39554B", +"Y$+ c #3F444C", +"Z$+ c #39544C", +"`$+ c #413F4C", +" %+ c #3F424C", +".%+ c #3E4A4A", +"+%+ c #375257", +"@%+ c #127C94", +"#%+ c #3B4653", +"$%+ c #423F49", +"%%+ c #40414C", +"&%+ c #40414D", +"*%+ c #364F6A", +"=%+ c #0081FF", +"-%+ c #1162D7", +";%+ c #42414A", +">%+ c #41434A", +",%+ c #169BB8", +"'%+ c #24698F", +")%+ c #413F4A", +"!%+ c #3F434D", +"~%+ c #0ACCE9", +"{%+ c #1E89B1", +"]%+ c #443840", +"^%+ c #3F424E", +"/%+ c #423E48", +"(%+ c #3A4A58", +"_%+ c #1E758F", +":%+ c #433C47", +"<%+ c #3C4551", +"[%+ c #1C7D8D", +"}%+ c #423F4A", +"|%+ c #177081", +"1%+ c #305360", +"2%+ c #3E4250", +"3%+ c #0D7AA9", +"4%+ c #315065", +"5%+ c #433D46", +"6%+ c #40424C", +"7%+ c #44394A", +"8%+ c #208055", +"9%+ c #34574E", +"0%+ c #28795F", +"a%+ c #14856E", +"b%+ c #148C4F", +"c%+ c #453847", +"d%+ c #3F434E", +"e%+ c #443B48", +"f%+ c #2C535E", +"g%+ c #236770", +"h%+ c #443848", +"i%+ c #3F3D4E", +"j%+ c #403D4F", +"k%+ c #3E2D49", +"l%+ c #355E61", +"m%+ c #31B158", +"n%+ c #3A9736", +"o%+ c #05F0E6", +"p%+ c #00DDE7", +"q%+ c #0DDCDF", +"r%+ c #3A6E77", +"s%+ c #413843", +"t%+ c #403F4E", +"u%+ c #414C48", +"v%+ c #3A822E", +"w%+ c #3F4947", +"x%+ c #413D4D", +"y%+ c #44384B", +"z%+ c #2A7050", +"A%+ c #0AC35D", +"B%+ c #38524D", +"C%+ c #3C464C", +"D%+ c #0DB868", +"E%+ c #1D8B5B", +"F%+ c #43394A", +"G%+ c #443C4D", +"H%+ c #335346", +"I%+ c #19D356", +"J%+ c #7CD398", +"K%+ c #DED2DA", +"L%+ c #D0D3D1", +"M%+ c #3A3A46", +"N%+ c #AEAEAD", +"O%+ c #A2A7A5", +"P%+ c #B5A2A9", +"Q%+ c #63E3B0", +"R%+ c #00FF97", +"S%+ c #03FD9A", +"T%+ c #00FF99", +"U%+ c #01FE99", +"V%+ c #00FF98", +"W%+ c #27F2A2", +"X%+ c #3E474C", +"Y%+ c #3C4E4C", +"Z%+ c #39574A", +"`%+ c #3E484B", +" &+ c #3D4C4C", +".&+ c #3C4D4C", +"+&+ c #3D4B4C", +"@&+ c #3B524B", +"#&+ c #3A554C", +"$&+ c #3E484D", +"%&+ c #3F444D", +"&&+ c #414049", +"*&+ c #375558", +"=&+ c #127E93", +"-&+ c #3B4754", +";&+ c #3D4659", +">&+ c #0C4DBE", +",&+ c #284F90", +"'&+ c #444248", +")&+ c #40404D", +"!&+ c #423C48", +"~&+ c #3C515A", +"{&+ c #00C3F5", +"]&+ c #1791C6", +"^&+ c #443F46", +"/&+ c #197CAA", +"(&+ c #206A96", +"_&+ c #453C43", +":&+ c #40414E", +"<&+ c #40424D", +"[&+ c #433B45", +"}&+ c #1F718A", +"|&+ c #355464", +"1&+ c #443B45", +"2&+ c #38505D", +"3&+ c #433D48", +"4&+ c #443D47", +"5&+ c #1E6479", +"6&+ c #256073", +"7&+ c #473942", +"8&+ c #16719A", +"9&+ c #206485", +"0&+ c #443C45", +"a&+ c #45384B", +"b&+ c #2A6B53", +"c&+ c #2B7051", +"d&+ c #246A66", +"e&+ c #138073", +"f&+ c #1C9858", +"g&+ c #365A52", +"h&+ c #423F4D", +"i&+ c #434146", +"j&+ c #276F78", +"k&+ c #138F9B", +"l&+ c #414F48", +"m&+ c #435144", +"n&+ c #3E5342", +"o&+ c #667E34", +"p&+ c #A7D007", +"q&+ c #3FB232", +"r&+ c #2C8F37", +"s&+ c #36685F", +"t&+ c #09B2C2", +"u&+ c #1E8B97", +"v&+ c #453641", +"w&+ c #423E4E", +"x&+ c #3E7C30", +"y&+ c #3E5E3E", +"z&+ c #413C4F", +"A&+ c #41404C", +"B&+ c #11B05A", +"C&+ c #1A9755", +"D&+ c #1C925E", +"E&+ c #0EB466", +"F&+ c #3B494C", +"G&+ c #423E4C", +"H&+ c #594D5F", +"I&+ c #5CCC81", +"J&+ c #2DDB66", +"K&+ c #BACAC0", +"L&+ c #D8D4D7", +"M&+ c #D1D2D1", +"N&+ c #CDCDCE", +"O&+ c #50505A", +"P&+ c #42424E", +"Q&+ c #B3A0A8", +"R&+ c #63E3B2", +"S&+ c #00FF9B", +"T&+ c #03FD9D", +"U&+ c #00FF9D", +"V&+ c #01FE9D", +"W&+ c #00FF9C", +"X&+ c #27F2A5", +"Y&+ c #534D5B", +"Z&+ c #41404D", +"`&+ c #3E494C", +" *+ c #3B504C", +".*+ c #375C4B", +"+*+ c #39574C", +"@*+ c #3C4C4C", +"#*+ c #3C4F4C", +"$*+ c #3F464D", +"%*+ c #3C4D4D", +"&*+ c #3A534F", +"**+ c #3D494D", +"=*+ c #3E474E", +"-*+ c #41404A", +";*+ c #3B4957", +">*+ c #127F93", +",*+ c #423F4B", +"'*+ c #3F414F", +")*+ c #463E40", +"!*+ c #294679", +"~*+ c #224B8B", +"{*+ c #433E49", +"]*+ c #2C5579", +"^*+ c #1A6597", +"/*+ c #423C47", +"(*+ c #40424E", +"_*+ c #433E48", +":*+ c #3C3E50", +"<*+ c #1E5887", +"[*+ c #42404B", +"}*+ c #443B46", +"|*+ c #2F5B6E", +"1*+ c #25647D", +"2*+ c #4B2C36", +"3*+ c #247080", +"4*+ c #2C6372", +"5*+ c #443A45", +"6*+ c #3F424F", +"7*+ c #1F6079", +"8*+ c #255C71", +"9*+ c #493840", +"0*+ c #255F7E", +"a*+ c #12749F", +"b*+ c #423E4D", +"c*+ c #394D4C", +"d*+ c #15925E", +"e*+ c #16736D", +"f*+ c #1A976A", +"g*+ c #03FA8E", +"h*+ c #0FC55D", +"i*+ c #287A3D", +"j*+ c #2D8242", +"k*+ c #0BDED8", +"l*+ c #01EEFA", +"m*+ c #2EA06E", +"n*+ c #467323", +"o*+ c #3E7630", +"p*+ c #6C9724", +"q*+ c #B9FC06", +"r*+ c #3CB833", +"s*+ c #1D8D75", +"t*+ c #483143", +"u*+ c #1F7A86", +"v*+ c #158B99", +"w*+ c #413A50", +"x*+ c #416839", +"y*+ c #3F7531", +"z*+ c #413B4F", +"A*+ c #44384C", +"B*+ c #2A7051", +"C*+ c #08C55C", +"D*+ c #35514B", +"E*+ c #335C52", +"F*+ c #08C46B", +"G*+ c #296F55", +"H*+ c #44394B", +"I*+ c #43434F", +"J*+ c #343642", +"K*+ c #857F8A", +"L*+ c #BCD5C3", +"M*+ c #21D75C", +"N*+ c #6CD08C", +"O*+ c #DED3DB", +"P*+ c #A9A9AC", +"Q*+ c #393946", +"R*+ c #43434E", +"S*+ c #B19EA6", +"T*+ c #63E2B3", +"U*+ c #00FF9F", +"V*+ c #03FDA1", +"W*+ c #00FFA0", +"X*+ c #01FEA1", +"Y*+ c #27F2A8", +"Z*+ c #544E5B", +"`*+ c #41424C", +" =+ c #40454D", +".=+ c #41434C", +"+=+ c #3F484D", +"@=+ c #42404D", +"#=+ c #3A574C", +"$=+ c #3E4C4C", +"%=+ c #3E4C4D", +"&=+ c #40444D", +"*=+ c #3B544C", +"==+ c #3C514C", +"-=+ c #3A554D", +";=+ c #3F494D", +">=+ c #3E4B4D", +",=+ c #3C514D", +"'=+ c #3B534F", +")=+ c #3D4952", +"!=+ c #167B8C", +"~=+ c #3B4A56", +"{=+ c #433F4A", +"]=+ c #41424D", +"^=+ c #42404C", +"/=+ c #41424E", +"(=+ c #433E46", +"_=+ c #177ECB", +":=+ c #007AFF", +"<=+ c #2E4D86", +"[=+ c #453F42", +"}=+ c #40424F", +"|=+ c #473B40", +"1=+ c #25567D", +"2=+ c #285F7C", +"3=+ c #473D43", +"4=+ c #42414C", +"5=+ c #1C5D8D", +"6=+ c #3B4658", +"7=+ c #43404A", +"8=+ c #3E4450", +"9=+ c #13AEBE", +"0=+ c #37636D", +"a=+ c #335663", +"b=+ c #217887", +"c=+ c #453B45", +"d=+ c #40434F", +"e=+ c #463D46", +"f=+ c #1E6882", +"g=+ c #1F627C", +"h=+ c #354F62", +"i=+ c #0C7CAC", +"j=+ c #364B5D", +"k=+ c #443F49", +"l=+ c #3F444E", +"m=+ c #07A365", +"n=+ c #365254", +"o=+ c #267D5E", +"p=+ c #11C46A", +"q=+ c #327759", +"r=+ c #413F45", +"s=+ c #374E56", +"t=+ c #06C1C8", +"u=+ c #1BD1D5", +"v=+ c #3F4D5D", +"w=+ c #41384B", +"x=+ c #403D50", +"y=+ c #3E3656", +"z=+ c #46801F", +"A=+ c #2A9555", +"B=+ c #0EA4AE", +"C=+ c #41434B", +"D=+ c #296C78", +"E=+ c #0F9CA8", +"F=+ c #3E4053", +"G=+ c #455342", +"H=+ c #418228", +"I=+ c #42464A", +"J=+ c #42414D", +"K=+ c #199755", +"L=+ c #12AD65", +"M=+ c #159F60", +"N=+ c #A4A7A9", +"O=+ c #E5DAE0", +"P=+ c #65CB86", +"Q=+ c #29DD63", +"R=+ c #B5CDBD", +"S=+ c #DBD5D9", +"T=+ c #D2D3D2", +"U=+ c #818188", +"V=+ c #44444F", +"W=+ c #4C4C57", +"X=+ c #9EA2A1", +"Y=+ c #B3A0A7", +"Z=+ c #62E2B5", +"`=+ c #03FDA5", +" -+ c #00FFA4", +".-+ c #01FEA4", +"+-+ c #27F2AB", +"@-+ c #554E5C", +"#-+ c #41434D", +"$-+ c #3D4E4D", +"%-+ c #3D4D4E", +"&-+ c #3F494E", +"*-+ c #3D4F4E", +"=-+ c #3A564E", +"--+ c #3C514E", +";-+ c #3B534E", +">-+ c #395B4F", +",-+ c #41444E", +"'-+ c #3D5050", +")-+ c #3D4E4F", +"!-+ c #3E4B4F", +"~-+ c #197987", +"{-+ c #3A4C58", +"]-+ c #42434C", +"^-+ c #40464F", +"/-+ c #41414E", +"(-+ c #44434A", +"_-+ c #145CB6", +":-+ c #0666E5", +"<-+ c #365885", +"[-+ c #443D43", +"}-+ c #414250", +"|-+ c #414450", +"1-+ c #453745", +"2-+ c #31777E", +"3-+ c #20779D", +"4-+ c #443B44", +"5-+ c #365F6D", +"6-+ c #404551", +"7-+ c #463F46", +"8-+ c #235780", +"9-+ c #2E506F", +"0-+ c #453F47", +"a-+ c #41424F", +"b-+ c #41454F", +"c-+ c #05E4F0", +"d-+ c #219AAB", +"e-+ c #1A8494", +"f-+ c #423E4B", +"g-+ c #404F58", +"h-+ c #0BBECA", +"i-+ c #01ABD9", +"j-+ c #395C6E", +"k-+ c #1178A4", +"l-+ c #275D7A", +"m-+ c #453D47", +"n-+ c #45404C", +"o-+ c #216861", +"p-+ c #0E9762", +"q-+ c #385A4F", +"r-+ c #355A56", +"s-+ c #26775E", +"t-+ c #4A2F47", +"u-+ c #404752", +"v-+ c #127B81", +"w-+ c #2B5A64", +"x-+ c #473744", +"y-+ c #42404A", +"z-+ c #43474C", +"A-+ c #433D51", +"B-+ c #3F6338", +"C-+ c #3D6D24", +"D-+ c #335A68", +"E-+ c #0AB0AF", +"F-+ c #38545D", +"G-+ c #345764", +"H-+ c #0AA1B1", +"I-+ c #38585F", +"J-+ c #487D24", +"K-+ c #425841", +"L-+ c #423D50", +"M-+ c #42434D", +"N-+ c #45394D", +"O-+ c #08C65D", +"P-+ c #36524B", +"Q-+ c #287759", +"R-+ c #09C069", +"S-+ c #355750", +"T-+ c #453D4D", +"U-+ c #C9CACA", +"V-+ c #DCD8DA", +"W-+ c #BDCDC2", +"X-+ c #2BDA64", +"Y-+ c #5DCE82", +"Z-+ c #DBD1D7", +"`-+ c #D2D4D2", +" ;+ c #575761", +".;+ c #3B3B48", +"+;+ c #7D8184", +"@;+ c #B8A5AB", +"#;+ c #61E0B5", +"$;+ c #00FFA7", +"%;+ c #03FDA8", +"&;+ c #01FEA8", +"*;+ c #26F1AD", +"=;+ c #3E4A4E", +"-;+ c #3F474E", +";;+ c #3E4C4E", +">;+ c #40474E", +",;+ c #40464E", +"';+ c #3F484E", +");+ c #395950", +"!;+ c #40454F", +"~;+ c #197B87", +"{;+ c #433F4B", +"];+ c #41414F", +"^;+ c #464348", +"/;+ c #243E78", +"(;+ c #224685", +"_;+ c #474245", +":;+ c #40414F", +"<;+ c #453844", +"[;+ c #2F7381", +"};+ c #05CFF7", +"|;+ c #1477AA", +"1;+ c #1789A7", +"2;+ c #02E6FF", +"3;+ c #188DBF", +"4;+ c #453C46", +"5;+ c #454049", +"6;+ c #2E4F6D", +"7;+ c #225984", +"8;+ c #463E46", +"9;+ c #443E49", +"0;+ c #2E6072", +"a;+ c #217189", +"b;+ c #463A45", +"c;+ c #1B8292", +"d;+ c #38515E", +"e;+ c #463B46", +"f;+ c #3B4A57", +"g;+ c #01CFE9", +"h;+ c #10D7F5", +"i;+ c #3C5B6A", +"j;+ c #463841", +"k;+ c #1D6B8F", +"l;+ c #177098", +"m;+ c #424049", +"n;+ c #463C4C", +"o;+ c #28635A", +"p;+ c #20695E", +"q;+ c #315F4E", +"r;+ c #257550", +"s;+ c #49334C", +"t;+ c #1D8D65", +"u;+ c #3E4952", +"v;+ c #1C6D76", +"w;+ c #226670", +"x;+ c #414150", +"y;+ c #403F50", +"z;+ c #3C3454", +"A;+ c #404E44", +"B;+ c #3D7E20", +"C;+ c #444748", +"D;+ c #3C4856", +"E;+ c #0DACAA", +"F;+ c #2C6B72", +"G;+ c #3F4651", +"H;+ c #0B9BB3", +"I;+ c #328F56", +"J;+ c #48672B", +"K;+ c #413C53", +"L;+ c #42414E", +"M;+ c #1B9655", +"N;+ c #394C4E", +"O;+ c #0BBE6A", +"P;+ c #21835A", +"Q;+ c #473D4E", +"R;+ c #75757C", +"S;+ c #DFD3DB", +"T;+ c #72CD8F", +"U;+ c #22DC5E", +"V;+ c #AECEB9", +"W;+ c #DBD3D9", +"X;+ c #D8DAD8", +"Y;+ c #B2B2B5", +"Z;+ c #575B62", +"`;+ c #B4A1A7", +" >+ c #61E1B8", +".>+ c #00FFAB", +"+>+ c #03FDAC", +"@>+ c #00FFAC", +"#>+ c #01FEAC", +"$>+ c #00FFAA", +"%>+ c #2FFAB8", +"&>+ c #635D68", +"*>+ c #43424E", +"=>+ c #41474E", +"->+ c #3D514F", +";>+ c #42444E", +">>+ c #404B4E", +",>+ c #3C544F", +"'>+ c #3C554F", +")>+ c #3F4B4F", +"!>+ c #3F4D4F", +"~>+ c #3E4E50", +"{>+ c #43414D", +"]>+ c #188087", +"^>+ c #395259", +"/>+ c #453E4B", +"(>+ c #404850", +"_>+ c #42434E", +":>+ c #41434F", +"<>+ c #484045", +"[>+ c #203A76", +"}>+ c #2D3E68", +"|>+ c #464349", +"1>+ c #42424F", +"2>+ c #423F4C", +"3>+ c #3D5262", +"4>+ c #473C44", +"5>+ c #2A778A", +"6>+ c #02F1FF", +"7>+ c #06D1F0", +"8>+ c #395266", +"9>+ c #463E47", +"0>+ c #3C4759", +"a>+ c #1C5D8E", +"b>+ c #1C758E", +"c>+ c #404552", +"d>+ c #247381", +"e>+ c #2F6371", +"f>+ c #443F4A", +"g>+ c #165E77", +"h>+ c #26607D", +"i>+ c #405561", +"j>+ c #464049", +"k>+ c #2E5770", +"l>+ c #0C7DAA", +"m>+ c #3F4356", +"n>+ c #385251", +"o>+ c #157A5F", +"p>+ c #443F4B", +"q>+ c #395B5F", +"r>+ c #0BD295", +"s>+ c #306953", +"t>+ c #287D54", +"u>+ c #169266", +"v>+ c #188167", +"w>+ c #415249", +"x>+ c #424D49", +"y>+ c #404E4A", +"z>+ c #455047", +"A>+ c #79A824", +"B>+ c #4C9B12", +"C>+ c #405142", +"D>+ c #433E51", +"E>+ c #43424B", +"F>+ c #149D9E", +"G>+ c #1F898B", +"H>+ c #443A4B", +"I>+ c #119DA4", +"J>+ c #27916F", +"K>+ c #474044", +"L>+ c #414350", +"M>+ c #463A4D", +"N>+ c #2B7151", +"O>+ c #09C65D", +"P>+ c #34594D", +"Q>+ c #1C9761", +"R>+ c #0EB065", +"S>+ c #40494F", +"T>+ c #A3A4A7", +"U>+ c #D1D2D2", +"V>+ c #D9D6D8", +"W>+ c #C2CCC5", +"X>+ c #32DA68", +"Y>+ c #57D480", +"Z>+ c #D5CED3", +"`>+ c #DEDFDD", +" ,+ c #8B8C91", +".,+ c #454550", +"+,+ c #9C8991", +"@,+ c #66E6BE", +"#,+ c #00FFAF", +"$,+ c #03FDB0", +"%,+ c #00FFB0", +"&,+ c #02FEB0", +"*,+ c #00FFAD", +"=,+ c #34FFBF", +"-,+ c #8A848A", +";,+ c #444450", +">,+ c #43424F", +",,+ c #42434F", +"',+ c #41484F", +"),+ c #43414E", +"!,+ c #42454F", +"~,+ c #3F4C4F", +"{,+ c #404950", +"],+ c #3C5453", +"^,+ c #188386", +"/,+ c #3B4D58", +"(,+ c #44404C", +"_,+ c #424350", +":,+ c #44404A", +"<,+ c #3C5063", +"[,+ c #0972D2", +"},+ c #2C4B7F", +"|,+ c #474146", +"1,+ c #43414C", +"2,+ c #453A47", +"3,+ c #37656D", +"4,+ c #03E8F7", +"5,+ c #02C3EE", +"6,+ c #2B8297", +"7,+ c #463843", +"8,+ c #1C5E8E", +"9,+ c #384C62", +"0,+ c #45414B", +"a,+ c #424450", +"b,+ c #473E48", +"c,+ c #2A6175", +"d,+ c #2B6277", +"e,+ c #365965", +"f,+ c #1D8090", +"g,+ c #186074", +"h,+ c #29596D", +"i,+ c #483D46", +"j,+ c #433E4A", +"k,+ c #424451", +"l,+ c #44414C", +"m,+ c #3C4959", +"n,+ c #0D7BAB", +"o,+ c #285F75", +"p,+ c #197653", +"q,+ c #365555", +"r,+ c #493447", +"s,+ c #317570", +"t,+ c #00FFB5", +"u,+ c #20A566", +"v,+ c #1F8553", +"w,+ c #0EA75E", +"x,+ c #36763F", +"y,+ c #357D39", +"z,+ c #3A7F36", +"A,+ c #3B7932", +"B,+ c #4F8F27", +"C,+ c #A2FF00", +"D,+ c #7ADB10", +"E,+ c #434350", +"F,+ c #42444F", +"G,+ c #463C48", +"H,+ c #208689", +"I,+ c #129DA1", +"J,+ c #484643", +"K,+ c #1FA382", +"L,+ c #198A97", +"M,+ c #453D4B", +"N,+ c #1C9656", +"O,+ c #2E6955", +"P,+ c #09C46B", +"Q,+ c #2C6653", +"R,+ c #4B4152", +"S,+ c #C5C7C7", +"T,+ c #E1D5DD", +"U,+ c #82D09B", +"V,+ c #1DDB5B", +"W,+ c #A0CBAE", +"X,+ c #E2D8DE", +"Y,+ c #5C5F67", +"Z,+ c #3C3C49", +"`,+ c #393D49", +" '+ c #73606D", +".'+ c #69E8C2", +"+'+ c #00FFB2", +"@'+ c #03FDB3", +"#'+ c #00FFB3", +"$'+ c #02FEB4", +"%'+ c #00FFB1", +"&'+ c #2EF9BD", +"*'+ c #A9A2A5", +"='+ c #494A55", +"-'+ c #41464F", +";'+ c #41474F", +">'+ c #3E4F51", +",'+ c #3D5150", +"''+ c #3D5250", +")'+ c #3E5050", +"!'+ c #43404E", +"~'+ c #3F4D51", +"{'+ c #198285", +"]'+ c #43454E", +"^'+ c #414750", +"/'+ c #404951", +"('+ c #414451", +"_'+ c #473B41", +":'+ c #1F78AF", +"<'+ c #0090FF", +"['+ c #116BD5", +"}'+ c #44434D", +"|'+ c #44444E", +"1'+ c #198AAE", +"2'+ c #0894C7", +"3'+ c #3E5461", +"4'+ c #433F4C", +"5'+ c #474148", +"6'+ c #25557F", +"7'+ c #2E4A6E", +"8'+ c #483E45", +"9'+ c #44414D", +"0'+ c #3D4856", +"a'+ c #375562", +"b'+ c #067E90", +"c'+ c #2D5262", +"d'+ c #46414C", +"e'+ c #414551", +"f'+ c #43414B", +"g'+ c #1A6D9A", +"h'+ c #068592", +"i'+ c #2E5D4E", +"j'+ c #473E4F", +"k'+ c #3A645B", +"l'+ c #3A585F", +"m'+ c #15726B", +"n'+ c #198C6C", +"o'+ c #3B4F56", +"p'+ c #443C4F", +"q'+ c #42414F", +"r'+ c #42404F", +"s'+ c #568534", +"t'+ c #5B7740", +"u'+ c #42464F", +"v'+ c #473D47", +"w'+ c #2C6D72", +"x'+ c #0AAAB2", +"y'+ c #4B7F2A", +"z'+ c #2A8F6C", +"A'+ c #0F95AB", +"B'+ c #404650", +"C'+ c #463B4E", +"D'+ c #2E6750", +"E'+ c #13B169", +"F'+ c #109057", +"G'+ c #6E6874", +"H'+ c #DDDEDD", +"I'+ c #D4D5D4", +"J'+ c #D8D6D7", +"K'+ c #C8CDCA", +"L'+ c #34D569", +"M'+ c #53DB7F", +"N'+ c #C0BBC0", +"O'+ c #3F444F", +"P'+ c #544152", +"Q'+ c #56D5B3", +"R'+ c #00FFBA", +"S'+ c #02FDB7", +"T'+ c #00FFB7", +"U'+ c #02FEB8", +"V'+ c #00FFB6", +"W'+ c #2BF7BE", +"X'+ c #B2ACAC", +"Y'+ c #6D6E74", +"Z'+ c #454551", +"`'+ c #44424F", +" )+ c #414B51", +".)+ c #434550", +"+)+ c #434650", +"@)+ c #424750", +"#)+ c #3F4F51", +"$)+ c #3F4E51", +"%)+ c #3F5052", +"&)+ c #3E5353", +"*)+ c #3F4F52", +"=)+ c #168A8A", +"-)+ c #355B62", +";)+ c #414C4F", +">)+ c #424550", +",)+ c #414A52", +"')+ c #44434F", +"))+ c #43444F", +"!)+ c #424452", +"~)+ c #484145", +"{)+ c #275994", +"])+ c #005DDD", +"^)+ c #2668AE", +"/)+ c #46434B", +"()+ c #434450", +"_)+ c #45414D", +":)+ c #43404F", +"<)+ c #136A9B", +"[)+ c #384A60", +"})+ c #45434D", +"|)+ c #463F4A", +"1)+ c #33586E", +"2)+ c #1689B0", +"3)+ c #444452", +"4)+ c #44434E", +"5)+ c #434451", +"6)+ c #424652", +"7)+ c #483C47", +"8)+ c #266B7F", +"9)+ c #0AB2BA", +"0)+ c #366C77", +"a)+ c #4A3544", +"b)+ c #473E4D", +"c)+ c #45404E", +"d)+ c #424551", +"e)+ c #4A3C49", +"f)+ c #1E6E80", +"g)+ c #0686A8", +"h)+ c #424454", +"i)+ c #44404E", +"j)+ c #127F66", +"k)+ c #31595A", +"l)+ c #346757", +"m)+ c #287555", +"n)+ c #4B344A", +"o)+ c #444350", +"p)+ c #453F4F", +"q)+ c #453E50", +"r)+ c #413255", +"s)+ c #3F3454", +"t)+ c #423E53", +"u)+ c #443650", +"v)+ c #355465", +"w)+ c #0EBCA8", +"x)+ c #3D7E47", +"y)+ c #34616A", +"z)+ c #0BA2B1", +"A)+ c #3B515D", +"B)+ c #46404C", +"C)+ c #12B05A", +"D)+ c #1D9756", +"E)+ c #24895E", +"F)+ c #02B15F", +"G)+ c #93ACA3", +"H)+ c #E2DCDE", +"I)+ c #D3D5D4", +"J)+ c #E0D5DD", +"K)+ c #84CA9B", +"L)+ c #28E765", +"M)+ c #578F6E", +"N)+ c #443A4E", +"O)+ c #424651", +"P)+ c #4B384A", +"Q)+ c #43C2A5", +"R)+ c #00FFC1", +"S)+ c #01FCBA", +"T)+ c #00FFBB", +"U)+ c #02FEBB", +"V)+ c #2CF8C2", +"W)+ c #ADA7A8", +"X)+ c #909192", +"Y)+ c #454651", +"Z)+ c #404C51", +"`)+ c #424851", +" !+ c #3D5754", +".!+ c #168D89", +"+!+ c #336165", +"@!+ c #444250", +"#!+ c #45444E", +"$!+ c #414254", +"%!+ c #11439E", +"&!+ c #3C445A", +"*!+ c #46424C", +"=!+ c #1A6794", +"-!+ c #285C7C", +";!+ c #46444D", +">!+ c #473846", +",!+ c #2F7F86", +"'!+ c #00DFFF", +")!+ c #20719D", +"!!+ c #483B43", +"~!+ c #46414E", +"{!+ c #424752", +"]!+ c #424A55", +"^!+ c #13787C", +"/!+ c #148190", +"(!+ c #0AEDEF", +"_!+ c #0BC0C3", +":!+ c #276D6C", +"~+ c #345A5F", +",~+ c #28726A", +"'~+ c #1F8168", +")~+ c #207D5A", +"!~+ c #14C491", +"~~+ c #02D075", +"{~+ c #316253", +"]~+ c #1573A5", +"^~+ c #216A89", +"/~+ c #483F51", +"(~+ c #276A57", +"_~+ c #1B765B", +":~+ c #464351", +"<~+ c #3F4F5B", +"[~+ c #04F7CE", +"}~+ c #15B67D", +"|~+ c #2D754E", +"1~+ c #317D50", +"2~+ c #397249", +"3~+ c #3C7145", +"4~+ c #417342", +"5~+ c #45733D", +"6~+ c #486D3B", +"7~+ c #435B41", +"8~+ c #8FAD1C", +"9~+ c #49E17F", +"0~+ c #1D9293", +"a~+ c #0F9EAB", +"b~+ c #277380", +"c~+ c #473D49", +"d~+ c #14AF5B", +"e~+ c #179D56", +"f~+ c #28B373", +"g~+ c #41D88E", +"h~+ c #CCD1CF", +"i~+ c #D9D7D8", +"j~+ c #D6D5D5", +"k~+ c #D3D5D3", +"l~+ c #E2D7DE", +"m~+ c #8EC9A2", +"n~+ c #04C445", +"o~+ c #2E6F4B", +"p~+ c #473C51", +"q~+ c #444451", +"r~+ c #4D3A4B", +"s~+ c #44C4AA", +"t~+ c #00FFC9", +"u~+ c #01FCC1", +"v~+ c #00FFC2", +"w~+ c #02FEC3", +"x~+ c #2DF8C8", +"y~+ c #A8A2A3", +"z~+ c #87878A", +"A~+ c #444551", +"B~+ c #454450", +"C~+ c #424A53", +"D~+ c #424C53", +"E~+ c #414F54", +"F~+ c #434952", +"G~+ c #178C81", +"H~+ c #346163", +"I~+ c #483F4D", +"J~+ c #434752", +"K~+ c #424B53", +"L~+ c #454350", +"M~+ c #45444F", +"N~+ c #414457", +"O~+ c #133F99", +"P~+ c #384363", +"Q~+ c #47454D", +"R~+ c #444652", +"S~+ c #483E49", +"T~+ c #335C70", +"U~+ c #04B5DA", +"V~+ c #306A84", +"W~+ c #473F4A", +"X~+ c #45434F", +"Y~+ c #493C45", +"Z~+ c #483F49", +"`~+ c #375765", +" {+ c #1C7E85", +".{+ c #19B3B5", +"+{+ c #09AFA3", +"@{+ c #286567", +"#{+ c #4F3845", +"${+ c #2B6275", +"%{+ c #2B6177", +"&{+ c #4B3843", +"*{+ c #493D4C", +"={+ c #46424F", +"-{+ c #12CA83", +";{+ c #0EF393", +">{+ c #445755", +",{+ c #20648A", +"'{+ c #146F9B", +"){+ c #4A3646", +"!{+ c #325D51", +"~{+ c #148058", +"{{+ c #434851", +"]{+ c #464250", +"^{+ c #444550", +"/{+ c #366D63", +"({+ c #434D58", +"_{+ c #463F51", +":{+ c #463D52", +"<{+ c #453D52", +"[{+ c #453D53", +"}{+ c #443D53", +"|{+ c #443E54", +"1{+ c #423E56", +"2{+ c #43374C", +"3{+ c #258583", +"4{+ c #10A3A6", +"5{+ c #17909E", +"6{+ c #1D8593", +"7{+ c #473F4B", +"8{+ c #444552", +"9{+ c #444651", +"0{+ c #483D50", +"a{+ c #2B7152", +"b{+ c #12C361", +"c{+ c #41C582", +"d{+ c #29D985", +"e{+ c #9BCEB5", +"f{+ c #E2D8DD", +"g{+ c #D4D6D5", +"h{+ c #DFDFDE", +"i{+ c #A2A0A5", +"j{+ c #0D9C40", +"k{+ c #13B24A", +"l{+ c #454451", +"m{+ c #44C4AC", +"n{+ c #00FFCD", +"o{+ c #01FCC5", +"p{+ c #00FFC7", +"q{+ c #00FFC6", +"r{+ c #2DF8CB", +"s{+ c #989999", +"t{+ c #9E9E9D", +"u{+ c #575760", +"v{+ c #424B52", +"w{+ c #444752", +"x{+ c #444650", +"y{+ c #424A54", +"z{+ c #0DB5AA", +"A{+ c #346669", +"B{+ c #493B49", +"C{+ c #424456", +"D{+ c #123B98", +"E{+ c #32426D", +"F{+ c #48454C", +"G{+ c #16D0D4", +"H{+ c #06F6FF", +"I{+ c #03B7F2", +"J{+ c #3E5264", +"K{+ c #434754", +"L{+ c #48404B", +"M{+ c #45424E", +"N{+ c #0ADFDF", +"O{+ c #03F9EC", +"P{+ c #405E68", +"Q{+ c #473D4A", +"R{+ c #3F4A57", +"S{+ c #1B7C94", +"T{+ c #424B57", +"U{+ c #473F4F", +"V{+ c #434A4F", +"W{+ c #405557", +"X{+ c #4B3847", +"Y{+ c #2D6478", +"Z{+ c #01C8DF", +"`{+ c #1BA3B0", +" ]+ c #177F59", +".]+ c #3B514F", +"+]+ c #474151", +"@]+ c #483B4C", +"#]+ c #45424F", +"$]+ c #454650", +"%]+ c #444751", +"&]+ c #493E4A", +"*]+ c #2F6871", +"=]+ c #0BB2B0", +"-]+ c #3D505A", +";]+ c #217F8C", +">]+ c #1495A2", +",]+ c #464552", +"']+ c #2ABE6D", +")]+ c #34D47B", +"!]+ c #2AD281", +"~]+ c #5FD19A", +"{]+ c #DDD5D9", +"]]+ c #DEE1DE", +"^]+ c #746A7A", +"/]+ c #2A5943", +"(]+ c #0BCA4B", +"_]+ c #2A774A", +":]+ c #493C51", +"<]+ c #434753", +"[]+ c #44C4AE", +"}]+ c #00FFD1", +"|]+ c #01FCC9", +"1]+ c #00FFCA", +"2]+ c #02FECA", +"3]+ c #2DF8CE", +"4]+ c #A8A1A3", +"5]+ c #969897", +"6]+ c #7A7A7F", +"7]+ c #3F3F4C", +"8]+ c #464653", +"9]+ c #444754", +"0]+ c #493846", +"a]+ c #2998A0", +"b]+ c #11CEC6", +"c]+ c #444954", +"d]+ c #46454F", +"e]+ c #434353", +"f]+ c #0D41AB", +"g]+ c #35426A", +"h]+ c #4A4548", +"i]+ c #444553", +"j]+ c #454552", +"k]+ c #47404C", +"l]+ c #11C2D7", +"m]+ c #00BBF3", +"n]+ c #0D9FD6", +"o]+ c #415C6A", +"p]+ c #444653", +"q]+ c #444753", +"r]+ c #473F4D", +"s]+ c #38676F", +"t]+ c #39757D", +"u]+ c #493F4A", +"v]+ c #236D84", +"w]+ c #32576B", +"x]+ c #4B3A46", +"y]+ c #434854", +"z]+ c #454351", +"A]+ c #454352", +"B]+ c #473C48", +"C]+ c #1CB6BA", +"D]+ c #06FFFF", +"E]+ c #12ACCA", +"F]+ c #48404D", +"G]+ c #47414E", +"H]+ c #3A5760", +"I]+ c #0BB2B1", +"J]+ c #34646B", +"K]+ c #2E6977", +"L]+ c #0CA2B0", +"M]+ c #3E4E5B", +"N]+ c #655A6B", +"O]+ c #88CBA6", +"P]+ c #28DB76", +"Q]+ c #2FCD7D", +"R]+ c #34D588", +"S]+ c #BBD0C6", +"T]+ c #DDD8DA", +"U]+ c #C2C2C4", +"V]+ c #484954", +"W]+ c #453E4F", +"X]+ c #1A9D49", +"Y]+ c #0FB749", +"Z]+ c #3E4A4D", +"`]+ c #464352", +" ^+ c #464651", +".^+ c #444853", +"+^+ c #4E3B4B", +"@^+ c #45C4B0", +"#^+ c #00FFD5", +"$^+ c #01FCCC", +"%^+ c #00FFCE", +"&^+ c #02FECE", +"*^+ c #2DF8D1", +"=^+ c #A7A1A2", +"-^+ c #979898", +";^+ c #9A9B9B", +">^+ c #4E4E59", +",^+ c #464652", +"'^+ c #454652", +")^+ c #464551", +"!^+ c #454854", +"~^+ c #4A3A46", +"{^+ c #21A8AD", +"]^+ c #00E3D4", +"^^+ c #14DED8", +"/^+ c #45505B", +"(^+ c #46434F", +"_^+ c #454654", +":^+ c #494248", +"<^+ c #2C5F99", +"[^+ c #0075FF", +"}^+ c #1152D3", +"|^+ c #424559", +"1^+ c #464650", +"2^+ c #454653", +"3^+ c #47424D", +"4^+ c #405062", +"5^+ c #1383BB", +"6^+ c #1378AD", +"7^+ c #454752", +"8^+ c #483E4B", +"9^+ c #483C48", +"0^+ c #48414D", +"a^+ c #385766", +"b^+ c #12AFBD", +"c^+ c #3E5C67", +"d^+ c #4C3B49", +"e^+ c #444953", +"f^+ c #46424D", +"g^+ c #0FD8DC", +"h^+ c #08EEFB", +"i^+ c #07BFE6", +"j^+ c #11D2EC", +"k^+ c #454D57", +"l^+ c #464350", +"m^+ c #464450", +"n^+ c #424955", +"o^+ c #0FA9A8", +"p^+ c #287C80", +"q^+ c #385966", +"r^+ c #0AA7B5", +"s^+ c #365C68", +"t^+ c #49414D", +"u^+ c #454753", +"v^+ c #474753", +"w^+ c #ADACB0", +"x^+ c #42D482", +"y^+ c #27D475", +"z^+ c #26D481", +"A^+ c #85CFAB", +"B^+ c #E2D7DC", +"C^+ c #D4D4D5", +"D^+ c #74747C", +"E^+ c #4B4255", +"F^+ c #345D4B", +"G^+ c #09C749", +"H^+ c #258049", +"I^+ c #493D52", +"J^+ c #454751", +"K^+ c #45C4B2", +"L^+ c #00FFD9", +"M^+ c #01FCD0", +"N^+ c #00FFD2", +"O^+ c #02FED2", +"P^+ c #2DF8D4", +"Q^+ c #A6A0A1", +"R^+ c #969797", +"S^+ c #9F9F9E", +"T^+ c #3F3F4D", +"U^+ c #48414F", +"V^+ c #3B555D", +"W^+ c #0AA89B", +"X^+ c #3C6D76", +"Y^+ c #483E4C", +"Z^+ c #48434A", +"`^+ c #136BD3", +" /+ c #045EE9", +"./+ c #035BF4", +"+/+ c #39527F", +"@/+ c #484349", +"#/+ c #49414B", +"$/+ c #414555", +"%/+ c #0E6FAC", +"&/+ c #374F67", +"*/+ c #48434D", +"=/+ c #454754", +"-/+ c #493C49", +";/+ c #377079", +">/+ c #0FA9B3", +",/+ c #2A6567", +"'/+ c #365B5D", +")/+ c #434852", +"!/+ c #494051", +"~/+ c #493E53", +"{/+ c #4D3446", +"]/+ c #1C9C9E", +"^/+ c #00C6F0", +"//+ c #03B2DB", +"(/+ c #3195A4", +"_/+ c #483F4B", +":/+ c #48414E", +"(+ c #483E52", +",(+ c #454954", +"'(+ c #4F3C4B", +")(+ c #45C5B6", +"!(+ c #00FFE1", +"~(+ c #01FCD7", +"{(+ c #02FED9", +"](+ c #2DF8DA", +"^(+ c #A59FA0", +"/(+ c #959696", +"((+ c #9C9C9B", +"_(+ c #62626A", +":(+ c #484853", +"<(+ c #464753", +"[(+ c #474652", +"}(+ c #4B3D48", +"|(+ c #49404B", +"1(+ c #4B4048", +"2(+ c #464853", +"3(+ c #4B414E", +"4(+ c #1E797C", +"5(+ c #4A4451", +"6(+ c #464752", +"7(+ c #474751", +"8(+ c #464553", +"9(+ c #10389E", +"0(+ c #364166", +"a(+ c #4A474B", +"b(+ c #464754", +"c(+ c #4B434B", +"d(+ c #2D5A7C", +"e(+ c #136EA6", +"f(+ c #4A3C48", +"g(+ c #4B414F", +"h(+ c #4A414F", +"i(+ c #444B54", +"j(+ c #3A5451", +"k(+ c #20995E", +"l(+ c #20B853", +"m(+ c #3B4C6A", +"n(+ c #0985B3", +"o(+ c #335A71", +"p(+ c #4A434D", +"q(+ c #464854", +"r(+ c #4A404D", +"s(+ c #33676F", +"t(+ c #0AB3B1", +"u(+ c #3B5962", +"v(+ c #1E8693", +"w(+ c #16929F", +"x(+ c #474450", +"y(+ c #494954", +"z(+ c #76767E", +"A(+ c #E2D7DD", +"B(+ c #8ECDA9", +"C(+ c #1BD96E", +"D(+ c #1BD275", +"E(+ c #69CD9E", +"F(+ c #E9E0E3", +"G(+ c #A2A5A8", +"H(+ c #484854", +"I(+ c #493F52", +"J(+ c #1F8F49", +"K(+ c #0BC149", +"L(+ c #3B554E", +"M(+ c #494354", +"N(+ c #464852", +"O(+ c #454955", +"P(+ c #4F3C4C", +"Q(+ c #45C5B8", +"R(+ c #00FFE5", +"S(+ c #01FCDB", +"T(+ c #02FEDD", +"U(+ c #2CF8DD", +"V(+ c #A49E9F", +"W(+ c #949595", +"X(+ c #9A9A99", +"Y(+ c #838386", +"Z(+ c #474653", +"`(+ c #464855", +" _+ c #454856", +"._+ c #464755", +"+_+ c #484450", +"@_+ c #2395AA", +"#_+ c #0EB0DF", +"$_+ c #296F9A", +"%_+ c #474551", +"&_+ c #4B4350", +"*_+ c #1F747B", +"=_+ c #286B74", +"-_+ c #464654", +";_+ c #43465A", +">_+ c #11389C", +",_+ c #33426E", +"'_+ c #4A484F", +")_+ c #484551", +"!_+ c #3F4C5E", +"~_+ c #0E72AF", +"{_+ c #385069", +"]_+ c #4A444F", +"^_+ c #464956", +"/_+ c #4B3F53", +"(_+ c #2A995A", +"__+ c #445F58", +":_+ c #3E4B61", +"<_+ c #0B84B3", +"[_+ c #296482", +"}_+ c #4B424D", +"|_+ c #494350", +"1_+ c #3D555F", +"2_+ c #306D73", +"3_+ c #297381", +"4_+ c #0F9FAC", +"5_+ c #434B58", +"6_+ c #484552", +"7_+ c #484855", +"8_+ c #41D380", +"9_+ c #12D86D", +"0_+ c #39D087", +"a_+ c #C2D1CA", +"b_+ c #605C69", +"c_+ c #3C534F", +"d_+ c #0DC04A", +"e_+ c #1E924A", +"f_+ c #484053", +"g_+ c #45C5BA", +"h_+ c #00FFE9", +"i_+ c #01FCDF", +"j_+ c #02FEE1", +"k_+ c #2CF8E0", +"l_+ c #A49E9E", +"m_+ c #939594", +"n_+ c #575762", +"o_+ c #434351", +"p_+ c #4A404B", +"q_+ c #4B3E4A", +"r_+ c #4B404A", +"s_+ c #4B4149", +"t_+ c #484652", +"u_+ c #494650", +"v_+ c #4A454E", +"w_+ c #4B454E", +"x_+ c #494751", +"y_+ c #4B3C48", +"z_+ c #2C8495", +"A_+ c #01BDF2", +"B_+ c #00B1FF", +"C_+ c #1F77B2", +"D_+ c #4B4249", +"E_+ c #464856", +"F_+ c #484654", +"G_+ c #177984", +"H_+ c #4B424F", +"I_+ c #484752", +"J_+ c #444659", +"K_+ c #4B484E", +"L_+ c #464655", +"M_+ c #49444E", +"N_+ c #196A9E", +"O_+ c #24608A", +"P_+ c #4B434C", +"Q_+ c #474654", +"R_+ c #4B3953", +"S_+ c #484151", +"T_+ c #434A57", +"U_+ c #117DA9", +"V_+ c #1F6F92", +"W_+ c #49444F", +"X_+ c #11A6A5", +"Y_+ c #258387", +"Z_+ c #34616F", +"`_+ c #0AA7B4", +" :+ c #3A5865", +".:+ c #494956", +"+:+ c #3C3C4A", +"@:+ c #83838A", +"#:+ c #8ECCA9", +"$:+ c #11D969", +"%:+ c #22DC7C", +"&:+ c #53937A", +"*:+ c #473D50", +"=:+ c #474954", +"-:+ c #464953", +";:+ c #4A3E54", +">:+ c #24874B", +",:+ c #0AC649", +"':+ c #365C4D", +"):+ c #4A4255", +"!:+ c #464A56", +"~:+ c #503D4C", +"{:+ c #45C5BC", +"]:+ c #01FCE2", +"^:+ c #00FFE4", +"/:+ c #02FEE4", +"(:+ c #2CF8E3", +"_:+ c #A39D9E", +"::+ c #939494", +"<:+ c #77777C", +"[:+ c #494955", +"}:+ c #474956", +"|:+ c #4B404C", +"1:+ c #346D82", +"2:+ c #14A6CC", +"3:+ c #1695CA", +"4:+ c #2E678F", +"5:+ c #4A444E", +"6:+ c #4B464E", +"7:+ c #4B464F", +"8:+ c #4A4650", +"9:+ c #43495A", +"0:+ c #3C4C64", +"a:+ c #35506F", +"b:+ c #2E537A", +"c:+ c #245787", +"d:+ c #1D578F", +"e:+ c #077BBD", +"f:+ c #0894C8", +"g:+ c #098ECA", +"h:+ c #009CFC", +"i:+ c #18A5DE", +"j:+ c #494750", +"k:+ c #474755", +"l:+ c #474854", +"m:+ c #494652", +"n:+ c #444C59", +"o:+ c #147989", +"p:+ c #3C5562", +"q:+ c #4A4551", +"r:+ c #474855", +"s:+ c #484852", +"t:+ c #454759", +"u:+ c #11399E", +"v:+ c #2B407C", +"w:+ c #4C494E", +"x:+ c #4C444D", +"y:+ c #2E5B7D", +"z:+ c #146FA7", +"A:+ c #464B54", +"B:+ c #494651", +"C:+ c #1A759C", +"D:+ c #1679A3", +"E:+ c #484753", +"F:+ c #474955", +"G:+ c #4A414E", +"H:+ c #1E8F92", +"I:+ c #189D9D", +"J:+ c #3A5966", +"K:+ c #0CA6B4", +"L:+ c #306A76", +"M:+ c #4B424E", +"N:+ c #50505B", +"O:+ c #3AD07C", +"P:+ c #0ADD6B", +"Q:+ c #1D9660", +"R:+ c #484452", +"S:+ c #4A4555", +"T:+ c #3F504F", +"U:+ c #1D9A4A", +"V:+ c #494253", +"W:+ c #454A56", +"X:+ c #45C5BE", +"Y:+ c #00FFF1", +"Z:+ c #01FCE6", +"`:+ c #00FFE8", +" <+ c #02FEE8", +".<+ c #2CF8E6", +"+<+ c #A29C9D", +"@<+ c #929393", +"#<+ c #55555F", +"$<+ c #4B404D", +"%<+ c #396677", +"&<+ c #01E3FD", +"*<+ c #00C1FD", +"=<+ c #00ABFF", +"-<+ c #1C76BA", +";<+ c #354B6A", +"><+ c #295480", +",<+ c #21578B", +"'<+ c #1B5A94", +")<+ c #155C9C", +"!<+ c #0F5DA1", +"~<+ c #0B5CA3", +"{<+ c #0A5BA1", +"]<+ c #0A5A9E", +"^<+ c #105491", +"/<+ c #086BAC", +"(<+ c #0093DF", +"_<+ c #07AFF7", +":<+ c #0CC3FF", +"<<+ c #2EAAC6", +"[<+ c #4B414B", +"}<+ c #464957", +"|<+ c #4A4552", +"1<+ c #3B5363", +"2<+ c #13788D", +"3<+ c #424E5D", +"4<+ c #44475A", +"5<+ c #11399F", +"6<+ c #2C407B", +"7<+ c #4C494F", +"8<+ c #474756", +"9<+ c #404D60", +"0<+ c #0F73B0", +"a<+ c #39516A", +"b<+ c #4B4550", +"c<+ c #474856", +"d<+ c #4B444E", +"e<+ c #256A8A", +"f<+ c #0F81AF", +"g<+ c #414D5D", +"h<+ c #4B404E", +"i<+ c #2A797F", +"j<+ c #0FADAC", +"k<+ c #3C5863", +"l<+ c #129CAA", +"m<+ c #257B89", +"n<+ c #4A4A57", +"o<+ c #94949A", +"p<+ c #91CEAB", +"q<+ c #05D864", +"r<+ c #0ABA62", +"s<+ c #3C5B58", +"t<+ c #4A4354", +"u<+ c #4B3F55", +"v<+ c #287F4B", +"w<+ c #0BC84A", +"x<+ c #34644D", +"y<+ c #4B4256", +"z<+ c #45C5C0", +"A<+ c #00FFF5", +"B<+ c #01FCEA", +"C<+ c #00FFEC", +"D<+ c #02FEEC", +"E<+ c #2CF8E9", +"F<+ c #A29C9C", +"G<+ c #919292", +"H<+ c #969695", +"I<+ c #474A57", +"J<+ c #4B3E4B", +"K<+ c #1CAEBE", +"L<+ c #0CF9FF", +"M<+ c #0DBFEA", +"N<+ c #03A8F0", +"O<+ c #019EFF", +"P<+ c #00A0FB", +"Q<+ c #0C66AE", +"R<+ c #0C599F", +"S<+ c #0B5A9F", +"T<+ c #0C5799", +"U<+ c #0F5593", +"V<+ c #165289", +"W<+ c #1E507E", +"X<+ c #284D73", +"Y<+ c #334C69", +"Z<+ c #414658", +"`<+ c #3C586E", +" [+ c #0C91E0", +".[+ c #12B2F8", +"+[+ c #1FC4ED", +"@[+ c #1572AC", +"#[+ c #3A465E", +"$[+ c #4B4852", +"%[+ c #4C4450", +"&[+ c #315A6D", +"*[+ c #16718B", +"=[+ c #484856", +"-[+ c #474857", +";[+ c #13399B", +">[+ c #4A454F", +",[+ c #1A6B9E", +"'[+ c #25618B", +")[+ c #4C444E", +"![+ c #2F607B", +"~[+ c #0B86B6", +"{[+ c #39556A", +"][+ c #4B4250", +"^[+ c #36646D", +"/[+ c #0BB4B2", +"([+ c #37626B", +"_[+ c #1B8E9C", +":[+ c #1B8C99", +"<[+ c #4A4450", +"[[+ c #595965", +"}[+ c #D6D6D7", +"|[+ c #BCBABD", +"1[+ c #10AD59", +"2[+ c #00D762", +"3[+ c #277A58", +"4[+ c #4C4254", +"5[+ c #494655", +"6[+ c #434B52", +"7[+ c #11B74A", +"8[+ c #18A349", +"9[+ c #474453", +"0[+ c #474B57", +"a[+ c #513E4D", +"b[+ c #46C5C2", +"c[+ c #00FFF9", +"d[+ c #01FCEE", +"e[+ c #00FFF0", +"f[+ c #02FEF0", +"g[+ c #2CF7EC", +"h[+ c #A19B9B", +"i[+ c #979796", +"j[+ c #707075", +"k[+ c #484955", +"l[+ c #484957", +"m[+ c #4A4651", +"n[+ c #10BFDB", +"o[+ c #05BAF0", +"p[+ c #0B87B8", +"q[+ c #078DCF", +"r[+ c #039BFF", +"s[+ c #11B5FE", +"t[+ c #166EA0", +"u[+ c #1C497A", +"v[+ c #274F77", +"w[+ c #314C6C", +"x[+ c #3B4B62", +"y[+ c #454959", +"z[+ c #4A4854", +"A[+ c #4C4852", +"B[+ c #4A4954", +"C[+ c #4B4650", +"D[+ c #494654", +"E[+ c #444F62", +"F[+ c #334C6A", +"G[+ c #0C64AF", +"H[+ c #155F9B", +"I[+ c #434857", +"J[+ c #484956", +"K[+ c #4D4651", +"L[+ c #27607B", +"M[+ c #1E6985", +"N[+ c #4C4753", +"O[+ c #4B4952", +"P[+ c #193B92", +"Q[+ c #2A417E", +"R[+ c #4D4A4F", +"S[+ c #484857", +"T[+ c #4D454E", +"U[+ c #2E5C7F", +"V[+ c #494855", +"W[+ c #4C4551", +"X[+ c #39576D", +"Y[+ c #305F79", +"Z[+ c #4C4550", +"`[+ c #4B4653", +" }+ c #41545F", +".}+ c #0DB0AF", +"+}+ c #2D777C", +"@}+ c #267C8A", +"#}+ c #119DAA", +"$}+ c #464C58", +"%}+ c #494754", +"&}+ c #4B4B57", +"*}+ c #A1A1A6", +"=}+ c #E1E1E0", +"-}+ c #E0E2E0", +";}+ c #7E7282", +">}+ c #00DF64", +",}+ c #0FA65A", +"'}+ c #464B56", +")}+ c #484A55", +"!}+ c #4C4156", +"~}+ c #2A794C", +"{}+ c #0ACA4A", +"]}+ c #326B4D", +"^}+ c #4C4256", +"/}+ c #464B57", +"(}+ c #513E4C", +"_}+ c #46C5C4", +":}+ c #00FFFE", +"<}+ c #01FCF2", +"[}+ c #00FFF4", +"}}+ c #02FEF4", +"|}+ c #2CF7EF", +"1}+ c #A09A9A", +"2}+ c #909191", +"3}+ c #929291", +"4}+ c #585862", +"5}+ c #4A4A56", +"6}+ c #494854", +"7}+ c #4B4954", +"8}+ c #0E83C4", +"9}+ c #006FB3", +"0}+ c #037EB9", +"a}+ c #0593E5", +"b}+ c #08AAFF", +"c}+ c #1ECDF6", +"d}+ c #425C6C", +"e}+ c #4C4953", +"f}+ c #4B4853", +"g}+ c #4A4752", +"h}+ c #4D464F", +"i}+ c #2D5175", +"j}+ c #0B6AB5", +"k}+ c #1D598C", +"l}+ c #494752", +"m}+ c #4B4854", +"n}+ c #1C6486", +"o}+ c #27617E", +"p}+ c #4B4953", +"q}+ c #183B93", +"r}+ c #2A407D", +"s}+ c #4D4A50", +"t}+ c #4B4752", +"u}+ c #3E4F64", +"v}+ c #0E74B0", +"w}+ c #3A5269", +"x}+ c #4C4651", +"y}+ c #4B4753", +"z}+ c #405061", +"A}+ c #0E83B1", +"B}+ c #256B8B", +"C}+ c #14A3A3", +"D}+ c #228B8D", +"E}+ c #2F6C7A", +"F}+ c #0CA6B3", +"G}+ c #3F5562", +"H}+ c #4B4552", +"I}+ c #65656F", +"J}+ c #484653", +"K}+ c #0EB55B", +"L}+ c #00D460", +"M}+ c #326655", +"N}+ c #4C4456", +"O}+ c #4A4856", +"P}+ c #444952", +"Q}+ c #14B14A", +"R}+ c #14AB49", +"S}+ c #454852", +"T}+ c #494856", +"U}+ c #474B58", +"V}+ c #46C5C6", +"W}+ c #01FCF5", +"X}+ c #00FEF7", +"Y}+ c #02FEF7", +"Z}+ c #2DF8F2", +"`}+ c #8F9090", +" |+ c #848486", +".|+ c #265B8C", +"+|+ c #0C5088", +"@|+ c #015896", +"#|+ c #0081DF", +"$|+ c #10C0FF", +"%|+ c #20DAFF", +"&|+ c #3994A8", +"*|+ c #484A58", +"=|+ c #484A57", +"-|+ c #4C4750", +";|+ c #265580", +">|+ c #0A6BB6", +",|+ c #26537D", +"'|+ c #4C4751", +")|+ c #4B4251", +"!|+ c #156590", +"~|+ c #35546C", +"{|+ c #4D4751", +"]|+ c #4B4A53", +"^|+ c #183C94", +"/|+ c #2B417C", +"(|+ c #4E4A50", +"_|+ c #186DA2", +":|+ c #26618A", +"<|+ c #4D454F", +"[|+ c #157CA6", +"}|+ c #1B759B", +"||+ c #4A4753", +"1|+ c #4C4350", +"2|+ c #208D90", +"3|+ c #16A1A1", +"4|+ c #346571", +"5|+ c #366470", +"6|+ c #4C4451", +"7|+ c #6D6D77", +"8|+ c #504358", +"9|+ c #2C7253", +"0|+ c #00E564", +"a|+ c #189659", +"b|+ c #4C4356", +"c|+ c #474D57", +"d|+ c #484B56", +"e|+ c #4D4157", +"f|+ c #30724E", +"g|+ c #09CB4A", +"h|+ c #2E734D", +"i|+ c #484B55", +"j|+ c #484C59", +"k|+ c #523F4D", +"l|+ c #46C6C8", +"m|+ c #01FCF9", +"n|+ c #00FFFB", +"o|+ c #01FEFB", +"p|+ c #29F4F2", +"q|+ c #9C9697", +"r|+ c #454553", +"s|+ c #494A57", +"t|+ c #4A4956", +"u|+ c #4C4954", +"v|+ c #265F90", +"w|+ c #0E5187", +"x|+ c #11436C", +"y|+ c #145D9C", +"z|+ c #2171B2", +"A|+ c #2C8AB7", +"B|+ c #426979", +"C|+ c #4B434F", +"D|+ c #1F5A8C", +"E|+ c #0A69B3", +"F|+ c #314F6F", +"G|+ c #4E4851", +"H|+ c #494B59", +"I|+ c #4A4855", +"J|+ c #4D4952", +"K|+ c #21B1BB", +"L|+ c #00C1F8", +"M|+ c #2C6893", +"N|+ c #494B58", +"O|+ c #494957", +"P|+ c #4B4B56", +"Q|+ c #1A3B91", +"R|+ c #4D4B53", +"S|+ c #494A58", +"T|+ c #4E4650", +"U|+ c #2B5E83", +"V|+ c #1E7397", +"W|+ c #127FAA", +"X|+ c #464C5B", +"Y|+ c #4B4955", +"Z|+ c #4E4351", +"`|+ c #2E767C", +" 1+ c #0EB0AD", +".1+ c #36656F", +"+1+ c #10A0AE", +"@1+ c #2A7784", +"#1+ c #4E4350", +"$1+ c #4C4C58", +"%1+ c #72727B", +"&1+ c #A9A9AD", +"*1+ c #4B4C58", +"=1+ c #0BB858", +"-1+ c #02CD5A", +";1+ c #405151", +">1+ c #513B52", +",1+ c #494A56", +"'1+ c #15AB4A", +")1+ c #444C53", +"!1+ c #4B4857", +"~1+ c #474C59", +"{1+ c #46C5CA", +"]1+ c #01FBFC", +"^1+ c #00FDFE", +"/1+ c #01FCFE", +"(1+ c #23EDF0", +"_1+ c #767077", +":1+ c #90908F", +"<1+ c #5C5C65", +"[1+ c #266090", +"}1+ c #0E5388", +"|1+ c #12436A", +"11+ c #115F9E", +"21+ c #40516A", +"31+ c #504348", +"41+ c #4C414B", +"51+ c #4B4A56", +"61+ c #196098", +"71+ c #0D66AB", +"81+ c #3A4C63", +"91+ c #4C4A55", +"01+ c #4D444E", +"a1+ c #4E4953", +"b1+ c #4A4656", +"c1+ c #2B6B8B", +"d1+ c #01B7DB", +"e1+ c #02A2DF", +"f1+ c #0CADEB", +"g1+ c #494E59", +"h1+ c #4E484E", +"i1+ c #183F99", +"j1+ c #204190", +"k1+ c #504A4C", +"l1+ c #484958", +"m1+ c #4C4853", +"n1+ c #3F5065", +"o1+ c #0E74B1", +"p1+ c #3B536B", +"q1+ c #4D4752", +"r1+ c #286988", +"s1+ c #0D84B3", +"t1+ c #3F5264", +"u1+ c #494B57", +"v1+ c #4D4452", +"w1+ c #39626B", +"x1+ c #0BB4B1", +"y1+ c #307178", +"z1+ c #1794A2", +"A1+ c #1E8895", +"B1+ c #4C4552", +"C1+ c #BDBDBF", +"D1+ c #61616C", +"E1+ c #4B4B58", +"F1+ c #484C57", +"G1+ c #4F3E53", +"H1+ c #258864", +"I1+ c #00FCA9", +"J1+ c #0AE0A6", +"K1+ c #279D79", +"L1+ c #4B4755", +"M1+ c #4D4358", +"N1+ c #316C4D", +"O1+ c #297C4C", +"P1+ c #4E4258", +"Q1+ c #52404E", +"R1+ c #46C4CA", +"S1+ c #01F8FC", +"T1+ c #28F0F4", +"U1+ c #58525F", +"V1+ c #75767A", +"W1+ c #4D4D5A", +"X1+ c #4A4A58", +"Y1+ c #266292", +"Z1+ c #0E568A", +"`1+ c #124369", +" 2+ c #10609E", +".2+ c #395778", +"+2+ c #484B5B", +"@2+ c #494C5A", +"#2+ c #4D4A55", +"$2+ c #42495B", +"%2+ c #1463A2", +"&2+ c #0483C0", +"*2+ c #0AAADB", +"=2+ c #2578A7", +"-2+ c #29527B", +";2+ c #125D95", +">2+ c #105991", +",2+ c #0483C7", +"'2+ c #06C9FF", +")2+ c #2D9EBD", +"!2+ c #494A59", +"~2+ c #4D4750", +"{2+ c #355A87", +"]2+ c #0179FD", +"^2+ c #0461F5", +"/2+ c #394B7A", +"(2+ c #4D4951", +"_2+ c #26628B", +":2+ c #4E4652", +"<2+ c #32607A", +"[2+ c #0A87B8", +"}2+ c #355C74", +"|2+ c #4C4755", +"12+ c #43535E", +"22+ c #0EAEAD", +"32+ c #298084", +"42+ c #218593", +"52+ c #1597A5", +"62+ c #4C4C5A", +"72+ c #3F3F4E", +"82+ c #7F7F87", +"92+ c #9A9AA0", +"02+ c #4A4955", +"a2+ c #10DBBE", +"b2+ c #06FFEB", +"c2+ c #06FBD3", +"d2+ c #299971", +"e2+ c #4E3E54", +"f2+ c #494C58", +"g2+ c #4A4B58", +"h2+ c #4A4556", +"i2+ c #1AA44C", +"j2+ c #10B84A", +"k2+ c #435053", +"l2+ c #4C4858", +"m2+ c #494D5A", +"n2+ c #53414E", +"o2+ c #46C2CA", +"p2+ c #01F4FC", +"q2+ c #01F6FE", +"r2+ c #28EDF4", +"s2+ c #5C5662", +"t2+ c #8F8F8E", +"u2+ c #4B4A57", +"v2+ c #4D4954", +"w2+ c #266493", +"x2+ c #0D598C", +"y2+ c #124468", +"z2+ c #10609C", +"A2+ c #395878", +"B2+ c #4A4B59", +"C2+ c #51434E", +"D2+ c #2B758B", +"E2+ c #00A6DB", +"F2+ c #03A5E6", +"G2+ c #00AFFD", +"H2+ c #146398", +"I2+ c #2E4F70", +"J2+ c #3D5E7B", +"K2+ c #357999", +"L2+ c #4D4B54", +"M2+ c #4B4855", +"N2+ c #1677D5", +"O2+ c #097FFA", +"P2+ c #0059F1", +"Q2+ c #155BDA", +"R2+ c #4E4B52", +"S2+ c #4A4A59", +"T2+ c #4F4751", +"U2+ c #2C5F84", +"V2+ c #1470A7", +"W2+ c #4E4853", +"X2+ c #3C576B", +"Y2+ c #2C6682", +"Z2+ c #4B4956", +"`2+ c #179FA0", +" 3+ c #1E9495", +".3+ c #297986", +"+3+ c #0EA3B0", +"@3+ c #435461", +"#3+ c #4D4855", +"$3+ c #4F4F5B", +"%3+ c #C6C6C8", +"&3+ c #575763", +"*3+ c #4C4756", +"=3+ c #45575D", +"-3+ c #05F1C7", +";3+ c #0CFFDA", +">3+ c #13EFBD", +",3+ c #03F59D", +"'3+ c #1AC88C", +")3+ c #4F4054", +"!3+ c #4A4D58", +"~3+ c #4A4C57", +"{3+ c #4E4559", +"]3+ c #36664F", +"^3+ c #0AC94A", +"/3+ c #25854B", +"(3+ c #4E4358", +"_3+ c #484D5A", +":3+ c #46C0CA", +"<3+ c #01F0FC", +"[3+ c #00F3FF", +"}3+ c #01F2FE", +"|3+ c #27E9F3", +"13+ c #5E5864", +"23+ c #424352", +"33+ c #5E5F68", +"43+ c #5F5F68", +"53+ c #4C4C59", +"63+ c #4D4955", +"73+ c #266593", +"83+ c #0D5B8E", +"93+ c #134466", +"03+ c #10609A", +"a3+ c #4F4750", +"b3+ c #494B5A", +"c3+ c #494D5B", +"d3+ c #4F3F4C", +"e3+ c #2B8EA1", +"f3+ c #00D0FC", +"g3+ c #05B4F5", +"h3+ c #14C2F6", +"i3+ c #495C68", +"j3+ c #504650", +"k3+ c #4B4C59", +"l3+ c #4E424C", +"m3+ c #4A4B5A", +"n3+ c #4F494E", +"o3+ c #1A63C6", +"p3+ c #0054E6", +"q3+ c #0454DD", +"r3+ c #2A6FCD", +"s3+ c #4E494F", +"t3+ c #405166", +"u3+ c #0E75B1", +"v3+ c #3B556D", +"w3+ c #4C4956", +"x3+ c #454F5F", +"y3+ c #1081AE", +"z3+ c #207194", +"A3+ c #4D4854", +"B3+ c #4A4C59", +"C3+ c #4E4452", +"D3+ c #24888C", +"E3+ c #13A7A5", +"F3+ c #2E717D", +"G3+ c #3A616E", +"H3+ c #4E4653", +"I3+ c #4D4D5B", +"J3+ c #40404E", +"K3+ c #8D8D94", +"L3+ c #10D7A2", +"M3+ c #00FFB4", +"N3+ c #03EC8E", +"O3+ c #01E68A", +"P3+ c #2CA282", +"Q3+ c #4F4155", +"R3+ c #494D59", +"S3+ c #4B4556", +"T3+ c #1B9D4B", +"U3+ c #0EBE4A", +"V3+ c #405652", +"W3+ c #4D4759", +"X3+ c #4B4B59", +"Y3+ c #53424F", +"Z3+ c #46BECA", +"`3+ c #01EDFC", +" 4+ c #01EFFE", +".4+ c #27E6F4", +"+4+ c #5D5764", +"@4+ c #707076", +"#4+ c #919190", +"$4+ c #888889", +"%4+ c #8A8A89", +"&4+ c #4F4F5C", +"*4+ c #4D4A56", +"=4+ c #266694", +"-4+ c #0E5E90", +";4+ c #134465", +">4+ c #0E629B", +",4+ c #325E85", +"'4+ c #504750", +")4+ c #4C4955", +"!4+ c #445568", +"~4+ c #1098DB", +"{4+ c #19BDEE", +"]4+ c #407E8C", +"^4+ c #4D4350", +"/4+ c #4A4C5A", +"(4+ c #4A4D5B", +"_4+ c #4D4A52", +":4+ c #404E74", +"<4+ c #0541C1", +"[4+ c #184EB3", +"}4+ c #4B5669", +"|4+ c #4B4B5A", +"14+ c #186EA3", +"24+ c #285D88", +"34+ c #52434D", +"44+ c #494D5C", +"54+ c #187AA3", +"64+ c #187AA2", +"74+ c #4F4453", +"84+ c #31737A", +"94+ c #0EB1AE", +"04+ c #2F727C", +"a4+ c #0FA2B0", +"b4+ c #2F707E", +"c4+ c #4F4553", +"d4+ c #C5C5C7", +"e4+ c #4D4556", +"f4+ c #3F6763", +"g4+ c #0EDC8C", +"h4+ c #04E785", +"i4+ c #01E87C", +"j4+ c #24885A", +"k4+ c #504257", +"l4+ c #4A4D59", +"m4+ c #4A4C58", +"n4+ c #4E465A", +"o4+ c #3B6052", +"p4+ c #0CC74B", +"q4+ c #238C4C", +"r4+ c #4E4459", +"s4+ c #4A4E5B", +"t4+ c #54434F", +"u4+ c #47BDCA", +"v4+ c #01E9FC", +"w4+ c #00ECFF", +"x4+ c #01EBFE", +"y4+ c #27E4F3", +"z4+ c #5E5863", +"A4+ c #818183", +"B4+ c #8E8E8D", +"C4+ c #514851", +"D4+ c #2C648B", +"E4+ c #0D6193", +"F4+ c #144565", +"G4+ c #0F6198", +"H4+ c #316087", +"I4+ c #504952", +"J4+ c #4B4C5A", +"K4+ c #4C4B58", +"L4+ c #4C4A58", +"M4+ c #4D4652", +"N4+ c #504C52", +"O4+ c #1D3E90", +"P4+ c #233E86", +"Q4+ c #504B50", +"R4+ c #504851", +"S4+ c #2F5E81", +"T4+ c #0F8BBA", +"U4+ c #415D6E", +"V4+ c #4F4651", +"W4+ c #4E4954", +"X4+ c #227295", +"Y4+ c #1083AF", +"Z4+ c #445162", +"`4+ c #4B4D59", +" 5+ c #4F4755", +".5+ c #3D606A", +"+5+ c #0DB3B0", +"@5+ c #2B7C82", +"#5+ c #1599A7", +"$5+ c #238490", +"%5+ c #4F4653", +"&5+ c #4B4D5A", +"*5+ c #A6A6AA", +"=5+ c #4E4E5B", +"-5+ c #4E4556", +";5+ c #4D4B58", +">5+ c #415D5B", +",5+ c #0BBF5E", +"'5+ c #01D260", +")5+ c #3F5857", +"!5+ c #4F4859", +"~5+ c #4B4D58", +"{5+ c #4E4558", +"]5+ c #20974C", +"^5+ c #0DC34A", +"/5+ c #3C5D51", +"(5+ c #4F485A", +"_5+ c #544350", +":5+ c #47BBCA", +"<5+ c #00F1FF", +"[5+ c #01E5FC", +"}5+ c #00E7FF", +"|5+ c #01E7FE", +"15+ c #00EAFF", +"25+ c #27E0F4", +"35+ c #5D5864", +"45+ c #62626B", +"55+ c #504853", +"65+ c #306184", +"75+ c #0F6292", +"85+ c #144665", +"95+ c #0F6094", +"05+ c #306086", +"a5+ c #504953", +"b5+ c #4C4B59", +"c5+ c #4B4D5B", +"d5+ c #4D4C58", +"e5+ c #1A3E96", +"f5+ c #22418D", +"g5+ c #4F4D56", +"h5+ c #4A4E5C", +"i5+ c #50404F", +"j5+ c #2B97A1", +"k5+ c #01D7FB", +"l5+ c #346A8A", +"m5+ c #4F4752", +"n5+ c #4B4C5B", +"o5+ c #4F4854", +"p5+ c #2C6886", +"q5+ c #0C87B6", +"r5+ c #3D586D", +"s5+ c #4F4955", +"t5+ c #4D4A58", +"u5+ c #46525F", +"v5+ c #11ABAA", +"w5+ c #238B8E", +"x5+ c #1C8E9C", +"y5+ c #1894A1", +"z5+ c #4B4A58", +"A5+ c #4E4E5C", +"B5+ c #40404F", +"C5+ c #E4E4E2", +"D5+ c #B9B9BC", +"E5+ c #4A4D5A", +"F5+ c #523F58", +"G5+ c #317459", +"H5+ c #00E665", +"I5+ c #189858", +"J5+ c #4E4458", +"K5+ c #4F475B", +"L5+ c #3C5C51", +"M5+ c #0CC44A", +"N5+ c #20954C", +"O5+ c #554450", +"P5+ c #47B9CB", +"Q5+ c #00EDFF", +"R5+ c #01E2FC", +"S5+ c #00E4FF", +"T5+ c #01E3FE", +"U5+ c #00E6FF", +"V5+ c #27DDF4", +"W5+ c #4C4D5A", +"X5+ c #6B6B71", +"Y5+ c #52525E", +"Z5+ c #316285", +"`5+ c #0F6695", +" 6+ c #144765", +".6+ c #0D6295", +"+6+ c #2C658E", +"@6+ c #514952", +"#6+ c #4E4D58", +"$6+ c #1B3E95", +"%6+ c #22418C", +"&6+ c #504D55", +"*6+ c #4B4E5B", +"=6+ c #4F4452", +"-6+ c #16D2D5", +";6+ c #0EF4FE", +">6+ c #03C1F3", +",6+ c #14B0DA", +"'6+ c #4F4A55", +")6+ c #504954", +"!6+ c #385D75", +"~6+ c #0B88B8", +"{6+ c #32627D", +"]6+ c #504854", +"^6+ c #4D4956", +"/6+ c #1B9A9B", +"(6+ c #1B9B9B", +"_6+ c #248390", +":6+ c #11A0AD", +"<6+ c #4E4A58", +"[6+ c #82828B", +"}6+ c #70707A", +"|6+ c #4C4E5A", +"16+ c #4D4758", +"26+ c #11B65E", +"36+ c #00D760", +"46+ c #51475A", +"56+ c #4B4E5A", +"66+ c #4F4459", +"76+ c #258F4E", +"86+ c #0CC64A", +"96+ c #386350", +"06+ c #50475B", +"a6+ c #4B4E5C", +"b6+ c #554550", +"c6+ c #47B7CB", +"d6+ c #01DEFC", +"e6+ c #00E0FF", +"f6+ c #01E0FE", +"g6+ c #00E2FF", +"h6+ c #27DBF4", +"i6+ c #5F5965", +"j6+ c #878786", +"k6+ c #767679", +"l6+ c #4C4D5B", +"m6+ c #514953", +"n6+ c #316486", +"o6+ c #0E6897", +"p6+ c #144865", +"q6+ c #0E6191", +"r6+ c #286995", +"s6+ c #4F4C58", +"t6+ c #4F4D58", +"u6+ c #1B3F95", +"v6+ c #514E56", +"w6+ c #4C4C5B", +"x6+ c #4C4E5C", +"y6+ c #514450", +"z6+ c #1FAABC", +"A6+ c #00D1FF", +"B6+ c #03A6E1", +"C6+ c #2F95AF", +"D6+ c #4C4E5B", +"E6+ c #4F4A56", +"F6+ c #415669", +"G6+ c #0D86B4", +"H6+ c #286C8B", +"I6+ c #514654", +"J6+ c #288589", +"K6+ c #12ABA8", +"L6+ c #26818B", +"M6+ c #0EA4B1", +"N6+ c #3F5E6B", +"O6+ c #504956", +"P6+ c #ADADB1", +"Q6+ c #51465A", +"R6+ c #347058", +"S6+ c #00E164", +"T6+ c #0DA95A", +"U6+ c #4E4C5A", +"V6+ c #4F4A5B", +"W6+ c #415854", +"X6+ c #0FC04B", +"Y6+ c #1C9E4B", +"Z6+ c #4D4859", +"`6+ c #4A4E5D", +" 7+ c #554551", +".7+ c #47B5CB", +"+7+ c #01DAFC", +"@7+ c #00DCFF", +"#7+ c #01DCFE", +"$7+ c #00DEFF", +"%7+ c #27D7F4", +"&7+ c #5E5965", +"*7+ c #555561", +"=7+ c #65656D", +"-7+ c #484858", +";7+ c #514954", +">7+ c #316587", +",7+ c #0E6B99", +"'7+ c #144966", +")7+ c #0F608D", +"!7+ c #276994", +"~7+ c #4F4B58", +"{7+ c #4D4C59", +"]7+ c #4F4D59", +"^7+ c #504E56", +"/7+ c #4B5060", +"(7+ c #247CA8", +"_7+ c #098CCA", +":7+ c #3C5670", +"<7+ c #504955", +"[7+ c #4C4D5C", +"}7+ c #4E4B59", +"|7+ c #475060", +"17+ c #1381AC", +"27+ c #1D779C", +"37+ c #4D4B59", +"47+ c #504655", +"57+ c #347078", +"67+ c #287F88", +"77+ c #0FA3B1", +"87+ c #326F7C", +"97+ c #514755", +"07+ c #5F5F6B", +"a7+ c #D3D3D4", +"b7+ c #62626E", +"c7+ c #14B05D", +"d7+ c #00DB62", +"e7+ c #277B59", +"f7+ c #51465B", +"g7+ c #50455B", +"h7+ c #25894D", +"i7+ c #0BC94B", +"j7+ c #376952", +"k7+ c #50475C", +"l7+ c #4B4F5D", +"m7+ c #564651", +"n7+ c #47B4CB", +"o7+ c #00E1FF", +"p7+ c #01D7FC", +"q7+ c #00D8FF", +"r7+ c #01D8FE", +"s7+ c #00DAFF", +"t7+ c #28D4F4", +"u7+ c #5F5A65", +"v7+ c #63636B", +"w7+ c #555560", +"x7+ c #316687", +"y7+ c #0E6E9B", +"z7+ c #144A66", +"A7+ c #0E608C", +"B7+ c #266C95", +"C7+ c #504B57", +"D7+ c #4D4C5A", +"E7+ c #4F4E59", +"F7+ c #4E4C59", +"G7+ c #53454E", +"H7+ c #1A6EA3", +"I7+ c #246894", +"J7+ c #514A54", +"K7+ c #1A7AA0", +"L7+ c #147FA8", +"M7+ c #4A4F5E", +"N7+ c #405F69", +"O7+ c #0FB1AE", +"P7+ c #23898F", +"Q7+ c #129EAC", +"R7+ c #287F8C", +"S7+ c #52525F", +"T7+ c #C8C8CA", +"U7+ c #96969D", +"V7+ c #434352", +"W7+ c #4F4F5D", +"X7+ c #4C4F5A", +"Y7+ c #51475B", +"Z7+ c #376D58", +"`7+ c #00DA62", +" 8+ c #08B85E", +".8+ c #405B5A", +"+8+ c #504A5B", +"@8+ c #4F4B5C", +"#8+ c #445455", +"$8+ c #11BB4C", +"%8+ c #17A74B", +"&8+ c #4B4958", +"*8+ c #4F4B5B", +"=8+ c #4C4F5B", +"-8+ c #4C4F5D", +";8+ c #564652", +">8+ c #47B2CB", +",8+ c #00DDFF", +"'8+ c #01D3FC", +")8+ c #00D5FF", +"!8+ c #01D5FE", +"~8+ c #00D6FF", +"{8+ c #28D2F4", +"]8+ c #5F5A66", +"^8+ c #747478", +"/8+ c #888887", +"(8+ c #838382", +"_8+ c #4D4E5C", +":8+ c #524A55", +"<8+ c #326787", +"[8+ c #0E709C", +"}8+ c #144B67", +"|8+ c #0F5F88", +"18+ c #1F72A0", +"28+ c #4D505F", +"38+ c #4D4D5C", +"48+ c #504E59", +"58+ c #22428D", +"68+ c #524F57", +"78+ c #4E4D5B", +"88+ c #514C57", +"98+ c #2E6287", +"08+ c #1276B0", +"a8+ c #4B4E5D", +"b8+ c #4F4D5A", +"c8+ c #514A57", +"d8+ c #266F90", +"e8+ c #0D86B3", +"f8+ c #425669", +"g8+ c #504C58", +"h8+ c #4F4C5A", +"i8+ c #49525F", +"j8+ c #14A7A6", +"k8+ c #1C9799", +"l8+ c #1E8E9A", +"m8+ c #4F4A58", +"n8+ c #BABABD", +"o8+ c #4D4E5B", +"p8+ c #4D4F5C", +"q8+ c #16AA5C", +"r8+ c #00DA63", +"s8+ c #1C925C", +"t8+ c #4E4B5B", +"u8+ c #4D4F5B", +"v8+ c #52465D", +"w8+ c #2C8250", +"x8+ c #0BC647", +"y8+ c #307951", +"z8+ c #504C5D", +"A8+ c #4B4F5E", +"B8+ c #564752", +"C8+ c #47B0CB", +"D8+ c #00D9FF", +"E8+ c #01D0FC", +"F8+ c #01D1FE", +"G8+ c #00D2FF", +"H8+ c #28CFF4", +"I8+ c #50505E", +"J8+ c #67676E", +"K8+ c #524955", +"L8+ c #326888", +"M8+ c #0E739D", +"N8+ c #144D68", +"O8+ c #0F5F86", +"P8+ c #1F729E", +"Q8+ c #4C5060", +"R8+ c #4D4E5D", +"S8+ c #1B4095", +"T8+ c #514F57", +"U8+ c #435369", +"V8+ c #0D79B7", +"W8+ c #375A78", +"X8+ c #514B56", +"Y8+ c #4C4E5D", +"Z8+ c #524A56", +"`8+ c #306681", +" 9+ c #0A89B8", +".9+ c #376078", +"+9+ c #514A56", +"@9+ c #1F9597", +"#9+ c #16A3A2", +"$9+ c #1C8F9B", +"%9+ c #149BA8", +"&9+ c #49515F", +"*9+ c #A6A6AC", +"=9+ c #51485C", +"-9+ c #386A58", +";9+ c #03D461", +">9+ c #05C361", +",9+ c #336E5C", +"'9+ c #52485B", +")9+ c #4C4F5C", +"!9+ c #4F4C5D", +"~9+ c #475255", +"{9+ c #0CD062", +"]9+ c #01F97D", +"^9+ c #06EE70", +"/9+ c #328B5E", +"(9+ c #51455B", +"_9+ c #4C4F5E", +":9+ c #574752", +"<9+ c #47AFCB", +"[9+ c #01CDFC", +"}9+ c #00CEFF", +"|9+ c #01CEFE", +"19+ c #00CFFF", +"29+ c #28CCF4", +"39+ c #605B67", +"49+ c #585863", +"59+ c #534A55", +"69+ c #326A89", +"79+ c #0E769F", +"89+ c #144E68", +"99+ c #105E83", +"09+ c #1F739D", +"a9+ c #4D5160", +"b9+ c #4F4C59", +"c9+ c #4D4F5D", +"d9+ c #504F5A", +"e9+ c #1B4096", +"f9+ c #23428D", +"g9+ c #524F58", +"h9+ c #1A71A5", +"i9+ c #216B99", +"j9+ c #524B56", +"k9+ c #524B57", +"l9+ c #3A5E75", +"m9+ c #0A89B7", +"n9+ c #2E6986", +"o9+ c #524756", +"p9+ c #2B8186", +"q9+ c #10AEAB", +"r9+ c #1C8F99", +"s9+ c #10A2AF", +"t9+ c #425C69", +"u9+ c #93939A", +"v9+ c #C7C7C9", +"w9+ c #545462", +"x9+ c #50505D", +"y9+ c #4E4F5C", +"z9+ c #4F4A5A", +"A9+ c #19A55B", +"B9+ c #01D763", +"C9+ c #13A661", +"D9+ c #48535B", +"E9+ c #504D5C", +"F9+ c #4D505C", +"G9+ c #406D61", +"H9+ c #02FE8E", +"I9+ c #0CFE97", +"J9+ c #05FF83", +"K9+ c #01F965", +"L9+ c #43665B", +"M9+ c #50495C", +"N9+ c #574853", +"O9+ c #48ADCB", +"P9+ c #01C9FC", +"Q9+ c #01CAFE", +"R9+ c #28C9F4", +"S9+ c #605C67", +"T9+ c #767678", +"U9+ c #4E4F5E", +"V9+ c #326B8A", +"W9+ c #0E79A1", +"X9+ c #145069", +"Y9+ c #105D80", +"Z9+ c #187AA7", +"`9+ c #4B5465", +" 0+ c #514C58", +".0+ c #4F4E5C", +"+0+ c #4E4E5D", +"@0+ c #514F5B", +"#0+ c #535058", +"$0+ c #534B56", +"%0+ c #2F6286", +"&0+ c #1078B3", +"*0+ c #4A5161", +"=0+ c #504E5B", +"-0+ c #4E4F5D", +";0+ c #514D5A", +">0+ c #445668", +",0+ c #0F85B1", +"'0+ c #227496", +")0+ c #514C59", +"!0+ c #4E505E", +"~0+ c #534958", +"{0+ c #386E76", +"]0+ c #0FB2AF", +"^0+ c #1D8F97", +"/0+ c #396977", +"(0+ c #534A58", +"_0+ c #81818A", +":0+ c #5F5F6C", +"<0+ c #51515F", +"[0+ c #4E505C", +"}0+ c #52495D", +"|0+ c #396A59", +"10+ c #06CE60", +"20+ c #06C864", +"30+ c #288460", +"40+ c #4E505D", +"50+ c #4E515D", +"60+ c #53455B", +"70+ c #3A7C63", +"80+ c #10FB8D", +"90+ c #10EC76", +"00+ c #03ED5F", +"a0+ c #3E7E64", +"b0+ c #52455B", +"c0+ c #4C505F", +"d0+ c #48ABCB", +"e0+ c #00CDFF", +"f0+ c #01C5FC", +"g0+ c #00C6FF", +"h0+ c #01C6FE", +"i0+ c #00C7FF", +"j0+ c #28C6F4", +"k0+ c #6B6B70", +"l0+ c #4D505E", +"m0+ c #544955", +"n0+ c #39657E", +"o0+ c #0E7BA3", +"p0+ c #14516A", +"q0+ c #105D7E", +"r0+ c #177AA5", +"s0+ c #47586B", +"t0+ c #4D4F5E", +"u0+ c #514F5A", +"v0+ c #23428C", +"w0+ c #514D59", +"x0+ c #445469", +"y0+ c #0D7AB8", +"z0+ c #385C7A", +"A0+ c #534C57", +"B0+ c #167FA7", +"C0+ c #187CA3", +"D0+ c #514B5A", +"E0+ c #435D69", +"F0+ c #10AEAC", +"G0+ c #1A979B", +"H0+ c #0FA2AF", +"I0+ c #534957", +"J0+ c #444453", +"K0+ c #75757F", +"L0+ c #6C6C77", +"M0+ c #1BA15B", +"N0+ c #03D362", +"O0+ c #0EB666", +"P0+ c #3F615C", +"Q0+ c #524A5D", +"R0+ c #4F4C5C", +"S0+ c #4A575C", +"T0+ c #0BE66D", +"U0+ c #00FF66", +"V0+ c #02F55A", +"W0+ c #05D051", +"X0+ c #435D59", +"Y0+ c #524B5E", +"Z0+ c #584954", +"`0+ c #48A9CC", +" a+ c #00C9FF", +".a+ c #01C1FC", +"+a+ c #01C3FE", +"@a+ c #28C3F4", +"#a+ c #615C68", +"$a+ c #5A5A65", +"%a+ c #7E7E7D", +"&a+ c #68686E", +"*a+ c #4F4F5E", +"=a+ c #4E505F", +"-a+ c #544A56", +";a+ c #3D637B", +">a+ c #127B9F", +",a+ c #14546D", +"'a+ c #125B7B", +")a+ c #48586B", +"!a+ c #524C58", +"~a+ c #1A4099", +"{a+ c #214291", +"]a+ c #52505B", +"^a+ c #1B71A5", +"/a+ c #226C9B", +"(a+ c #534C58", +"_a+ c #4F505E", +":a+ c #514E5B", +"b+ c #4D4A59", +",b+ c #1A9E49", +"'b+ c #0DC64B", +")b+ c #2E6B4A", +"!b+ c #544A5F", +"~b+ c #584A55", +"{b+ c #48A6CC", +"]b+ c #00C1FF", +"^b+ c #01BAFC", +"/b+ c #00BBFF", +"(b+ c #01BBFE", +"_b+ c #28BDF4", +":b+ c #615D69", +"c+ c #10B1AE", +",c+ c #159EA5", +"'c+ c #10A2B0", +")c+ c #3C6876", +"!c+ c #534E5C", +"~c+ c #ACACB0", +"{c+ c #B0B0B4", +"]c+ c #504D5D", +"^c+ c #1EA05C", +"/c+ c #09C75F", +"(c+ c #0CBF69", +"_c+ c #278B62", +":c+ c #534A5D", +"d+ c #564B57", +",d+ c #4F5261", +"'d+ c #51505F", +")d+ c #505060", +"!d+ c #4D5065", +"~d+ c #524F5D", +"{d+ c #495468", +"]d+ c #326183", +"^d+ c #554E59", +"/d+ c #4F5161", +"(d+ c #4E5261", +"_d+ c #197DA5", +":d+ c #1580A9", +"e+ c #5A858E", +",e+ c #1A95AE", +"'e+ c #1C6B7C", +")e+ c #1E6173", +"!e+ c #1789A3", +"~e+ c #4D8492", +"{e+ c #796F6C", +"]e+ c #6C6D6F", +"^e+ c #545461", +"/e+ c #53525E", +"(e+ c #15419E", +"_e+ c #1C4399", +":e+ c #515261", +"f+ c #888890", +",f+ c #464656", +"'f+ c #525161", +")f+ c #52515F", +"!f+ c #13D688", +"~f+ c #02FA7B", +"{f+ c #03D067", +"]f+ c #0BC16A", +"^f+ c #259164", +"/f+ c #525060", +"(f+ c #505363", +"_f+ c #5B4F57", +":f+ c #4999CD", +"g+ c #56515E", +",g+ c #54515F", +"'g+ c #4B5769", +")g+ c #1383AC", +"!g+ c #1A7DA3", +"~g+ c #525462", +"{g+ c #544F5E", +"]g+ c #4A6370", +"^g+ c #05F3F4", +"/g+ c #00F7F3", +"(g+ c #03D9D5", +"_g+ c #06BDC5", +":g+ c #149FAC", +"h+ c #525464", +",h+ c #585159", +"'h+ c #2D69A7", +")h+ c #007BF7", +"!h+ c #0368F0", +"~h+ c #365898", +"{h+ c #585359", +"]h+ c #535463", +"^h+ c #56515D", +"/h+ c #2170A1", +"(h+ c #1975AB", +"_h+ c #535260", +":h+ c #545362", +"i+ c #249465", +",i+ c #554F61", +"'i+ c #5D5259", +")i+ c #4990CD", +"!i+ c #018EFC", +"~i+ c #008EFF", +"{i+ c #018EFE", +"]i+ c #008CFF", +"^i+ c #289AF4", +"/i+ c #65626D", +"(i+ c #4F5060", +"_i+ c #525665", +":i+ c #535564", +"j+ c #0056DF", +",j+ c #0253CE", +"'j+ c #157EF7", +")j+ c #50617A", +"!j+ c #2270A0", +"~j+ c #1777AF", +"{j+ c #555463", +"]j+ c #535665", +"^j+ c #584F5E", +"/j+ c #43697B", +"(j+ c #04CDDF", +"_j+ c #08D4E3", +":j+ c #3A8294", +"k+ c #594F63", +",k+ c #535664", +"'k+ c #525566", +")k+ c #5E545B", +"!k+ c #498BCE", +"~k+ c #0182FC", +"{k+ c #0082FF", +"]k+ c #0183FE", +"^k+ c #0080FF", +"/k+ c #2890F4", +"(k+ c #555565", +"_k+ c #2CA4AC", +":k+ c #00FEFE", +"l+ c #11A6A7", +",l+ c #11A5B2", +"'l+ c #1E909D", +")l+ c #9F9FA6", +"!l+ c #898992", +"~l+ c #545764", +"{l+ c #595065", +"]l+ c #426C60", +"^l+ c #08D363", +"/l+ c #02C65B", +"(l+ c #208E5E", +"_l+ c #575465", +":l+ c #555664", +"m+ c #286D99", +",m+ c #595360", +"'m+ c #565565", +")m+ c #555767", +"!m+ c #5A4F5E", +"~m+ c #4A5E73", +"{m+ c #1188B2", +"]m+ c #1A7BA2", +"^m+ c #515567", +"/m+ c #575665", +"(m+ c #5B5162", +"_m+ c #3A757D", +":m+ c #0DB2AF", +"n+ c #00ECF1", +",n+ c #00C5CA", +"'n+ c #69D1D3", +")n+ c #36D4D6", +"!n+ c #6BF2F4", +"~n+ c #2DFDFD", +"{n+ c #32FFFF", +"]n+ c #96A6AE", +"^n+ c #8F8E98", +"/n+ c #868691", +"(n+ c #5F5F65", +"_n+ c #5F5F66", +":n+ c #18449F", +"o+ c #595969", +",o+ c #565465", +"'o+ c #15B761", +")o+ c #00E263", +"!o+ c #198E55", +"~o+ c #595467", +"{o+ c #555768", +"]o+ c #61595E", +"^o+ c #4A7FCF", +"/o+ c #0067FF", +"(o+ c #0168FC", +"_o+ c #0169FE", +":o+ c #0064FF", +"p+ c #565868", +",p+ c #5C5563", +"'p+ c #3F6280", +")p+ c #0C80C0", +"!p+ c #3C6383", +"~p+ c #5C5562", +"{p+ c #5B5564", +"]p+ c #297696", +"^p+ c #0D8AB6", +"/p+ c #3F677F", +"(p+ c #515162", +"_p+ c #767682", +":p+ c #D7CFD0", +"q+ c #137681", +",q+ c #17606A", +"'q+ c #12949F", +")q+ c #3C7786", +"!q+ c #695E6D", +"~q+ c #B9BDC3", +"{q+ c #A4A5AD", +"]q+ c #9797A0", +"^q+ c #A5A5AD", +"/q+ c #B9B9BF", +"(q+ c #666674", +"_q+ c #63636A", +":q+ c #5A5967", +"r+ c #4B76CF", +",r+ c #0053FF", +"'r+ c #0256FC", +")r+ c #0156FE", +"!r+ c #0051FF", +"~r+ c #286DF5", +"{r+ c #6A6872", +"]r+ c #595A6A", +"^r+ c #5B5565", +"/r+ c #506777", +"(r+ c #179FAE", +"_r+ c #156873", +":r+ c #166772", +"s+ c #175F6A", +",s+ c #14707C", +"'s+ c #1A9AA9", +")s+ c #556273", +"!s+ c #5B5767", +"~s+ c #606069", +"{s+ c #6A6A6E", +"]s+ c #60606C", +"^s+ c #5B5A69", +"/s+ c #244997", +"(s+ c #0E40A7", +"_s+ c #3C5185", +":s+ c #5E5B65", +"t+ c #737372", +",t+ c #707073", +"'t+ c #686870", +")t+ c #58586A", +"!t+ c #5C5B6A", +"~t+ c #254A98", +"{t+ c #3D5284", +"]t+ c #605C66", +"^t+ c #595A6C", +"/t+ c #5A5B6C", +"(t+ c #5F5865", +"_t+ c #107FBC", +":t+ c #4F5E74", +"u+ c #187CB3", +",u+ c #1F75A9", +"'u+ c #5D5666", +")u+ c #545567", +"!u+ c #535365", +"~u+ c #C3C3C4", +"{u+ c #CAC7C6", +"]u+ c #B3C0C5", +"^u+ c #33A0C4", +"/u+ c #31A1C5", +"(u+ c #AFC0C6", +"_u+ c #CECAC9", +":u+ c #C7C8C8", +"v+ c #00F8FE", +",v+ c #00E6F9", +"'v+ c #41BCE1", +")v+ c #C9C6C6", +"!v+ c #CBCBC9", +"~v+ c #C3C5C6", +"{v+ c #D2CAC7", +"]v+ c #77B0C3", +"^v+ c #1D9CC6", +"/v+ c #65ACC4", +"(v+ c #D0CAC8", +"_v+ c #B3B3B7", +":v+ c #7E7E8A", +"w+ c #84848D", +",w+ c #9D9DA2", +"'w+ c #B1B1B3", +")w+ c #C5BFBF", +"!w+ c #29F2F2", +"~w+ c #10B8DF", +"{w+ c #00ACEC", +"]w+ c #40CDEF", +"^w+ c #CEC3BE", +"/w+ c #C1C3C4", +"(w+ c #C9C7C6", +"_w+ c #B8C1C4", +":w+ c #38A1C3", +"x+ c #6E6E79", +",x+ c #616171", +"'x+ c #5F5E6D", +")x+ c #264C9B", +"!x+ c #325091", +"~x+ c #63606B", +"{x+ c #5D5E6F", +"]x+ c #919198", +"^x+ c #A6A6A9", +"/x+ c #BFBFBE", +"(x+ c #BEBDBD", +"_x+ c #C0BEBE", +":x+ c #C1BFC0", +"y+ c #2148FA", +",y+ c #35A3B2", +"'y+ c #585D70", +")y+ c #5E5D6E", +"!y+ c #5C5C6E", +"~y+ c #959594", +"{y+ c #999998", +"]y+ c #929294", +"^y+ c #85858B", +"/y+ c #7B7B84", +"(y+ c #626272", +"_y+ c #616172", +":y+ c #6A6976", +"z+ c #3F7982", +",z+ c #0DABB1", +"'z+ c #0FADBB", +")z+ c #318694", +"!z+ c #63596A", +"~z+ c #5D5F70", +"{z+ c #5C5D71", +"]z+ c #686667", +"^z+ c #4D5AD1", +"/z+ c #0013FF", +"(z+ c #021BFD", +"_z+ c #001AFF", +":z+ c #011BFE", +"A+ c #2A39F4", +",A+ c #706F79", +"'A+ c #A3A4A6", +")A+ c #AFABA5", +"!A+ c #AAABAB", +"~A+ c #AAAAAE", +"{A+ c #7B7B87", +"]A+ c #676776", +"^A+ c #2078AA", +"/A+ c #167CB3", +"(A+ c #556379", +"_A+ c #625F6E", +":A+ c #605F70", +"B+ c #10B6B5", +",B+ c #0CACB6", +"'B+ c #13ABB8", +")B+ c #447483", +"!B+ c #606072", +"~B+ c #5D6376", +"{B+ c #269FB2", +"]B+ c #228284", +"^B+ c #246666", +"/B+ c #1F8A8F", +"(B+ c #359FA7", +"_B+ c #6E6D6E", +":B+ c #646474", +"C+ c #626071", +",C+ c #537084", +"'C+ c #179AB5", +")C+ c #186577", +"!C+ c #195C6D", +"~C+ c #1289A0", +"{C+ c #358BA3", +"]C+ c #665C6D", +"^C+ c #5D5D70", +"/C+ c #6E6E7B", +"(C+ c #777782", +"_C+ c #7F7F88", +":C+ c #89898F", +"D+ c #616274", +",D+ c #68606B", +"'D+ c #456C9B", +")D+ c #0C86F8", +"!D+ c #0A64D4", +"~D+ c #0759C6", +"{D+ c #307ED3", +"]D+ c #67616B", +"^D+ c #616375", +"/D+ c #626373", +"(D+ c #67606E", +"_D+ c #376F95", +":D+ c #636171", +"E+ c #3A5797", +",E+ c #0B45B1", +"'E+ c #134AAF", +")E+ c #565C7B", +"!E+ c #666371", +"~E+ c #626275", +"{E+ c #68616F", +"]E+ c #0D81BD", +"^E+ c #416C8D", +"/E+ c #686170", +"(E+ c #676171", +"_E+ c #4E6B82", +":E+ c #1488B2", +"F+ c #696571", +",F+ c #43598F", +"'F+ c #1445A7", +")F+ c #1445A8", +"!F+ c #465A8D", +"~F+ c #696271", +"{F+ c #387096", +"]F+ c #0E81BE", +"^F+ c #426D8E", +"/F+ c #696172", +"(F+ c #41718D", +"_F+ c #128BB7", +":F+ c #1E83AA", +"G+ c #696674", +",G+ c #525E85", +"'G+ c #1244A9", +")G+ c #3B5697", +"!G+ c #6A6672", +"~G+ c #6A6372", +"{G+ c #397096", +"]G+ c #0D82BF", +"^G+ c #416E90", +"/G+ c #696373", +"(G+ c #347898", +"_G+ c #287EA1", +":G+ c #666475", +" , ' ) ! ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ~ { ] ^ / ( _ : < ' [ [ ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ", +"} | 1 2 3 4 5 6 7 8 9 9 0 a b [ ' ! ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' c d e f g h i j [ ' [ ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ", +"k l m n o p q r s t u v w x y z A ' ! [ ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' B ' ' C D E F G H I J ' [ [ [ K K L B ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ", +"M N O | P Q R S T U V W X Y Z ` . .. ) +. @. [ B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B #. #. ' $. %. &. *. =. -. ;. >. ,. ' [ +. +. ' #. L ' B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B ", +"'. ). !. ~. {. ]. ^. /. (. _. :. <. [. }. |. 1. 2. 3. 4. 5. +. 6. @. [ B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B ' [ 7. [ +. 8. 9. 0. a. b. c. d. e. f. g. h. i. j. +. 7. ' [ B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B ", +"k. l. m. n. o. p. q. r. s. t. u. v. w. x. y. z. A. B. C. D. E. F. +. G. G. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. I. J. +. K. L. M. c. N. O. P. Q. R. S. T. U. V. +. J. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. H. ", +"W. X. Y. Z. `. + .+ ++ @+ #+ $+ %+ &+ Z *+ =+ -+ ;+ >+ ,+ '+ )+ !+ ~+ {+ ]+ ^+ {+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ {+ (+ ^+ ~+ _+ :+ <+ [+ }+ |+ 1+ 2+ 3+ 4+ 5+ 6+ ~+ (+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ /+ ", +"7+ 8+ 9+ 0+ a+ b+ c+ d+ e+ f+ g+ h+ i+ j+ 2. B. k+ l+ m+ n+ o+ p+ q+ r+ s+ ~+ G. ]+ I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. G. t+ {+ ~+ u+ v+ w+ x+ y+ z+ A+ B+ C+ D+ +. E+ I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. I. ", +"F+ G+ H+ I+ J+ K+ L+ M+ N+ O+ P+ +. Q+ R+ S+ T+ U+ V+ W+ X+ Y+ Z+ `+ @ .@ +@ {+ ~+ @@ #@ ^+ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ ^+ #@ $@ ~+ %@ &@ *@ =@ -@ ;@ >@ ,@ '@ ' E+ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ ", +")@ !@ ~@ {@ ]@ ^@ /@ (@ +. _@ :@ <@ [@ }@ |@ 1@ 2@ 3@ 4@ 5@ 6@ 7@ 8@ 9@ 0@ a@ b@ c@ }@ d@ e@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ d@ f@ g@ h@ i@ j@ k@ l@ m@ n@ ' o@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ ", +"p@ q@ r@ s@ t@ u@ v@ w@ x@ y@ z@ A@ e@ B@ A@ }@ C@ D@ E@ F@ G@ H@ I@ J@ K@ L@ M@ N@ O@ P@ }@ $@ @@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ Q@ #@ Q@ Q@ #@ #@ Q@ R@ #@ #@ #@ R@ #@ S@ Q@ Q@ #@ #@ #@ #@ #@ Q@ Q@ Q@ Q@ #@ #@ #@ #@ #@ #@ #@ #@ Q@ T@ }@ U@ T. V@ W@ X@ Y@ Z@ `@ ' # #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ R@ R@ R@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ #@ ", +".# +# @# u@ ## $# %# &# *# =# -# ;# }@ [@ ># ,# z@ '# )# !# ~# {# ]# ^# /# (# _# :# <# [# }# }@ d@ ,# Q@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ #@ [@ [@ [@ [@ [@ #@ [@ [@ [@ [@ [@ Q@ H. #@ [@ [@ [@ [@ [@ [@ #@ [@ [@ #@ [@ [@ [@ [@ [@ [@ [@ Q@ #@ 7. }@ |# 1# 2# 3# 4# 5# 6# 7# 8# Q@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ Q@ Q@ 9# 0# a# b# a# 0# a# a# a# a# a# a# a# a# 0# S@ S@ S@ 9# Q@ Q@ Q@ Q@ [@ Q@ Q@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ [@ ", +"c# d# e# f# g# h# i# j# k# l# m# n# o# p# q# 9# <@ 9# r# s# t# u# v# w# x# y# z# A# B# C# D# E# F# r# G# ># H# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# Q@ Q@ 9# 9# Q@ 9# 9# 9# 9# 9# 9# 9# 9# I. I# J# I. 9# 9# 9# 9# Q@ 9# 9# 9# 9# Q@ 9# 9# 9# 9# 9# 9# ^+ K# L# M# r# N# O# P# Q# R# S# T# r# # 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# S@ a# b# U# b# 0# #@ B ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' H. #@ #@ ^+ 9# a# 0# 0# a# b# b# b# b# b# b# 0# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# 9# ", +"q# V# W# X# Y# Z# }@ `# $ .$ +$ @$ #$ $$ %$ &$ *$ # o@ =$ r# -$ ;$ >$ ,$ '$ )$ !$ ~$ {$ ]$ ^$ /$ ($ r# &$ # ,# _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ S@ ' :$ Q@ <$ [$ ' R@ }$ |$ #@ a# Q@ 1$ #@ 2$ 3$ 4$ ' 1$ S@ a# ' 5$ 6$ 7$ 8$ ' 9$ S@ S@ U# S@ a# Q@ 0$ a$ b$ c$ ' d$ e$ f$ g$ h$ i$ j$ }@ # _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ S@ S@ a# U# U# U# a# _$ k$ ' ' ' ' ' 1$ 0$ l$ m$ n$ o$ p$ q$ r$ s$ t$ u$ v$ w$ x$ y$ z$ A$ B$ C$ 1$ D$ 9$ 9# ' ' ' ' ' ' ' ' ' ' ' Q@ U# a# S@ S@ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ _$ ", +"E$ G# r# r# }@ F$ G$ H$ *$ I$ J$ K$ L$ M$ N$ O$ P$ q# H$ Q$ R$ +. S$ T$ U$ V$ W$ X$ Y$ Z$ `$ % .% +% @% #% r# S@ M# 9# S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ $% ' %% &% *% =% ' ' -% 0$ ' Q@ a# ' b# ' [$ ;% ' U# ^+ 1$ ' >% ,% '% )% ' [@ [@ 9# ' #@ H. ' b# ' !% ~% ' {% ]% ' ^% /% (% _% :% S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ a# U# $% 1$ U# S@ I. ' ' ' ' ' ^+ |$ <% [% }% |% 1% 2% 3% 4% 5% 6% 7% 8% 8% 9% 8% 0% a% b% c% c% d% e% e% e% f% g% h% i% j% 2$ k% l% m% s$ n% o% p% q% r% &% Q@ ' ' H. S@ U# b# 0# S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ ", +"0# a# s% t% u% v% w% v% v% x% x% y% z% A% B% C% D% E% F% d$ G% H% I% J% K% L% M% N% O% P% Q% R% S% T% U% V% W% F$ X% ]% a# w% 0# 0# 0# 0# 0# 0# 0# 0# D$ ' Y% Z% |% l$ `% & .& +& q% @& ' #& @& ' $& %& B J# |$ U# ' && *& o% =& ' u$ a# @& -& D$ A$ ;& >& a# ,& *& S@ '& )& !& ~& {& ]& ^& /& (& _& 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# a# 1$ 1$ U# Q@ H. ' ' ' ' #@ J# B$ w$ :& <& [& }& |& 9% 1& 2& 3& 6% 8% 4& 5& 6& d% d% |& 3% 7& 8& 8& 9& 9& 0& e% e% 0& e% a& e% 9& 0& e% 0& 8& 9& 0& 9& b& 0& 0& a& c& d& e& f& g& h& i& #@ ' ' #@ b# 1$ U# a# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# 0# ", +"S@ S@ S@ S@ S@ S@ S@ S@ S@ j& M# x% H# k& l& m& n& o& p& q& r& s& t& u& v& w& w& x& u& y& z& A& B& C& D& E& F& G& H& I& w% J& S@ S@ S@ S@ S@ S@ S@ S@ 1$ ' K& L& M& }% f% *% l% N& 2% O& P& 8& Q& R& <& }$ S& T& U& ' ' V& W& X& Y& =% Z& =% n% `& * .* +* 3$ $& @* *& #* l$ R& $* %* &* ** =* -* ;* >* M# S@ S@ S@ S@ S@ S@ S@ S@ S@ a# U# 1$ [@ ' ' B 9$ &% h& ,* '* f& )* |& 9% V& && !* V& >% 7% a% b% c% ~* ~* c% ~* ~* ~* 5& {* {* 6& d% |& 3% 3% 7& 8& 9& 0& e% e% a& c& d& ]* +* ^* /* (* f% _* )* }& }& :* e& e& :* f% +* (* <* [* -& }* >& H. ' ' #@ U# 1$ U# a# S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ S@ ", +"a# a# a# a# a# a# a# a# a# a# a# |* a# x% |* 1* 2* 3* 4* ~# 5* 6* 7* 8* 9* 0* 0* a* u& b* z& c* d* e* f* g* h* i* j* k* G$ I& _& ]% a# a# a# a# a# a# 1$ ' l* m* n* l% L& @* o* p* q* o$ r* s* t* u* v* ;& *% [* w* ' ' 7& x* 9& 6& y* u$ }$ z* A* B* .& C* a$ D* Q& x$ E* <% F* G* H* I* J* K* L* M* N* _& a# a# a# a# a# a# a# U# D$ a# ' ' O* P* E* 5$ 7& 9% && Q* R* S* T* 3& 6% 9% 4% a% a% a% a% a% U* U* 4& b% b% c% ~* ~* 5& {* {* 6& d% |& 3% 3% 7& 8& 9& 9& 0& e% a& c& c& d& ]* +* +* ^* /* (* f% f% _* )* }& }& e& F* V* i% F* )* (* }& W* X* Y* P& J# ' ' ' Q@ U# 1$ U# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# a# ", +"U# U# U# U# U# U# U# U# U# U# U# U# U# Z* `* = .= += @= #= $= %= &= *= == -= -= ;= 8* >= ,= '= )= U% != ~= {= ]= ^= /= (= _= (& >* := U# U# U# U# U# U# B @& d% S& j% e% <= [& /* )& [= 2% i& [@ o* }= #& Y* 5& w$ ' #@ h% f% U* |= 1= m$ F* n% p% 2= 3= 4= o* D* a$ 5= E* 6= c% 1= 7= 8= 9= 0= a= b= c= d= e= U# U# U# U# D$ D$ I. ' a# }* W& |= f= f= Q* && V& >% 6% 5% 5% 5% 5% 5% 7% 7% 9% 8% 8% 4% a% a% U* 4& 4& b% c% ~* ~* 5& {* {* 6& d% |& 3% 3% 7& 8& 9& 9& 0& e% a& c& c& d& ]* +* ^* ^* /* (* f% f% _* )* }& :* :* e& F* 5$ V* Y& <* <* i% e& }& 5$ [& y* 7= g= O* B ' H. a# 1$ D$ 1$ U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# ", +"h= h= h= h= h= h= h= h= h= h= h= h= h= a# ]% := i= j= k= l= m= n= o= p= q= r= r= s= t= u= v= w= x= y= E& z= A= B= C= D= E= F= G= H= (& ]% I= U# a# h= U# 1$ ' J= y* X* K= ' m* L= M= B* }& z$ ' N= 3$ O= v$ P= Q= #@ a# E* R= S= %& T= m$ 1% U= <$ V= W= X= Y= Z= Q& [% `= - d& *% m$ .- +- @- #- $- %- (& := U# &- D$ Q@ ' ' z$ w* +* Q* *- S* 3& 1& 1& 3& 1& 1& 1& >% =- =- 6% 5% 5% 7% 9% 9% 8% 4% a% a% U* 4& 4& b% c% ~* ~* 5& {* 6& d% d% |& 3% 7& 7& 8& 9& 0& 0& e% a& c& c& d& ]* +* ^* ^* /* (* f% f% _* )* }& :* e& e& F* 5$ V* i% Y& Y& <* %& -- -- <* V* 5$ )% Y= *% ;- B$ D$ ' ' I. a# 1$ 1$ U# a# h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= h= ", +"U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# e= >- i= = ,- '- )- t= !- ~- ~- {- ]- ^- /- ~+ (- _- :- <- [- }- |- 1- 2- 3- 4- 5- 6- 7- X% M# &- U# U# 8- ' 9% 9- n$ 0- 9- a$ V= a- [* W& b- c- Y= * d- e- J= a# 1$ a# E* f- g- h- i- W= O& j- }= :$ O& ,* 2= W= k- ,* }$ 3= V* X* W= l- b$ m- n- o- p- q- r- s- B ' t- p% u- V& v- w- x- 2& V& x- V& V& 2& 3& 3& 1& >% =- =- 6% 5% 5% 7% 9% 9% 8% 4% 4% a% U* 4& b% ~* 5& {* {* 5& c% b% c% d% |& |& 7& 9& 0& e% a& c& d& d& ]* +* +* ^* ^* /* (* (* (* f% _* )* )* }& :* e& F* F* 5$ V* i% Y& g% g% <* )% %& -- y- !% !% -- g% g% !% k% d- ,% z- U# ' B e= D$ e= U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# U# ", +"$% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% 1$ A- B- C- D- E- F- G- G- H- I- J- K- #@ L- M- N- O- P- Q- R- S- T- U- V- W- X- Y- Z- `- J. L- $% 9$ ' o% ; .; L= +; <$ @; %% #; $; }& %; &; g= m% *; (* ' 9$ b# X= `% ;% v$ Z% _* ; w$ =; W= r% -; 9- ;- Z% N& 7= ,& ;; ,% >; ,; '; ); !; ~; {; ]; H. 9# h& [* a% v- ^; S= V& x- T* T* x- x- V& V& 2& 3& 3& 1& >% >% =- 6% 6% 5% 7% 9% 8% 4% U* 4& b% 4& U* 8% 5% =- >% /; b% e% _* /* |& |& 3% (; b% c% ~* c% c% ~* 5& 6& d% |& 7& e% a& a& ]* /* (* (* )* :* e& F* F* F* 5$ 5$ V* i% Y& g% <* <* )% %& -- _; _; y- W* X& :; X& !% -- %& j% q$ %; l$ S@ ' 1$ D$ 1$ $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% $% ", +"e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= <; [; }; |; 1; 2; 2; 3; 4; 5; 6; #@ 7; 8; 9; 0; a; b; c; d; e; f; g; h; i; j; k; l; m; n; o; I= &- Q@ U# a# #@ Q@ Q@ a# I. Q@ U# [@ #@ Q@ U# ' p; k- ' q; e= Q@ S@ [@ S@ S@ I. D$ ' r; }= ' D$ Q@ S@ Q@ S@ Q@ H. Q@ a# #@ a# U# M# ~+ s; t; u; v; w; x; y; w- T* T* !* && !* !* T* x- x- V& V& 2& 2& 3& 1& >% =- 6% 7% 9% 8% 8% 9% 5% >% 2& x- 2& =- b% ]* )% Y% n$ z; A; B; q; >& e- C; D; ; E; l* F; ,* t$ -& b- j- h- j- U& r* W* x* <* )* e& F* /* +* ]* d& G; e& i% Y& Y& Y& Y& g% <* )% )% %& -- _; y- !% !% W* @* X& :; [& H; [& X& I; @* T= l$ S@ B 1$ J; 1$ e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= e= ", +"&- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- K; [; L; M; N; O; O; P; Q; R; S; T; U; V; W; X; Y; (- Z; `; > .> +> @> #> $> %> &> *> => -> (- ;> q; D$ D$ 9$ J; 9$ J; 8- 9$ D$ 9$ 9$ 9$ >> ' Y% }% ' q; &- 9$ 9$ q; J; J; q; 9$ e= a$ [$ ' '& 9$ 9$ 9$ J; 9$ q; 8- q; t- J; B B ,> '> )> !> ~> {> ]> ^> && S= && && !* !* !* T* T* x- x- V& 3& >% =- =- =- 1& V& !* S* S* T* 6% 5& /> [& 8$ +; (> _> t- Q@ ' ' ' I. _$ U# h= #@ :> #@ I. ' ' ' ' ' ' ' ' ' ' I. &- &- U# )& &% <> Q= ; l$ r% w* [> V* /* /* }& i% <* )% )% )% %& -- -- _; y- !% W* W* @* X& :; j% j% [& }> f& f& :; :; y* l$ |> B e= 9$ &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- ", +"D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ 1> [; 2> 3> 4> 5> 5> 6> 2; 7> 8> 9> 0> a> b> c> d> L- e> f> g> h> i> j> k> l> m> n> o> p> q> r> s> L- J; t> D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ 1$ `% u> U# D$ D$ D$ D$ D$ D$ D$ 9$ I. v> `= J# U# D$ D$ D$ D$ D$ D$ q; q; #@ ' U# w> Y= x> y> z> A> B> C> D> E> S* S= S= && && !* !* T* T* V& 3& V& S* w- F> R* && 7% 7& V* k% G> T& H> Q= D$ B ' ' ' #@ U# D$ q; q; q; 9$ D$ D$ D$ 9$ 9$ 9$ 9$ q; q; q; q; q; q; q; q; 9$ q; 9$ 1$ 1$ D$ U# S@ S@ S@ I. B ' ' U# @& I> d- J> <* )* )* 5$ <* _; y- _; y- y- !% W* @* X& X& :; j% [& H; H; }> u* Y= [> K> [& '* L> q; B 1$ 9$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ ", +"&- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- M> N> O> P> Q> R> S> S> T> 3> U> V> W> X> Y> Z> `> , ., ;> +, @, #, $, %, &, *, =, -, ;, >, ,, ', ), s> !, ~, ;> &- M> M> &- &- &- &- &- &- &- J; ^+ e= J; &- &- &- &- &- &- &- &- J; |> ' &- J; &- M> &- J; {, |> ' B ], 3= ^, /, (, _, R* && :, <, [, }, |, 1, S* S= && && && T* V& V& S* *- S= 2, W* D* 4$ F; D; 3, R@ ' ' ' k$ |> &- 8- {, {, 8- 8- J; J; &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- M> M> M> J; J; J; J; J; J; J; J; 8- 8- 8- {, J; _$ B ' e= 4, F; t$ U& u- F* 5$ <* y- W* @* @* @* X& :; :; j% [& H; }> }> u* f& Y= Q& B* u* H; <& v$ 8- k$ &- 8- J; &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- &- ", +"D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ 5, 6, 7, 8, 9, 0, 0, a, Q> b, c, d, e, f, g, h, i, j, k, 7; l, ' m, n, o, p, q, r, s, t, u, v, w, x, y, z, L- A, B, B, B, J; D$ D$ D$ D$ D$ D$ {, 9$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ 9$ >> 9$ D$ D$ D$ '& D$ ' C, 4$ :* w- D, y; R* Q* R* E, F, G, H, I, J, K, L, S= S= && T* x- S= M, f= N, q$ L> 8- ' ' ' ' Q@ 1$ 9$ '& '& {, q; 9$ J; D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ J; 9$ q; {, J; S@ B ' 1$ @& r% w* l% _; i% O, -- @* j% [& [& [& [& H; }> u* f& Y= Y= [> Q& J> P, [> u* z* (> q; I. D$ q; J; D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ D$ ", +"9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ m; Q, R, S, T, S, S, U, V, W, X, Y, Z, `, ' .' +' @' #' $' '& ' %' &' ' *' =' -' ;' >' ,' '' )' !' ~' {' ]' z, N* N* z, ^' 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ J; q; >> B D$ y* x- D, /' _, R* w- F> w- w- R* (' _' :' <' [' }' |' 1' T* S= *- /, 6% [= 7= J# ' I. D$ '& >> >> '& q; 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ q; '& '& 9$ a# k$ k$ q; D; [% o% 2$ @* )% %& W* [& }> u* u* u* f& Y= [> Q& Q& B* J> P, 2$ B* Y= T= 2' q; :> D$ {, 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ 9$ ", +"3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' m; 4' 5' 6' 7' 6' 6' 8' 9' 0' a' |> b' c' d' e' `> f' g' h' i' j' k' l' ' m' n' o' p' q' r' s' t' u' v' w' x' y' z' A' B' N* C' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 8- D' e= ' w> |& E' F' F> F> f= f= f= F> F> w- w- G' H' I' J' K' L' M' J= N' S= O' P' 4, ' B &- >> {, 8- 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 8- 8- {, {, J; |> k$ :> {, B$ l* b- h- [& y- W* u* Y= Y= Y= [> Q& B* J> l% l% P, 2$ o$ l% Q& y* Q' {, R' J; {, 8- 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' 3' ", +"8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- S' Q, T' U' V' U' U' W' X' Y' a' w% q; ^' Z' c' d' `' ) .) +) @) #) $) %) &) *) =) -) ;) >) ,) ') )) !) ~) {) ]) ^) /) () _) N* :) 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 9$ >> '& ' 0$ [= <) (, F> *- *- *- _, _, f= f= F> w- w- w- [) D> }) |) 1) 2) 3) 4) A; Q@ ' a# O* O* q; 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- {, '& '& 9$ |> I. :> {, B$ r% o% }> @* Y= Q& Q& Q& B* J> l% P, k% k% 2$ o$ #* 2$ J> *% Z% '& R@ D$ '& q; 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- ", +"q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; 5) 6) 7) 8) 9) 8) 8) 0) a) b) c) a# d) q; q; e) f) g) h) i) j) k) l) m) n) o) p) q) r) s) t) u) v) w) x) y) z) A) B) C) D) E) F) G) f) q; q; q; q; q; q; q; q; q; q; q; q; q; 8- {, 3, Q@ #@ c- x- H) *- f= J= J= *- *- _, f= f= f= F> w- I) S* F> <) _, J) K) L) M) ' N) >> J# '& q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; {, '& >> >> 8- h= R@ R@ 6$ r$ f& j% Q& J> J> J> l% P, k% 2$ W& o$ o$ #* q$ o$ O) U= Z% P) _$ J; >> {, q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; q; ", +"8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 5) 6) Q) R) S) R) R) T) U) V) W) X) d) 8- 8- 8- 8- Z' Y) Z) `) ! .! +! @! #! $! %! &! G) *! =! -! ;! >! ,! '! )! !! ~! {! ]! ^! /! f) 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- t- 8- ' (! _! :! > >> h= R@ D; -& [> H; J> P, P, k% k% 2$ W& o$ h- #* #* q$ M& #* W& 7! [% 8! _$ J; >> {, 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- 8- ", +"{, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, 9! 0! a! b! c! d! d! e! f! g! c) h! >> {, {, {, {, {, {, !& {, i! l, j! k! l! m! n! o! b' p! q! r! s! t! u! v! w! x! y! z! A! B! C! {, {, {, {, {, {, {, {, {, {, {, {, O* 3, B J# R& /, D! *- J= v- J= v- J= *- J= *- _, w- F> y; D, *- ]* G> C; B E! r- F! G! H! I! J! K! {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, >> t- e= _$ 6$ [$ B* u* P, W& 2$ W& o$ o$ h- #* |% q$ q$ M& $& S& L! 0- l* 8! _$ 8- >> {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, {, ", +">> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> M! N! O! P! Q! R! R! S! d! T! U! U# V! >> >> >> >> >> >> >> >> C! d) @, W! X! Y! Z! `! ~ .~ +~ q! @~ #~ $~ %~ &~ *~ =~ -~ ;~ >~ ,~ '~ d) >> >> >> >> >> >> >> '& >> P) e= B m$ g- )~ F' *- /, /, v- J= v- J= J= J= f= J= !~ ~~ 4& D* {~ e= ' e= 3, ]~ ^~ /~ (~ _~ :~ 5, D' >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> t- t- e= |> D; #& l% [> 2$ h- o$ h- #* #* |% q$ S& M& M& n* z* $& |% <~ l* [~ e= t- >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> ", +"}~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ |~ 0! 1~ 2~ 3~ 4~ 4~ 5~ R! 6~ U! h! V! }~ }~ }~ }~ }~ }~ }~ }~ {, f) C! 7~ p! 8~ 9~ 0~ a~ b~ c~ d~ e~ f~ g~ h~ i~ j~ k~ l~ m~ n~ o~ p~ f) {, }~ }~ }~ }~ }~ {, 3, >> ' q~ r~ D! D, *- /, /, v- /, v- v- J= v- _, f= !~ s~ m* m$ >> ' _$ D' P) t- }~ {, t~ u~ v~ _~ w~ x~ y~ t~ {, }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ {, t- t- e= |> D; z~ k% Q& W& |% #* |% q$ q$ S& M& $& n* G* z* T= z* q$ <= A~ |> t- >> {, }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ }~ ", +">> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> B~ N! C~ D~ E~ F~ F~ G~ 4~ H~ I~ J~ t- >> >> >> >> >> >> >> >> >> >> >> K~ L~ M~ N~ O~ P~ Q~ R~ S~ T~ U~ V~ W~ X~ Y~ Z~ `~ { .{ +{ @{ 5! D' >> >> >> >> t- [~ Q@ U# w* w- #{ /, v- F' /, /, /, v- /, v- J= f= > P) 3, D' >> >> >> >> D' D' p~ &{ *{ ={ -{ '& K~ >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> t- 3, &- h= 6$ X= q$ J> #* S& q$ S& M& $& $& n* G* z* z* T= y* G* z* h& h= >> ;{ >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> ", +"O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* t- >{ ,{ '{ ){ !{ ~{ ~{ {{ F~ ]{ ^{ 1$ /{ O* O* O* O* O* O* O* O* O* O* O* O* O* K~ L~ ({ N~ _{ :{ <{ [{ }{ |{ 1{ 2{ 3{ 4{ 5{ 6{ 7{ 8{ 9{ 0{ a{ V! O* O* [~ {, ' v$ 3% )~ <) J= F' y; F' /, F' /, v- /, *- *- E' >% 9- R@ U# [~ P) t- O* O* O* O* O* O* O* O* L~ b{ c{ d{ e{ f{ g{ a{ O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* J# 3, J; |> <> <$ M& k% q$ $& M& $& n* G* G* z* h{ T= h{ m% h{ S& i{ >> J; 3, >> O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* O* ", +"D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' j{ k{ l{ m{ n{ o{ o{ p{ ~{ q{ ^{ &- r{ D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' 5! a{ s{ t{ u{ v{ w{ x{ y{ z{ A{ B{ C{ D{ E{ F{ G{ H{ I{ a{ J{ P) B K{ a$ (, L{ v- y; y; F' y; F' /, /, F' v- _, D, (, :$ M{ k$ P) J{ D' D' D' D' D' D' D' D' D' D' D' D' a{ N{ O{ P{ Q{ R{ S{ 5! D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' ;{ J{ 8- T{ <> 7= n* W& M& G* G* G* z* h{ h{ h{ T= h{ h{ T= U{ s$ V{ W{ J{ t- D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' D' ", +";{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ j{ X{ Y{ Z{ `{ ] ] .] +] @] #] $] 3, ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ %] &] *] T. =] -] ;] >] &] @~ ,] '] )] !] ~] {] ]] ^] /] _$ (] 1& _] P* z* h- n* h{ h{ h{ T= h{ T= h{ z* h{ T= S& m% ; e= 3, 3, t- ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ", +"3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 7] X{ 8] 9] 0] a] a] b] ] c] d] D$ e] 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, ]~ |] f] g] h] i] j] k] l] m] n] o] p] !] q] r] s] I& t] 2% u] v] /, > R@ 8! P) t- 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, /{ w] x] y] z] A] B] C] D] 3, /{ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, P) {, e= <> m$ T= q$ z* m% h{ T= h{ z* h{ z* G* h{ n* q$ 5= J; >> P) t- 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, ", +";{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ E] F] G] H] I] J] K] K] L] a] M] #] J; N] ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ w] O] |] P] Q] R] S] T] U] J{ V] W] X] Y] Z] `] ^ .^ +^ y; ^ v= ;; 7! $& m% T= h{ z* z* z* z* G* G* G* #* P' ,^ M> ;^ E] ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ;{ ", +"3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, '^ )^ !^ ~^ {^ ]^ ]^ ^^ /^ (^ d] `) P) 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, _^ ]~ :^ =^ <^ [^ }^ |^ 1^ 2^ 3^ 4^ 5^ 6^ 7^ 8^ 9^ 0^ a^ <) ~~ >^ K{ P) 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, b^ c^ d^ e^ f^ g^ h^ i^ j^ b^ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, P) [~ >> &- <> u$ S& h{ h{ z* z* G* z* G* n* G* z* h- k^ l^ >^ ;^ P) 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, ", +"P) _^ m^ P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) n^ )^ o^ p^ q^ ~^ ~^ r^ s^ t^ u^ 8- v^ P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) N] P) w^ x^ y^ z^ A^ B^ C^ D^ E^ F^ G^ H^ I^ J^ K^ L^ <) ~~ <) ~~ > U^ <] $& G* T= G* z* G* n* G* n* $& G* q$ S& Q' J; 3, [~ J{ P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) P) ", +";^ V^ W^ X^ m] ;^ Y^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ n^ Z^ `^ / ./ p^ p^ +/ @/ #/ $/ 8- v^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ b^ N] J{ %/ &/ */ =/ B -/ ;/ >/ ,/ '/ )/ !/ ~/ a^ <) ~~ ~~ /, ~~ {/ Z& <] ]/ }~ ,^ ;^ ^/ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ b^ // (/ _/ :/ #^ m% S& h{ G* n* G* n* $& n* $& n* M& o$ ,* J{ }~ [] J{ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ", +"3/ 4/ 5/ 6/ 7/ 8/ 8/ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ 9/ 0/ a/ b/ c/ / / d/ e/ f/ g/ q; [~ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ P) h/ i/ j/ k/ l/ m/ n/ o/ p/ q/ r/ s/ t/ u/ v/ ~/ a^ w/ F' P= C, 8! P) ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ 8/ x/ y/ z/ A/ B/ C/ D/ E/ &] F/ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ [~ 8! 8- @& K& |% z* G* n* n* $& n* $& M& $& $& W& G/ z$ J; 8! [~ P) ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ;^ ", +"H/ I/ J/ K/ L/ M/ h/ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ N/ O/ P/ Q/ R/ S/ S/ T/ U/ V/ W/ {, X/ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ v^ Y/ Z/ `/ ( .( +( @( #( $( %( &( *( =( -( ;( >( ,( {/ '( )( N^ ;^ ,^ ;^ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [] !( ~( {( ]( ^( /( (( _( :( <( [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ ;^ [( ;{ J{ }( |% n* G* $& n* $& M& $& M& S& $& L! G* {~ |( [] [] ;^ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ ", +"1( 2( 3( 4( 5( 6( 7( 6/ v^ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ N/ O/ 8( 9( 0( a( a( b( c( d( W/ {, X/ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ ;^ [] e( f( g( h( i( j( k( ~/ l( m( n( o( p( q( r( I) s( >^ M> t( [] ;^ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ e( u( v( w( x( y( z( A( )& B( [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ ;^ 8! ;^ C( D( n* q$ G* $& M& $& M& S& M& S& M& |% o$ z; D' J{ [( ;^ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ [~ ", +"E( F( G( H( I( J( K( L( M( N( [] [] [] [] [] [] [] [] [] [] O( P( Q( R( S( T( T( U( V( W( X( >> [( [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] K{ C, Y( Z( `( _ ._ +_ @_ #_ F' $_ %_ &_ *_ =_ -_ ;_ >_ ,^ ,^ [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] <( ,_ '_ )_ !_ ~_ {_ ]_ <( [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] 8! K{ U^ l^ ^_ /_ n* $& M& M& S& M& S& q$ S& S& P, (_ M{ >> ,^ [] [] [] [] __ :_ <_ [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] ", +"[_ }_ |_ 1_ 2_ 3_ 4_ 5_ 6_ 7_ 8_ <( N( [( [( [( [( [( [( [( 9_ 0_ a_ b_ c_ d_ d_ e_ f_ g_ X( >> h_ [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [] ,^ i_ N^ :$ j_ k_ l_ m_ n_ o_ p_ q_ r_ s_ t_ u_ v_ w_ x_ y_ z_ [] [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( X/ <( A_ B_ C_ D_ E_ F_ X/ N( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( i_ [( ,^ D' ,^ 4$ G_ $& $& S& M& S& q$ S& q$ q$ S& 2$ T= H_ 3' ,^ [( [] 8_ I_ J_ K_ 8_ L_ [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( ", +"M_ N_ O_ P_ Q_ R_ S_ T_ U_ V_ 6_ W_ A_ 8_ <( N( [( [( [( [( 9_ 0_ X_ Y_ Z_ `_ `_ : .: +: X( >> h_ [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [] ,^ J{ D' @: #: $: %: &: *: =: -: ;: >: ,: ': ): !: ~: {: ]: F_ A_ N( X/ [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( X/ ^: z_ <( /: (: _: ]_ z_ 8! [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [] ,^ ;^ D' :: |% |% $& S& q$ S& q$ |% q$ |% q$ W& #* <: [: [] }: |: 1: 2: 3: 4: 8_ [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( ", +"5: 6: 7: 8: 9: 0: a: b: c: d: e: f: g: h: i: j: k: }: l: [( m: n: o: p: q: r: r: s: t: u: v: t- ,^ [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( t( [] D' /> w: ~~ /' /' ,( @_ x: y: z: A: B: C: D: E: F: G: H: I: J: k: [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( K: L: M: N: O: l: h_ l: [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( ,^ ,^ [: P: T= o$ M& S& q$ |% q$ |% |% #* q$ h- l% Q: h/ R: S: T: U: V: W: X: [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( ", +"Y: Z: `: < .< +< @< #< $< %< &< *< =< -< ;< >< i: h: h_ k: .; n: ,< '< )< !< !< ~< {< ]< v: t- ^< [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( K{ [( M{ [] D' _! /< ~~ D, D, D, (< _< :< << [< }< |< 1< 2< 3< 4< 5< 6< 7< 8< 9< K: h_ 0< [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( 0< l: h_ l: a< b< c< d< k: [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( K{ [( ,^ t( D' e< b- k% X* q$ |% |% |% #* |% #* #* |% B* f< g< h< i< j< k< K_ l< m< h_ 0< [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( [( ", +"n< o< p< q< r< s< t< u< v< w< x< y< z< A< B< C< D< E< F< G< H< I< J< K< L< M< M< N< O< P< Q< r{ t( ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ R< S< E] }~ _! /< T< k( k( D, D, D, U< V< W< X< Y< Z< `< [ .[ +[ @[ #[ $[ %[ &[ *[ K: ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ K: =[ -[ ;[ >[ ,[ '[ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ )[ ![ ![ ~[ W& #* S& |% #* |% #* h- #* h- |% {[ ][ ^[ /[ ([ _[ :[ X: <[ m< [[ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ,^ ", +"}[ |[ 1[ 0< 2[ 3[ ^< 4[ 5[ 6[ 7[ 8[ 9[ 0[ a[ b[ c[ d[ e[ f[ g[ h[ i[ j[ k[ l[ l[ m[ n[ o[ p[ 3, q[ t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( ,^ r[ D' s[ t[ u[ <) k( k( D, k( D, D, /' v[ w[ x[ y[ z[ A[ ,^ B[ C[ D[ E[ F[ G[ H[ I[ ^< I[ J[ t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( I[ K[ L[ M[ N[ O[ P[ Q[ J[ t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( ,^ t( t( R[ S[ S& W& q$ |% #* h- #* h- h- o$ T[ U[ V[ W[ X[ Y[ Z[ `[ } .} +} '[ t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( ", +"@} #} $} J[ %} '[ I[ &} &} ^< 4[ 5[ >< *} =} -} ;} >} ,} '} )} !} ~} {} ]} ^} ^} /} ^} (} p[ 3, q[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ t( ,^ r[ D' s[ .* _} <) k( k( D, k( D, k( D, <) _} :} <} [} }} |} 1} 2} ,[ 3} 4} 5} 6} 7} 8} 9} 0} '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ 0} a} b} c} d} e} I[ I[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ t( M{ D' f} 3$ g} q$ #* h- h- h- o$ h} i} j} k} l} m} n} l< o} p} q} r} s} I[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ '[ ", +")[ t} t} )[ t( t( t( t( t( )[ 2} 2} J[ u} $} v} w} x} y} z} A} B} C} D} E} j[ j[ F} {} G} H} I} S< t( t( t( t( t( t( t( t( t( t( t( t( t( )[ '[ J} K} L} .* u[ <) !~ k( D, k( D, k( D, /' u[ -% M} L( N} O} P} Q} R} ^< S} T} U} V} W} p] X} R} L[ t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( )[ ^< Y} Z} `} | .| 0} t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( S< ![ )[ +| g} h- #* o$ o$ @| #| $| %| &| *| =| -| ;| >| ,| '| )| !| 3[ t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( t( ", +"~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| t} 3[ 3[ q[ u} {| v} ]| ^| /| (| _| :| _| _| <| _| [| }| || 1| %} %} t} ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| t( v= }~ 2| .* u[ 3| !~ k( !~ k( D, k( D, /' 4| 5| T{ M{ 6| R} 7| 8| 9| 0| a| .| b| c| d| e| f| g| h| i| j| q[ ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| q[ k| l| m| n| o| p| j| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| t( 1< t( ;{ <] W& o$ h- W& q| r| s| t| u| v| w| x| y| z| r} A| B| C| D| 3[ E| q[ ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ~| ", +")[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ t} %} %} q[ F| G| H| I| J| K| L| L| M| N| O| P| Q| R| S| T| q[ %} %} t} )[ )[ )[ )[ )[ M{ )[ U| M> V| Q* {/ (, !~ k( k( !~ k( k( /' (, 4| 5| W| r[ S< )[ k| X| Y| Z| `| )[ S< 1 .1 +1 @1 #1 $1 %1 i| M{ t} )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ j| &1 *1 =1 -1 ;1 >1 j| )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ M{ 1< R[ ,1 2$ W& W& 2$ '1 )1 !1 ~1 {1 ]1 ^1 /1 (1 _1 !| :1 <1 [1 .} }1 3[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ )[ ", +"S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< %} |1 11 21 31 41 51 51 61 71 81 91 01 a1 b1 c1 d1 e1 f1 M{ k| k| S< S< S< )[ e< |( g1 F' _] (, !~ k( !~ !~ k( !~ D, k( /< h1 i1 J} S< M{ S< S< M{ J[ j1 k1 l1 m1 S< j| n1 o1 p1 q1 $1 r1 s1 t1 M{ S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< M{ t1 u1 m| v1 w1 >1 x1 S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< J} R[ y1 z1 k- A1 B1 C1 D1 E1 F1 G1 H1 I1 J1 m< K1 L1 M1 N1 O1 P1 Q1 R1 S1 S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< ", +"1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< T1 U1 V1 W1 X1 J| J| Y1 Z1 `1 2 j* .2 +2 @2 #2 $2 %2 M{ H< &2 1< *2 =2 e< 3' g1 F' u] /' D! !~ k( !~ k( !~ D, D! #{ -2 M> v= 1< M{ 1< 1< ;2 *2 >2 ,2 '2 )2 !2 ~2 {2 ]2 ^2 /2 (2 _2 f| :2 <2 *2 ;2 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< =2 [2 }2 |2 12 22 32 42 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< r[ J{ }( 52 62 72 82 92 02 a2 b2 c2 d2 e2 f2 g2 h2 f2 i2 j2 k2 l2 m2 g2 ;| 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< ", +"S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< n2 o2 p2 q2 r2 31 31 s2 31 t2 u2 v2 w2 x2 y2 z2 A2 B2 C2 D2 E2 &1 F2 G2 H2 I2 J2 u] /' D! !~ D! !~ k( !~ D, D! P= K2 L2 M2 N2 S< S< S< S< S< S< O2 P2 Q2 R2 S2 T2 ;| U2 V2 W2 X2 Y2 Z2 `2 3 1| 42 S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< O2 .3 +3 @3 #3 $3 %3 S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< N2 N2 i_ &3 *3 =3 -3 ;3 >3 ,3 Q& '3 )3 !3 ~3 {3 ]3 K1 ^3 /3 (3 _3 :3 <3 K1 S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< S< ", +"1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< [3 o2 }3 |3 13 W1 W1 23 W1 33 43 53 63 S< 73 83 93 03 a3 b3 c3 d3 e3 f3 g3 h3 i3 ,( j3 k3 l3 m3 n3 n3 o3 H) P= p3 q3 r3 N2 1< 1< 1< 1< 1< 1< 1< 1< s3 t3 u3 v3 w3 x3 s3 >2 y3 z3 A3 A3 B3 C3 ~2 s3 N2 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< N2 ;2 D3 E3 F3 G3 H3 N2 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< r[ S< t} I3 J3 K3 L3 M3 N3 O3 Y= P3 Q3 R3 S3 T3 ]3 U3 V3 W3 X3 Y3 Z3 `3 ]3 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< 1< ", +"r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ 4 .4 +4 @4 #4 q2 q2 $4 q2 %4 &4 l: *4 r[ =4 -4 1< ;4 >4 ,4 '4 )4 !4 ~4 {4 ]4 ^4 #( /4 (4 _4 :4 <4 [4 /4 }4 K2 >^ |4 N2 r[ r[ r[ r[ r[ r[ r[ r[ r[ s3 14 s3 24 R2 34 44 54 64 74 84 94 04 H: a4 b4 c4 54 r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ c4 d4 e4 f4 g4 h4 c4 r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ N2 v= E| i4 j4 k4 l4 m4 n4 o4 p4 *3 q4 r4 s4 t4 u4 v4 ]3 w4 S< x4 y4 z4 A4 ]3 B4 B4 r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ r[ ", +"C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 D4 E4 F4 G4 H4 I4 I4 J4 |3 K4 &4 R< J} s3 s3 c4 L4 =4 63 N2 M4 N4 O4 P4 Q4 R4 S4 T4 U4 V4 W4 X4 Y4 Z4 `4 5 .5 r3 N2 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 N2 c4 +5 @5 #5 $5 %5 &5 +5 *5 =5 -5 ;5 >5 ,5 '5 +5 c4 N2 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 s3 )5 !5 ~5 {5 ]5 ^5 s3 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 N2 /5 (5 _5 :5 <5 [5 }5 p4 Y= *3 |5 15 25 35 45 55 v4 65 75 85 95 05 a5 ^3 w4 b5 65 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 C4 ", +"J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} c5 .4 d5 e5 f5 g5 g5 h5 @4 i5 &4 h_ v= J} J} J} J} j5 k5 r[ l5 m5 n5 o5 p5 q5 r5 s5 t5 u5 v5 w5 x5 () y5 z5 A5 B5 r[ J} J} J} J} J} J} J} J} J} J} J} r[ C5 G| D5 E5 F5 G5 J} 44 H5 I5 J5 94 K5 L5 c4 j5 M5 J} r[ J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} r[ N5 d4 O5 @3 +3 h4 N5 r[ J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} P5 Q5 R5 S5 T5 U5 o4 Y= f& f& V5 W5 X5 Y5 Z5 `5 6 v4 65 J} ^3 .6 +6 @6 #6 $6 %6 j5 r[ J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} ", +"v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= &6 *6 =6 -6 ;6 >6 >6 ,6 G4 '6 )6 ^< e< v= v= v= v= v= v= U| k5 !6 ~6 {6 ]6 ^6 /6 (6 _6 :6 <6 [6 }6 |6 16 26 36 46 56 v= v= v= v= v= v= v= v= v= v= v= v= v= B5 66 76 86 96 66 06 14 a6 D[ b6 c6 d6 e6 f6 g6 h6 B5 i6 v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= k5 j6 k6 l6 m6 n6 o6 k5 v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= *4 v= L4 p6 q6 r6 s6 t6 u6 f& f& u* }> v6 w6 x6 y6 z6 A6 B6 U| v4 56 C6 D6 E6 F6 G6 H6 I6 J6 v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= v= ", +"J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} K6 *6 L6 M6 N6 O6 O6 P6 e5 Q6 R6 ,^ U| J} J} J} J} J} J} S6 C( T6 U6 (< m3 E' V6 W6 ^6 X6 Y6 Z6 `6 7 .7 +7 @7 #7 B5 J} J} J} J} J} J} J} J} J} J} J} J} J} k5 h6 $7 %7 &7 *7 =7 -7 ;7 >7 ,7 '7 )7 !7 ~7 {7 ]7 ^7 B5 J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} /7 (7 _7 @3 :7 <7 /7 J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} k5 k5 [7 56 }7 |7 17 27 37 47 57 a$ u* }> }> H; H; 67 77 87 97 07 a7 b7 *4 J6 c7 d7 e7 f7 g7 h7 L4 k5 J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} J} ", +"U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| i7 j7 k7 l7 m7 n7 n7 o7 p7 q7 )6 t( M2 U| U| U| U| U| S6 R[ r7 u[ !~ D! D! D! m3 m3 s7 t7 u7 v7 w7 x7 y7 z7 h6 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| A7 B7 C7 D7 E7 F7 i6 G7 H7 D[ I7 J7 K7 L7 () M7 N7 O7 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| O7 j6 P7 Q7 R7 /7 i6 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| S7 T7 U7 V7 W7 X7 Y7 Z7 `7 8 d- .8 N= H; H; [& [& [& +8 @8 #8 $8 %8 &8 b7 *8 =8 -8 ;8 >8 ,8 '8 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| ", +"M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 )8 !8 ~8 {8 ]8 ^8 ^8 /8 M6 (8 _8 }1 :8 M2 M2 M2 M2 r3 S< <8 [8 u] !~ H) D! H) D! H) ,( }8 |8 18 28 38 48 58 68 78 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 88 98 08 a8 b8 c8 d8 e8 f8 g8 h8 i8 j8 k8 l8 m8 n8 o8 p8 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 98 q8 r8 s8 t8 u8 v8 88 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 w8 x8 y8 z8 A8 B8 C8 D8 E8 F8 56 U| l- W* u* [& [& j% j% :; G8 H8 I8 J8 K8 L8 M8 L8 N8 O8 P8 Q8 R8 S8 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 ", +"U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| O7 T8 !8 U8 V8 W8 X8 X8 Y8 l7 Z8 _8 t( M2 U| U| O7 U| S6 [: `8 9 D, H) D! H) D! H) k( #: .9 +9 @9 #9 $9 %9 &9 *9 08 98 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| 06 06 =9 -9 Z| ;9 >9 M2 ,9 '9 )9 !9 ~9 {9 ]9 ^9 /9 78 O7 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| A7 (9 _9 :9 <9 [9 }9 98 U| O7 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| w8 |9 19 29 39 49 59 69 79 89 99 4, S< 09 i- @* H; j% j% :; X& X& a9 b9 c9 d9 e9 <> f9 g9 h9 i9 j9 56 88 06 U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| U| ", +"M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 k9 l9 m9 n9 o9 p9 p9 q9 r9 s9 t9 M{ r3 M2 M2 M2 u9 v9 w9 4| k( H) D! H) H) D! D! H) D! x9 y9 z9 A9 B9 C9 D9 E9 F9 G9 e8 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 78 H9 I9 J9 K9 L9 l5 M9 N9 O9 P9 Q9 R9 S9 T9 G9 e8 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 e8 U9 V9 W9 X9 Y9 Z9 e8 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 `9 0 .0 +0 @0 #0 $0 %0 &0 *0 :8 S6 )[ =0 }> X& j% :; X& X& @* @* -0 ;0 >0 ,0 '0 )0 !0 ~0 {0 ]0 ^0 /0 (0 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 M2 ", +":8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 r3 _0 :0 <0 [0 }0 |0 |0 10 V8 20 30 ;2 |4 :8 M2 S6 )[ 40 ~~ P= !~ H) H) H) D! H) D, 50 60 70 L} 78 80 90 M9 00 a0 b0 G9 78 r3 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 c0 p8 d0 e0 f0 g0 h0 l5 i0 j0 k0 l0 m0 n0 o0 p0 q0 78 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 80 r0 s0 t0 u0 v0 w0 x0 y0 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 z0 A0 B0 C0 D0 E0 F0 G0 H0 A7 :8 M2 I0 '[ J0 .8 :; :; X& @* W* W* K0 L0 M0 N0 O0 P0 Q0 R0 S0 T0 U0 V0 (0 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 :8 ", +"W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 z$ X0 Y0 Z0 `0 a a .a +a @a 30 S< #a W0 r3 S6 $a %a &a D, H) D! H) D! H) k( 4| *a )[ #a r3 W0 W0 e8 =a -a ;a >a ,a 'a y0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 W0 y0 )a !a ~a {a ]a ^a /a (a _a :a b ,b 'b )b !b ~b {b ]b S6 Pa #a #a Ja $a p3 ^b X& W* !% !% y- /b (b _b :b c u[ k( H) D! H) D! H) D, _} ,c 'c )c #a #a #a #a #a #a #a !c gb ~c {c ]c ^c kb Ka #a #a #a #a #a #a #a #a #a #a #a #a #a #a #a /c (c /a _c :c d ,d 'd )d !d ~d {d ]d ^d /d (d _d :d r3 e ,e 'e )e `d yc Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja Ja ", +"!e ~e {e ]e ^e /e (e ia _e 0d 9d 0d :e _e f ,f 'f )f !f ~f {f ]f ^f /f (f _f :f :f g ,g 'g )g !g Vd ~g {g {g ]g ^g /g (g _g :g h ,h 'h Vd )h ^g ^g !h ~h {h ]h ^h /h (h T. _h :h i ,i 'i v7 )i j ,j 'j )j !j ~j {j ]j ^j /j (j _j {i Gi Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Sh Gi Sh :j k ,k 'k mh Gg )c )c )c )c mi bj )k !k ~k {k ]k ^k /k (k i% 5$ 5$ F* _k :k l Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg Gg ", +"09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 09 be _> ,l 'l Vd )l !l !l ~l !l {l ]l ^l /l (l _l :l Kl Ll yj Ml Nl Nl Ol Nl Pl Ql Rl Sl Tl Ul Vl Wl Xl Yl Zl Ek 6k 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j `l m .m +m @m #m $m Ek 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j `l %m &m *m =m -m ;m >m Wj ,m 'm )m !m hg ~m %m `l 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j {m ]m ^m /m (m _m {m 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j 'j Ic :m n ,n 'n )n !n ~n {n 2h qm qm qm qm qm qm qm qm ]n ^n /n (n _n :n o ;o ,o Ql v] gn k( )~ 'o )o !o ~o {o ]o ^o Zl Im /o qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm /o Im (o _o :o n ko lo mo no oo po qo qm qm qm qm qm qm qm qm qm Hm ro so to uo vo wo xo f% )* _* (k yo zo Ao Bo Co Do Eo Fo Go Ho Io qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm qm ", +"2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h Jo Ko Lo vm Mo No No Oo No Po Qo Ro So /' _} To Uo Vo $/ Wo {o Xo Yo Zo |l 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h `o p .p +p @p p `o 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h |l Zo #p $p %p &p *p =p -p |i ;p >p ,p 'p )p !p ~p `o 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h |l =p Im @n {p ]p rn ^p 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h 2h /p (p _p :p

    q ,q 'q )q !q ~q {q 8e Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj Lj ", +"]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q ]q )o ], ^q /q ;o (q _q _q :q r ,r 'r )r !r ~r @r Lj )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o yq )o {r ]r ^r /r (r _r rp )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o :r s 8f ,s 's )s !s ~s 7r 8f 8f 8f 8f 8f 8f 8f 8f 8f 8f 8f 8f 8f @r {s ]s ^s /s (s _s /* +* :s r xs ys Wr s Ar )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o zs As Bs Cs Ds Es ~r .s Hr )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o 8f Fs Gs Hs ;s yq 8f 8f 8f Is Js Ks Ls Ms 6r Ns )o )o )o )o )o )o )o )o )o )o )o )o )o pr Os Ps Qs Rs Ss Ts 8& ^* ]* Us Vs Ws Xs Ys Zs `s t .t +t @t yq yq )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o )o ", +" s s s s s s s s s s s s s s s s s s s s #t $t %t &t *t =t =t -t ;t >t ,t 't ^> Dh )o Xq s s s s s )t !t ~t {t ]t ^t /t (t Ns s s s s s s s s s s s s s s s s s s s s _t :t u ,u 'u Q< |t )u ,m !u !t |t ~u {u ]u ^u /u (t 7t 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 7t (u Xq _u :u v ,v )t s s s s s s s s s s s s s s s s s ", +"2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q is 'k 'v )v !v ~v {v {v ]v ^v /v (v _v :v Wt 2q 2q 2q 2q 2q 2q 2q 2q 2q 2q w ,w 4v &w yu yu yu yu yu yu yu yu yu yu yu yu yu yu yu yu 4v p[ 'w )w T. !w y7 ~w {w ]w yu yu yu yu yu yu yu yu yu yu yu yu yu yu yu &w u (w _w :w gv x ,x 'x 4v is is )x !x ~x {x ]x ^x !x )x is is is is is is is is is is is is is is is is uv Iv /x (x _x :x ap 8& e% y {* e% ,y 'y )y !y ~y {y ]y ^y /y (y uw %w x Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw ", +"Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw Nw hx _y :y z ,z ,z 'z }y )z !z )o 0y %w %w %w %w %w %w %w %w %w %w %w %w %w %w Tx hy ~z {z ]t ]z ^z /z 5y Tx %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w 5y (z _z :z A ,A 'A %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w %w 0y )A !A 1z ~A {A ]A &A ^A /A (A _A :A u =B ,A -B ;B >B ,B D) 'B )B !B ~B {B ]B ^B /B (B _B +A :B &A 0y ZA }z }z }z }z }z }z }z }z }z }z }z }z }z }z }z 0y *A C ,C 'C )C !C ~C {C ]C ^C $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z Wt /C =A (C _C :C D ,D 'D )D !D $C ~D {D ]D $z $z $z $z $z $z Wt QB ]D QB MC QB $z $z $z $z Wt YC ^D /D (D _D YC $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z QB MC :D D, DD IB ED FD GD HC HC HD ID JD KD (t BD $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z LD &4 TC MD ND lx OD PD QD LD $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z QD RD SD YB TD UD QD $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z YC cD VD WD XD () YD ZD `D 2u E .E +E @E #E $E %E &E *E =E -E ;E >E ,E 'E $z QB $z QD 'E $z YC $z )E RB YC $z $z $z $z $z $z 43 !E ~E {E ]E ^E $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z $z QB QB /E (E _E A SE QD hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx BD LD TE UE VE WE XE YE ZE `E F .F +F @F #F $F %F &F OC *F =F -F ;F >F ,F TE hx 'F )F !F &4 LD lD ~F {F ]F BD hx hx hx hx BD 43 ^F /F (F _F :F 43 hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx hx BD BD TE G ,G 'G )G !G ~G {G *G ]G ^G /G (G _G :G wF NF Rz Rz TE H ,H 'H )H !H ~H {H ]H ^H /H (H _H :H OF [G I ,I 'I )I OE !I ~I Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz EB NF SF WC {I 'G NF EB Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz 'G ]I ^I /I (I _I :I F 8I 9I 0I aI bI cI dI eI fI gI hI iI jI kI lI ~I Rz Rz EB mI nI oI pI qI 3G Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz EB NF HH rI rI HH sI tI uI aG vI wI xI yI zI AI BI CI DI EI FI GI mG Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz nG HI II JI rG EB Rz Rz gH KI LI MI NI MI OI EB Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz mG PI QI RI SI TI UI ~* VI WI XI YI ZI cD GI `I J .J +J NG Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz Rz ", +"yE yE @J #J $J %J &J *J =J -J ;J >J ,J 'J hF QB )J !J xr ~J {J ]J ^J /J (J _J _J :J K ,K YF yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE yE @K 'K )K !K LH OH ~* ~K {K ]K ^K /K (K x @K _K :K L ,L CK EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB EB HF 'L PJ vI )L !L ~L {L ]L ^L /L (L _L :L M ,M 'M )M !M ~M {M ]M ^M pv 0E /M xG (M _M :M N ,N ,N 'N FL )N !N ~N {N ]N ^N /N (N _N :N O rN ;O ,O 'O )O !O ~O {O ]O hL yM xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF ^O /O (O _O :O QL xF xF xF xF #K P ,P 'P )P !P ~P {P ]P M M M M M M M M M M M M PN rN YN ^P /P YN rN PN M M M M M M M M M M M M M M M xG PN 1M (P _P :P

    Q ,Q 'Q )Q !Q ~Q {Q ]Q ^Q /Q (Q _Q :Q R ,R Fa xF xF xF xF 'R 'R xF 'R 'R xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF xF rP )R !R ~R {R ]R ^R /R (R _R :R S 5# ,S 'S )S !S .R ~S PA PA PA PA PA PA PA PA PA PA PA @Q {S ]S ^S /S (S GQ PA PA PA PA PA PA PA PA PA PA PA PA PA ~S .R _S :S T ,T QP 'T )T !T ~T {T ]T PA PA PA PA PA PA PA PA ", +"^T /T (T _T :T U ,U 'U )U !U ~U {U ]U CS wS ^U /U ]U GQ ES cb ~S 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R 'R @Q (U ^R _U :U V +O DS +V +V +V +V +V +V +V +V +V +V ,V 'V EQ )V !V ~V +O +V +V +V +V +V +V +V +V +V +V +V +V ,V {V ]V ^V /V (V AQ DS +V +V +V +V ,V _V :V W ,W 'W )W !W ~W {W ]W fR +V +V +V +V +V +V +V ", +"^W /W (W _W :W V @V wW xW zV yW zW AW BW CW DW EW FW GW HW IW JW KW LW MW NW OW PW QW RW SW TW UW VW WW XW YW ZW `W X .X +X @X #X $X %X &X *X =X -X ;X >X ,X 'X )X !X gW ~X pW pW 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W {X ]X ^X /X (X _X :X Y ,Y 'Y )Y !Y ~Y {Y ]Y ^Y /Y (Y _Y :Y Z ,Z 'Z 5W 5W )Z )Z )Z JX 5W !Z }z ~Z LX v- /, /, /, MX 8W {Z ]Z ^Z SX SX /Z (Z _Z :Z EB ` ,` '` )` !` ~` {` ]` ^` /` 4W (` FX 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W )Z _` :` <` [` }` |` 1` 2` 3` fW fW 4` 5` 6` 7` TY 8` 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W 5W JX ., .' .) .! .~ .{ .] .^ ./ .( ._ .: .< .[ .} .| .1 .2 .3 .4 .5 .6 .7 .8 .9 .0 .a .b .c .d .e .f .g .h .i .j .k .l ...,..x` x` '..)..!..~..~I +W &..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..{..]..^../..(.._..:..<..[..7Z n` [Z JX &..&..&..&..&..&..&..}..|..1..DQ 2..3..{..&..&..&..&..&..&..&..[Z 4..5..6..7..8..9..3..}..&..&..&..&..[Z JX 0..a..b..c..d..e..f..g..h..i..j..k..l..m..n..o..p..q..r..s..t..u..v..w..x..y..z..A..B..C..D..E..F..G..H..I..J..K..L..M..N..O..P..Q..R..S..T..U..V..W..X..Y..Z..`..9 . +..+.++.@+.#+.$+.[Z )Z n` JX [Z &..[Z N` %+.&+.n .*+.=+.[Z -+.o .;+.>+.,+.'+.)+.!+.AY ~+.{+.]+.^+./+.(+.zY &+.JX &..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..[Z &..JX _+.:+.<+.[+.}+.|+.1+.Q .h` 2+.3+.4+.5+.6+.h` &..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..&..*..7+.8+.9+.0+.a+.b+.c+.X .d+.e+.f+.g+.h+.i+.j+.k+.l+.m+.n+.o+.4W &..&..&..&..", +"A` @.,@.'@.)@.!@.~@.{@.]@.^@./@.(@._@.:@.<@.[@.}@.|@.1@.2@.3@.4@.5@.6@.W..7@.8@.9@.0@.a@.b@.c@.d@.e@.f@.g@.h@.i@.j@.k@.N` l@.m@.k@.6Z #.,#.'#.A` $.o@.,$.'$.)$.!$.o@.&$.~$.{$.]$.^$./$.($._$.:$.<$.&$.!Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z &$.[$.}$.|$.1$.2$.3$.4$.5$.6$.YY 7$.8$.9$.0$.a$.U@.!Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z !Z b$.Hx c$.d$.=W e$. Z f$.g$.h$.i$.j$.k$.l$.m$.n$.o$.p$.q$.r$.s$.t$.u$.!Z !Z !Z ", +"+W +W +W +W +W +W +W +W +W +W +W *..v$.w$.y; *- J= J= J= v- ~#.x$.y$.z$.A$._#._#.B$.C$.D$.E$.PN )#.+W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W P+.P+.k#.F$.D` G$.H$.I$.6#.7#.J$.K$.P+.P+.+W +W +W +W +W +W P+.g#.L$.M$.5H N$.O$.+W +W +W P+.P$.Q$.R$.S$.T$.U$.V$.W$.X$.V$.}#.P+.Y$.Z$.`$. %..%.+%.@%.#%.$%.%%.q#.q#.q#.&%.*%.=%.-%.;%.>%.q#.q#.q#.,%.'%.)%.!%.~%.{%.q#.q#.q#.q#.q#.q#.]%.^%./%.(%._%.:%.<%.[%.}%.|%.1%.2%.3%.4%.5%.6%.7%.8%.9%.0%.a%.b%.c%.d%.e%.f%.g%.h%.i%.j%.k%.l%.m%.n%.o%.p%.q%.r%.s%.p%.t%.u%.v%.w%.x%.P+.y%.z%.A%.B%.C%.D%.E%.w@.F@.F%.G%.H%.I%.J%.K%.L%.M%.A` j#.+W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W A` N` N%.O%.P%.Q%.R%.S%.T%.U%.V%.j#.k@.W%.X%.Y%.A` A` +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W +W *..Z%.`%. &..&.+&.@&.#&.$&.%&.2& &&.*&.=&.k` -&.;&.>&.,&.'&.)&.!&.YY +W +W +W ", +")#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.~&.7+.{&.D, f= *- J= J= J= ]&.{#.^&./&.(&.C$.C$._&.:&.<&.[&.$Q *..)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.}&.a#.|&.2#.1&.2&.3&.4&.5&.6&.7&.8&.}&.)#.)#.)#.)#.)#.)#.)#.}&.8&.9&.0&.a&.V$.b#.)#.[#.b&.c&.d&.e&.f&.}#.}&.g&.h&.i&.j&.k&.)#.l&.m&.n&.o&.p&.q&.r&.s&.t&.u&.q#.q#.q#.v&.w&.x&.y&.z&.A&.q#.q#.q#.B&.C&.D&.E&.F&.G&.q#.q#.q#.q#.q#.q#.H&.I&.J&.K&.L&.M&.N&.O&.P&.Q&.R&.S&.T&.U&.V&.W&.X&.Y&.Z&.`&. *..*.+*.@*.#*.$*.%*.&*.**.=*.-*.;*.>*.,*.'*.)*.)#.!*.~*.{*.]*.^*./*.(*._*.:*.<*.^*.[*.}*.|*.1*.2*.3*.4*.5*.6*.7*.8*.9*.0*.a*.b*.c*.d*.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.e*.f*.g*.h*.i*.j*.k*.l*.m*.n*.o*.p*.q*.r*.s*.t*.[#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.)#.u*.v*.~Z 1& w*.x*.y*.z*.A*.B*.C*.D*.E*.F*.G*.H*.I*.J*.K*.L*.Pz }S M*.[#.)#.)#.", +"*..*..*..*..*..*..*..*..*..*..*..N*.Hx -..Ro f= J= J= J= *- ~#.O*.P*.Q*.R*.:&.:&.S*.T*.U*.V*.@Q W*.*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..}&.X*.}&.Y*.Z*.m#.*..`*. =..=.ZX JT +=.]*.}&.*..*..*..*..*..]*.3&.@=.#=.$=.%=.&=.*=.==.-=.;=.U~ >=.,=.K+.K+.'=.)=.!=.~=.{=.]=.^=./=.(=._=.:=.<=.[=.}=.|=.1=.q#.q#.q#.2=.3=.4=.5=.6=.7=.q#.q#.q#.8=.9=.0=.a=.b=.c=.d=.e=.f=.g=.h=.i=.j=.k=.l=.m=.n=.o=.p=.q=.r=.s=.t=.u=.v=.w=.x=.y=.z=.A=.B=.C=.D=.E=.F=.G=.H=.I=.J=.H=.K=.L=.M=.N=.O=.P=.Q=.R=.S=.T=.U=.V=.W=.X=.Y=.Z=.`=. -..-.+-.@-.@-.#-.^*.Y=.$-.%-.&-.*-.=-.--.;-.>-.,-.'-.e*.)-.M*.*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..!-.~-.{-.]-.^-./-.(-._-.:-.<-.[-.}-.|-.1-.2-.e*.*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..+V 3-.4-.5-.+#.6-.@&.7-.8-.9-.0-.a-.b-.c-.d-.e-.M*.f-.g-.h-.i-.j-.W*.[#.*..", +"k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.*..*..'R l-.~~ f= *- *- *- *- m-.n-.o-.p-.q-.r-.r-.s-.p-.t-.[&.@Q *..k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.K+.'=.u-.2#.v-.w-.x-.y-.z-.A-.B-.C-.D-.]*.}&.k-.k-.k-.k-.}&.E-.F-.G-.H-.I-.J-.K-.L-.M-.N-.O-.P-.k#.}&.K+.Q-.R-.S-.'=.T-.U-.V-.W-.X-.Y-.p&.Z-.`-. ;..;.+;.q#.q#.q#.@;.u&.#;.$;.%;.&;.q#.q#.q#.*;.=;.-;.;;.>;.,;.';.);.!;.~;.{;.];.^;./;.(;._;.:;.<;.[;.};.|;.1;.2;.3;.4;.5;.6;.7;.8;.9;.0;.a;.b;.c;.d;.e;.f;.g;.h;.i;.j;.k;.$*.l;.m;.n;.o;.p;.q;.r;.s;.t;.u;.v;.w;.x;.y;.z;.A;.B;.C;.D;.E;.C;.&-.F;.G;.H;.I;.J;.K;.L;.M;.N;.b*.}&.X*.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.O;.P;.Q;.R;.S;.T;.U;.V;.)-.b*.W;.X;.Y;.Z;.`;. >.o` k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.k-.*..JX .>.Z& =- +>.@>.#>.z*.$>.%>.&>.*>.=>.->.;>.>>.[#.,>.JX '>.)>.CB [$.W*.[#.", +"*..*..*..*..*..*..*..*..*..*..b$.+W !>.~>.v- _, _, _, _, f= {>.]>.^>.p-./>./&./&.(>._>.:>.<>..V b$.*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..[>.*..}>.|>.1>.2>.*..x-.3>.4>.A-.B-.5>.6>.7>.[>.*..*..*..8>.9>.0>.a>.b>.c>.d>.e>.f>.g>.h>.i>.j>.k>.*..l>.m>.n>.o>.p>.q>.r>.s>.t>.u>.v>.w>.x>.y>.z>.A>.B>.q#.q#.q#.C>.D>.E>.F>.G>.H>.q#.q#.q#.I>.J>.K>.L>.q#.q#.q#.q#.q#.M>.N>.O>.P>.Q>.R>.S>.T>.U>.V>.W>.X>.Y>.Z>.`>. ,..,.+,.@,.#,.$,.%,.&,.*,.=,.-,.;,.>,.,,.',.a=.),.!,.~,.{,.],.^,./,.(,._,.:,.<,.[,.},.|,.1,.2,.3,.4,.5,.6,.4,.7,.4,.8,.G;.9,.0,.a,.b,.c,.d,.e,.f,.g,.h,.i,.*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..[>.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.)-.t,.u,.v,.w,.x,.y,.[>.*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..*..[>.*..[>.z,.3& A,.B,.C,.D,.E,.F,.G,.H,.I,.J,.K,.L,.M*.y,.M,. T,.U,.V,.W,.X,.W,.W,.Y,.Z,.`,.<>..V '.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.l>.3>..'.+'.@'.3>.l>.l>.#'.4>.A-.mW 5>.#'.$'.%'.u*.u*.l>.f&.&'.*'.='.-'.;'.>'.,'.''.)'.!'.~'.R,.b$.%'.{'.]'.^'./'.('._'.:'.<'.['.}'.|'.1'.z>.Z-.2'.3'.q#.q#.q#.4'.5'.6'.7'.8'.9'.q#.q#.q#.0'.a'.b'.c'.q#.q#.q#.q#.q#.q#.q#.d'.e'.f'.g'.h'.i'.j'.k'.l'.m'.n'.o'.p'.q'.r'.s'.t'.u'.v'.w'.x'.y'.z'.A'.B'.C'.D'.E'.F'.G'.H'.I'.J'.K'.L'.M'.N'.O'.P'.Q'.R'.S'.T'.U'.V'.W'.X'.Y'.Z'.`'.L . )..).8,.+).@).#).$).%).&).*).=).-).D%.;).`'.>).u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.>).j,.,).').)).!).~).{).]).^)./).y,.u*.()._).:).<).[).}).^-.>).u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.u*.b$.b$.+W |).2& 7% +>.@>.1).2).3).4).IS 5).6).7).8).9).0).a).b).c).d).e).f).g).", +"[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.h).v*.i).j).F> _, _, _, _, F> T,.k).l).m).n).m).m).o).p).q).<>..V b$.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.%'.>).x-.r).s).t).[>.%'.k>.#'.4>.A-.u).v).~=.l>.[>.[>.[>.k>.'=.w).x).y).z).A).k>.B).C).D).E).7>.%'.[>.F).G).H)._'.I).J).K).L).M).N).O).v>.P).Q).R).S).q#.q#.q#.q#.q#.q#.q#.q#.q#.q#.q#.q#.T).U).V).W).X).Y).Z).`). !.q#.q#.q#..!.+!.@!.#!.$!.%!.&!.*!.=!.-!.;!.>!.,!.'!.)!.!!.~!.{!.]!.^!./!.(!._!.:!..[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.b$.y!.z!.A!.B!.C!.D!.E!.F!.G!.,>.y,.H!.I!.J!.K!.L!.M!.N!.O!.R,.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.[>.h).v*.P!.T* 7% 6% Q!.R!.S!.T!.U!.V!.W!.X!.Y!.Z!.`!. ~.^-.^-..~.+~.@~.#~.$~.", +"$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.%~.*L &~.*~.F> f= f= f= f= w- =~.-~.;~.>~.,~.'~.'~.)~.!~.~~.{~.)Z N*.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.]~.^~./~.(~._~.{'.:~.$'.]~.<~.4>.A-.[~.}~.|~.8>.$'.$'.b$.:~.1~.2~.3~.4~.5~.<~.6~.7~.8~.{'.:~.9~.0~.a~.b~.c~.d~.e~.f~.g~.h~.i~.j~.k~.l~.m~.n~.o~.p~.q#.q#.q#.q~.r~.s~.t~.u~.v~.q#.q#.q#.w~.x~.y~.z~.A~.B~.C~.D~.E~.F~.G~.q#.H~.I~.J~.K~.L~.M~.N~.O~.P~.Q~.R~.S~.T~.U~.V~.W~.X~.Y~.Z~.`~. {..{.+{.@{.#{.${.%{.&{.*{.${.={.-{.;{.>{.,{.'{.){.!{.~{.{{.]{.^{./{.({._{.:{.<{.[{.}{.|{.1{.2{.1{.3{.4{.5{.6{.7{.8{.9{.0{.a{.b{.c{.d{.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.e{.f{.g{.h{.i{.j{.k{.l{.m{.n{.d{. '.o{.p{.q{.r{.s{.t{.u{.v{.w{.x{.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.%~.v*.y{.z{.5% =- A{.B{.#>.C{.D{.E{.F{.;8 G{.H{.I{.J{.K{.$'.L{.M{.N{.O{.P{.", +"N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.%~.*L Q{.F' w- f= f= f= f= [8 R{.S{.T{.U{.V{.W{.W{.X{.Y{.Z{.{~.)Z N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.x{.`{.,'. ]..].<{.N*.N*.N*.]~.+].@].A-.#].$].<~.]~.N*.N*.%].&].*].+].=].-].;].>].,].'].)].x{.!].~].{].]].^]./].(]._].:].<].[].}].|].1].2].3].4].5].q#.q#.q#.6].7].8].9].0].a].q#.q#.q#.b].c].d].e].f].g].h].i].j].k].l].m].n].o].p].q].r].s].t].u].v].w].x].y].z].A].B].C].D].E].F].G].H].I].J].K].L].M].N].O].P].Q].R].S].T].U].V].W].X].s~.Y].Z].`]. ^..^.+^.@^.#^.$^.%^.&^.*^.=^.-^.-^.;^.>^.,^.'^.)^.!^.~^.{^.]^.^^./^.(^.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*._^.:^.<^.[^.}^.|^.1^.2^.3^._^.o{.4^.5^.6^.().7^.8^.9^.0^.a^.b^.~&.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.c^.v$.Jj d^.7% 6% 6% Q!.R!.e^.f^.g^.h^.i^.j^.k^.l^.m^.n^.(^.%].b^.o^.i` p^.", +"$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.q^.r^.Q{.wu w- F> F> F> F> R* s^.S{.t^.u^.v^.w^.w^.x^.y^.z^.A^.[Z h).$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.$'.B^.C^.D^.E^.F^.)].B^.$'.$'.B^.G^.H^.I^.J^.K^.C^.B^.$'.x{.$'.:~.%].k>.L^.M^.N^.O^.P^.Q^.&].R^.S^.T^.U^.V^.W^.X^.Y^.Z^.`^. /../.+/.@/.|'.#/.$/.%/.q#.q#.q#.&/.*/.=/.-/.;/.>/.q#.q#.q#.,/.'/.)/.!/.~/.{/.]/.^/.//.(/._/.:/.(.,(.!* 5% =- =- '(.)(.1).!(.~(.{(.](.^(./(.((._(.:(.r{.0~.x{.h).i,.<(.", +"N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.c^.mP Q{./, R* w- F> F> F> I) [(.S{.}(.|(.1(.2(.2(.3(.4(.5(.6(.A` %~.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.7(.8(.9(.0(.a(.b(.7(.N*.N*.N*.c(.d(.e(.A-.#].f(.g(.h(.i(.j(.N*.c(.k(.l(.m(.n(.o(.p(.q(.r(.s(.t(.u(.v(.w(.x(.y(.z(.A(.B(.C(.D(.E(.F(.G(.H(.I(.J(.q#.q#.q#.K(.L(.M(.N(.O(.P(.q#.q#.q#.Q(.R(.S(.$,.T(.U(.V(.W(.X(.Y(.Z(.`(. _.._.+_.@_.#_.$_.%_.&_.*_.=_.-_.;_.>_.,_.'_.)_.!_.~_.{_.]_.^_./_.(_.__.:_.<_.[_.}_.|_.1_.2_.3_.4_.5_.6_.7_.8_.9_.0_.a_.b_.c_.d_.e_.f_.g_.h_.i_.7(.j_.k_.l_.m_.n_.o_.H/.p_.q_.r_.s_.t_.u_.v_.w{.h).N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.j_.w_.x_.y_.z_.A_.B_.C_.D_.n{.E_.F_.G_.H_.I_.N*.J_.K_.L_.M_.N_.O_.!].N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.N*.c^. M P_.z{.6% >% >% >% Q_.R_.S_.T_.|X U_.V_.W_.X_.Y_.Z_.W*.`_. :. :.`_..:.", +"%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.+:.mP @:.#:.R* w- w- w- w- Q* $:.%:.&:.*:.=:.-:.-:.;:.>:.,:.':.P+.q^.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.j(.):.!:.~:.{:.b(.c(.%~.%~.%~.j(.]:.e(.^:./:.(:._:.::.<:.c(.`_.j(.[:.}:.|:.1:.2:.3:.4:.5:.6:.7:.8:.9:.0:.a:.b:.c:.d:.e:.f:.g:.h:.i:.j:.k:.l:.q#.q#.q#.m:.n:.o:.p:.q:.r:.q#.q#.q#.s:.t:.u:.v:.w:.x:.y:.z:.A:.B:.C:.D:.E:.F:.G:.H:.I:.J:.K:.L:.M:.J:.N:.O:.P:.=_.Q:.R:.S:.T:.U:.V:.W:.X:.Y:.Z:.`:. <..<.+<.N].@<.#<.$<.%<.&<.*<.=<.-<.;<.><.,<.'<.)<.!<.~<.{<.]<.^<./<.(<._<.:<.<<.[<.m_.}<.|<.1<.2<.3<.4<.5<.6<.7<.8<.9<.7(.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.7(.0<.a<.b<.c<.d<.e<.f<.g<.h<.i<.j<.k<.l<.m<.%~.%~.7(.n<.o<.p<.q<.`'.r<.s<.`_.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.c^.JX ~Z 3& =- =- =- =- t<.u<.v<.w<.x<.n^.s<.n<.y<.z<.A<.B<.C<.n<.7(.7(.%~.", +"D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.+:.E<.@:.v- Q* R* w- w- w- s~ {J %:.F<.G<.H<.I<.I<.J<.K<.L<.M<.P+.q^.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.N<.O<.P<.Q<.UF q(.N<.D<.D<.D<.D<.j(.R<.e(.S<.T<.U<.V<.W<.)].j(.N<.N<.X<.Y<.Z<.`<. [..[.+[.@[.#[.$[.%[.&[.*[.=[.-[.;[.>[.,[.'[.)[.![.~[.{[.][.q#.q#.q#.^[./[.([._[.:[.<[.q#.q#.q#.[[.}[.|[.1[.q#.q#.q#.2[.3[.4[.5[.6[.7[.8[.9[.0[.a[.b[.c[.d[.e[.f[.g[.h[.i[.j[.k[.l[.m[.n[.o[.n[.p[.q[.r[.s[.t[.u[.v[.w[.x[.y[.z[.A[.B[.C[.D[.E[.F[.G[.H[.I[.J[.K[.$/.L[.M[.N[.O[.P[.Q[.R[.S[.T[.U[.V[.W[.X[.Y[.Z[.`[. }..}.+}.@}.#}.$}.s<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.J_.%}.&}.*}.=}.yz -}.;}.>}.,}.'}.)}.!}.~}.%~.D<.D<.{}.c(.]}.^}./}.(}.;).q^.N<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.D<.+:.A%._}.=- >% =- >% >% >% :}.<}.[}.}}.n!.|}.J_.{}.%'.1}.2}.3}.4}.J_.D<.N<.", +"%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.5}.6}.i).J= Q* R* R* R* R* s~ 7}.%:.8}.9}.0}.a}.a}.b}.c}.d}.e}.[#.c^.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.f}.g}.h}.~:.i}.j}.k}.%~.%~.%~.%~.f}.l}.m}.n}.o}.p}.q}.r}.s}.t}.f}.u}.v}.w}.x}.y}.z}.A}.B}.C}.D}.E}.F}.G}.H}.6:.I}.r<.J}.K}.L}.M}.N}.q#.q#.q#.q#.q#.q#.q#.O}.P}.q#.q#.q#.q#.q#.q#.q#.Q}.R}.S}.T}.U}.n].V}.W}.X}.Y}.#_.Z}.`}. |..|.+|.@|.#|.$|.+|.%|.&|.*|.b[.b[.=|.-|.;|.>|.,|.'|.)|.!|.~|.{|.]|.^|./|.(|._|.:|.<|.[|.}|.||.1|.2|.3|.4|.5|.6|.7|.8|.9|.0|.a|.b|.c|.d|.e|.f|.g|.h|.i|.j|.k|.l|.m|.n|.o|.p|.q|.r|.F%.s|.)J %~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.q^.t|.u|.v|.w|.x|.y|.z|.A|.B|.C|.D|.E|.F|.G|.t|.%~.%~.%~.%~.%~.H|.I|.J|.K|.L|.M|.t_.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.%~.c^.$'.N|.4& 2& >% >% 1& 1& t<.O|.P|.Q|.R|.n^.t_.)J S|.T|.U|.V|.W|.X|.)J q^.", +"c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.Y|.TV i).M, s~ Q* Q* Q* Q* S* Z|.%:.`|. 1..1.K<.K<.+1.@1.#1.$1.}&.+:.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.%1.&1.*1.=1.-1.;1.t}.c^.c^.c^.c^.%1.q^.>1.,1.'1.)1.!1.~1.{1.]1.%1.^1./1.(1._1.:1.<1.[1.}1.|1.11.21.31.41.51.61.71.81.91.01.a1.b1.c1.d1.e1.f1.g1.h1.i1.j1.k1.l1.m1.n1.o1.p1.q1.r1.s1.t1.u1.v1.w1.x1.y1.z1.A1.B1.C1.D1.E1.F1.G1.H1.I1.J1.K1.L1.M1.N1.O1.O1.P1.Q1.R1.S1.T1.U1.V1.W1.X1.Y1.Z1.`1. 2..2.+2.@2.#2.$2.%2.&2.*2.=2.-2.;2.>2.,2.'2.)2.!2.~2.{2.]2.^2./2.(2._2.:2.<2.[2.}2.|2.12.12.22.32.42.52.k}.62.72.82.92.a<.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.02.a2.b2.c2.d2.e2.f2.g2.h2.i2.j2.k2.l2.m2.n2.o2.p2.k}.c^.c^.c^.c^.c^.t_.q2.r2.s2.t2.u2.v2.02.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.c^.+:.q^.Y|.^, x- >% 1& 1& w2.=- x2.y2.z2.A2.B2.C2.t_.a<.D2.E2.F2.G2.H2.I2.t_.", +"q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.Y|.TV @:.*- J2.Q* Q* Q* Q* S* m-.%:.K2.L2.M2.c}.c}.N2.O2.P2.$1.}&.+:.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.t}.Q2.R2.S2.T2.U2.%1.q^.q^.q^.%1.%1.V2.W2.X2.Y2.Z2.`2. 3..3.+3.c^.@3.#3.$3.%3.&3.*3.=3.-3.;3.>3.,3.'3.)3.!3.~3.{3.]3.^3./3.(3._3.:3.<3.[3.}3.|3.13.23.33.43.53.63.73.83.93.03.a3.b3.c3.d3.e3.f3.g3.h3.i3.j3.k3.l3.m3.n3.o3.p3.q3.r3.M1.s3.t3.u3.v3.w3.x3.y3.z3.A3.B3.C3.D3.E3.F3.G3.H3.I3.J3.K3.L3.M3.N3.O3.P3.Q3.R3.S3.T3.U3.V3.W3.X3.Y3.Z3.`3. 4..4.+4.@4.#4.$4.%4.&4.*4.=4.-4.;4.>4.,4.Z[.'4.)4.!4.92.~4.{4.]4.t_.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.^4./4.(4._4.:4.<4.[4.}4.|4.14.24.34.44.54.64.74.M|.v2.q^.q^.q^.q^.q^.%1.02.84.94.04.a4.b4.v2.02.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.q^.+:.Y|.A%.c4.z{.=- >% >% >% =- d4.e4.f4.g4.h4.i4.f}.q^.a<.X|.j4.k4.l4.m4.n4.", +"+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.o4.nd i).p4.S* s~ s~ s~ s~ S= m-.q4.r4.s4.t4.u4.u4.v4.w4.x4.y4.W*.Y|.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.z4.A4.B4.C4.D4.E4.z4.+:.+:.+:.+:.F4.G4.H4.I4.J4.K4.L4.M4.N4.O4.P4.Q4.R4.S4.T4.U4.V4.W4.X4.Y4.Z4.`4. 5..5.+5.@5.#5.$5.%5.&5.*5.=5.-5.;5.>5.,5.'5.)5.!5.~5.{5.]5.^5./5.(5._5.:5.<5.[5.}5.|5.15.25.d[.35.45.55.65.75.85.95.05.a5.b5.r3.c5.d5.e5.f5.g5.h5.i5.j5.k5.l5.m5.n5.o5.p5.q5.r5.s5.t5.u5.v5.w5.x5.y5.z5.A5.B5.C5.D5.E5.F5.G5.H5.I5.J5.K5.L5.M5.#5.N5.O5.P5.Q5.R5.S5.T5.U5.V5.W5.X5.Y5.Z5.`5. 6..6.+6.@6.#6.$6.%6.P4.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.&6.*6.=6._#.-6.;6.>6.,6.'6.)6.!6.~6.{6.]6.^6./6.(6._6.:6.+:.+:.+:.+:.+:.P4.<6.[6.}6.|6.16.26.:6.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.+:.36.&..46.S= >% 1& 1& 1& >% x- VI 56.66.76.86.96.P4.+:.P4.X|.06.a6.b6.r<.", +"Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.o4.&..c6._, S= s~ s~ s~ s~ S= d6.e6.f6.g6.h6.i6.i6.j6.g6.k6.l6.%'.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.m6.F4.n6.o6.p6.4|.q6.z4.Y|.Y|.Y|.r6.F4.s6.t6.u6.v6.w6.x6.y6.z6.A6.B6.C6.D6.E6.F6.kZ G6.H6.I6.J6.K6.L6.M6.N6.O6.P6.Q6.*5.R6.S6.T6.U6.V6.W6.X6.Y6.Z6.`6. 7..7.+7.@7.#7.$7.%7.&7.*7.=7.-7.;7.>7.,7.'7.)7.!7.~7.j[.{7.]7.^7./7.(7._7.{7.:7.<7.[7.}7.|7.17.27.37.47.57.67.77.87.97.07.a7.b7.c7.d7.e7.f7.g7.h7.i7.`6.j7.k7.l7.m7.n7.o7.p7.q7.r7.s7.t7.u7.v7.w7.x7.y7.z7.A7.W5.B7.C7.D7.E7.F7.G7.H7.I7.J7.K7.L7.M7.N7.O7.P7.:6.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.>1.Q7.R7.S7.T7.U7.V7.W7.X7.Y7.Z7.`7. 8..8.+8.@8.#8.$8.%8.m6.Y|.Y|.Y|.m6.%8.&8.*8.=8.-8.m<.;8.>8.r6.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.,8.E<.'8.)8.>% 3& 3& 3& 1& 2& !8.~8.{8.]8.^8./8.%8.Y|.^1.Y|.0<.!W (8._8.", +"Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.o4.&..i).:8.S= S* S* S* S* && d6.<8.[8.}8.|8.18.18.28.38.48.58.%'.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.z4.q6.68.S2.d..n6.F4.Y|.Y|.Y|.Y|.r6.78.88.98.08.a8.b8.c8.d8.e8.f8.g8.h8.i8.j8.k8.l8.m8.n8.o8.p8.q8.r8.s8.t8.u8.v8.w8.x8.y8.z8.A8.B8.C8.D8.E8.F8.G8.H8.I8.J8.K8.L8.M8.N8.O8.P8.Q8.R8.S8.T8.U8.V8.O1.W8.X8.Y8.Z8.`8. 9.h[..9.+9.47.@9.#9.$9.%9.&9.*9.=9.-9.;9.l5.>9.,9.'9.)9.!9.~9.{9.]9.^9./9.(9._9.:9.<9.[9.}9.|9.19.29.39.49.59.69.79.89.99.09.a9.b9.c9.d9.e9.f9.&5.g9.h9.i9.j9.k9.l9.m9.n9.o9.p9.q9.r9.s9.t9.u9.:6.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.P4.v9.w9.x9.y9.z9.A9.W7.B9.C9.D9.E9.>1.>8.F9.G9.H9.k}.m6.z4.Y|.Y|.Y|.Y|.z4.5}.I9.J9.K9.L9.M9.N9.%8.r6.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.,8.O9.P9.Q9.6% >% >% >% >% 1& R9.S9.T9.U9.uo L .V9.P4.m6.P4.r9.`'.W9.X9.", +"Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.,8.A%.c6.Y9.&& S= S* S* S* Z9.`9. 0..0.+0.@0.#0.#0.$0.%0.&0.*0.x{.o4.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.Y|.=0.-0.;0.>0.,0.36.'0.Y|.Y|.Y|.Y|.Y|.=0.)0.F4.!0.~0.{0.]0.^0./0.(0._0.:0.<0.[0.}0.|0.10.20.30.40.50.60.70.80.90.00.a0.b0.c0.d0.J5.e0.f0.g0.h0.i0.j0.k0.l0.m0.n0.o0.p0.q0.r0.s0.t0.u0.v0.w0.x0.y0.z0.A0.B0.C0.t3.D0.E0.F0.17.G0.H0.I0.J0.K0.L0.M0.N0.O0.P0.Q0.R0.J:.S0.T0.U0.V0.W0.X0.Y0.Z0.`0. a..a.+a.@a.#a.$a.%a.&a.*a.=a.-a.;a.>a.,a.'a.)a.!a.~a.{a.]a.^a./a.(a._a.:a..&& && && && !* f= Aa.Ba.Ca.g4.^8.I2.Da.9a.Ea.Da.Fa.Ga.Ha.", +"36.36.36.36.36.36.36.36.36.36.,8.A%.c6.F> && S= S= S= S= !* Ia.e6.Ja.g6.Ka.g6.g6.La.g6.Ma.Na.x{.o4.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.36.'0.Oa.Pa.Qa.Ra.Sa.=0.'0.Ea.36.Ea.9a.Ea.Ta.Ua.Va.Wa.Xa.>1.Ya.Za.`a. b..b.+b.@b.#b._a.$b.%b.&b.*b.=b.-b.;b.>b.,b.'b.)b.!b.~b.{b.]b.^b./b.(b._b.:b.c.,c.'c.)c.!c.~c.{c.]c.^c./c.KX Y|.Ea.pa.(c._c./6.:c.oa..ic.e6.jc.g6.kc.lc.lc.mc.g6.nc.Na.x{.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.=0.oc.pc.qc.rc.sc.tc.'0.o4.o4.ka.pa.d.,d.'d.)d.!d.~d.{d.]d.G0.#9.^d./d.%9.(d._d.h5.:d. _, _, _, _, M, R* %e.:~.&e.*e.=e.-e.;e.o4.'0.o4.ka.pa.>e.", +",e.,e.,e.,e.,e.,e.,e.,e.,e.,e.7c.'e.)e.w- !* && && && && T* !e.e6.~e.{e.]e.^e.^e./e.g6.(e._e.7(.,8.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.,e.:e.f.,f.'f.)f.!f.~f.{f.]f.^f./f.(f._f.:f.g.,g.'g.)g.!g.~g.{g.]g.^g./g.(g._g.:g.h.,h.'h.)h.[g.!h.~h.{h.]h.Dd.^h./h.(h._h.ff.Qf.,8.,8.,8.,8.,8.,e.:h..mh.~~ f= _, _, _, f= y; nh.o4.o4.,8.oh.ph.qh.rh.4a.ke.Td.0h.4e.,8.", +",8.,8.,8.,8.,8.,8.,8.,8.,8.,8.sh.'e.th.uh.T* !* !* !* !* x- vh.e6.wh.xh.yh.zh.zh.Ah.^e.Bh.Ch.N<.lh.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.Dh.Eh.Fh.T. Wa Gh.Hh.Ih.:e.,8.0h.Jh.,8.0h.=g.Kh.Lh.Mh.Nh.Oh.Ph.Qh.Rh.Sh.Th.Uh.ie.Vh.Wh.Xh.8f.Yh.9f.Zh.`h. i..i.+i.@i.#i.$i.%i.&i.*i.=i.-i.;i.>i.,i.'i.)i.!i.~i.{i.]i.^i./i.(i._i.:i.e.&j.*j.=j.-j.Jh.0h.,8.,8.,8.;j.>j.,j.'j.)j.!j.~j.{j.)0.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.,8.lh.,e.sh.]j.*~._, *- *- *- f= ^j./j.(j.sh.lh.uf.Mf._j.:j.k.,k.'k.)k.!k.~k.{k.]k.^k./k.(k._k.:k.:k.l.,l.'l.pk.)l.!l.~l.Fk.lh.{l.]l.^l./l.(l._l.:l.m.,m.'m.)m.!m.~m.{m.]m.pk.Lk.^m./m.cf.(m._m.:m.n.,n.'n.q#.q#.q#.)n.!n.~n.{n.]n.q#.q#.^n./n.(n._n.:n.j.sh.sh.sh.sh.]m.%o.&o.*o.{j.=o.-o.0h.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh. l.;o.>o./, *- *- J= *- *- f= ,o.'o.7e )o.sh.!o.~o.{o.]o.^o./o.(o._o.:o.p.,p.'p.q#.q#.)p.#f.!p.~p.{p.]p.^p./p.(p._p.:p.q.,q.,q.'q.)q.!q.9o.z4. l.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.sh.0o.~q.{q.]q.^q./q.(q._q.:q.r.,r.'r.)r.!r.~r.{r.]r.^r./r.Am.sh.sh.Am.(r._r.:r.JE s.,s.'s.)s.!s.~s.{s.]s.^s./s.q#.q#.q#.(s._s.:s.t.Np.,t.'t.)t.!t.Cr.hr.>t.~t.{t.]t.^t./t.(t._t.hr.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.}j.:t.7e u.,u.'u.)u.!u.~u.{u.]u.Yl.^u./u.(u._u.:u.% v..v.+v.@v.#v.N7.N7.$v.%v.&v.dt.'0.)o.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.Zu.*v.)o.=v.-v.;v.>v.,v.'v.)v.!v.~v.{v.]v.^v./v.(v._v.:v.w.,w.'w.)w.!w.~w.{w.]w.^w./w.(w._w.:w.% vw.ww.xw.yw.zw.Aw.Aw.Bw.@v.Cw.dt.'0.Dw.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.*v.)o.fj.Ew.Fw.Gw.Hw.Iw.Jw.Kw.Lw.Mw.Nw.Ow.Pw.Qw.Rw.Sw.Tw.Uw.Vw.Ww.Xw.Yw.Zw.`w. x..x.+x.@x.#x.$x.%x.&x.*x.=x.-x.T. ;x.q#.q#.q#.>x.,x.qs.'x.)x.!x.~x.{x.]x.^x./x.(x._x.:x.y.,y.Aj.9w.cu.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.nm.)o.)o.,e.'y.<) *- v- v- v- *- ^j.)y.sh.)o.)o.nm.nm.nm.nm.nm.nm.nm.!y.du.'^.~y.", +"tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.:t.lh.{y.5% ]y.1& 1& 1& 1& ~6 ^y./y.(y._y.:y.z.,z.'z.)z.!z.~z.{z.]z.^z./z.(z._z.:z.% >% ~6 Sz.Tz.Uz.Vz.Wz.Xz.Xz.Yz._y.Zz.1y.4e.:t.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.`z. A..A.+A.@A.#A.$A.%A.ky.&A.*A.=A.-A.;A.>A.,A.'A.)A.ny.!A.~A.{A.py.]A.^A.5z./A.9v.9v.6z.(A._A.$x.:A.B.,B.'B.)B.4z.4z.!B.~B.{B.]B.^B./B.(B._B.:B.8z.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.)o.:t.sh.% >% >% =- 3B.4B.5B.C.,C.'C.)C.!C.~C.{C.]C.^C./C.(C._C.:C.D.,D.TC.'D.yB.'D.uy.)D.!D.~D.{D.]D.^D./D.(D._D.q#.q#.q#.:D.E.,E.'E.-E.yB.)E.!E.~E.{E.]E.^E./E.(E.`D.PD.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.JC._E.:E.c 6% 6% 6% 6% |E.1E.2E.QC.3E.4E.4E.5E.6E.7E.8E.0j.Nz.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.}E.aB.9E.0E.aE.bE.cE.dE.eE.fE.gE.hE.iE.jE.kE.lE.mE.nE.oE.pE.qE.rE.iB.sE.tE.aB.uy.uE.yB.yB.vE.wE.xE.yE.zE.AE.BE.CE.DE.q#.q#.q#.EE.FE.GE.HE.IE.JE.KE.LE.ME.NE.q#.q#.q#.gv.OE.PE.q#.q#.QE.RE.SE.TE.q#.q#.q#.UE.VE.WE.XE.YE.ZE.`E. F.q#.q#..F.+F.@F.#F.$F.%F.&F.*F.=F.-F.;F.>F.,F.'F.)F.!F.~F.{F.]F.^F./F.(F._F.:F.% 5% 6% 6% 6% h$.DF.EF.6E.FF.GF.GF.HF.IF.JF.SC.*l.YA.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.KF.LF.MF.NF.OF.PF.QF.0E.RF.SF.TF.UF.VF.WF.XF.YF.ZF.`F. G..G.+G.@G.-E.TC.#G.Nz.Nz.$G.%G.&G.*G.=G.-G.;G.>G.q#.q#.q#.q#.q#.q#.q#.,G.'G.)G.!G.~G.{G.]G.^G./G.(G._G.:G.XE.H.,H.'H.)H.-E.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.!H.~H.{H.v] *- v- v- /, v- v- ~~ ]H.Jd.^H.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.Nz.", +"Lf.Lf.Lf.Lf.Lf.Lf.Lf.Lf.Lf.Lf.Lf.JC.JC.)o./H.]y.7% 5% 5% 5% (H._H.:H.IF.I.,I.'I.)I.!I.~I.{I.]I.~I.^I./I.(I._I.:I.J.,J.'J.)J.!J.~J.{J.]J.^J./J.(J._J.:J.K.,K.'K.,H.)K.!K.~K.$G.$G.$G.$G.$G.$G.$G.$G.$G.BI.`u.{K.gn J= F' /, /, /, y; Q* CF.)o.JC.$G.$G.$G.$G.$G.$G.$G.$G.$G.$G.$G.$G.", +"^H.^H.^H.^H.^H.^H.^H.^H.^H.^H.^H.^H.BI.]K.^K.GI.8% 7% 7% 7% /K.(K._K.qm.:K.L.,L.'L.)L.!L.~L.{L.]L.^L./L.nK.nK.~K.(L._L.:L.M.,M.'M.)M.!M.~M.{M.]M.^M./M.(M._M.:M.N.,N.'N.pw.pw.pw.pw.pw.pw.pw.[E.[E.)o.)N./' v- /, /, /, v- /' )N.)o.[E.[E.pw.pw.pw.pw.pw.pw.pw.pw.pw.pw.pw.pw.", +"^H.^H.^H.^H.^H.^H.^H.^H.^H.^H.^H.^H.!H.}E.CF.|= 5% 8% 8% 8% +Z !N.~N.O.,O.DL.^H.^H.bN.^H. M.'O.)O.!O.~O.{O.]O.^O.+H./O.(O._O.:O.P.,P.'P.)P.!P.~P.{P.]P.^P./P.(P._P.:P.K.RP.SP.TP.UP.VP.WP. M.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.!H.XP.YP.rF.ZP.,N.RP.`P. Q..Q.PI.DO.+Q.@Q.#Q.$Q.%Q..N.[E.[E.[E.[E.[E.[E.BI.:t.HC.f= y; /, /, /, /, J= gn &Q.ja.qO.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.[E.", +"BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.qO.qL.Q.,Q.,Q.'Q.yO.)Q.!Q.3y.sO.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.~Q.{Q.]Q.{Q.^Q./Q.(Q._Q.:Q.R.,R.'R.+Q.)R.!R.~R.{R.]R.^R./R.(R._R.:R.S.,S.'S.)S.!S.~S.{S.]S.^S./S.(S._S.GQ.:S.T.,T.,T.'T.BR.)T.!Q.yB.$T.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.|R.!T.~T.BI.BI.{T.sO.]T.^T./T.(T.OR._T.NR.:T.U.,U.'U.)U.!U.~U.OS.LS.~T.{U.]U.^U./U.]h BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.BI.dR.eR.(U.gR._U.{T.:U.V.,V.'V.)V.!V.HU.$T.jU.~V.{V.]V.HU.$T.$T.$T.$T.$T.$T.HU.|U.^V./V.(V._V.:V.W.,W.'W.)W.!W.~W.-W.{W.]W.^W./W.(W._W.:W.X.,X.'X.)X.!X.~X.{X.]X.^X./X.(X._X.:X.Y.,Y.'Y.)Y.!Y.~Y.~Y.{Y.]Y.^Y./Y.ZJ.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.(Y._Y.:Y.;X.Z.,Z.'Z.)Z.FY.!Z.~Z.{Z.]Z.^Z.%Z.&Y.PW.-Y./Z.k( y; `.,`._Y.hZ.]X.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.ZV.]X.VX.YX.'`.)`.!`.wS.~`.{`.]`.hZ.]X.(Y.DO.^`./`.ZT.rX.(`.Ad._`.:`.F' ~~ ~~ +, +' +) +! +~ +{ +] +^ +/ +( +FY.#T.(Y.PW._ +: +< +[ +#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.#T.XY.} +| +1 +2 +3 +4 +5 +6 +7 +XY.yU.8 +9 +0 +a +b +yU.#T.c +Ro y; .+,.+'.+).+!.+~.+{.+].+^.+/.+(.+_.+:.+<.+[.+}.+|.+1.+2.+#T.sL.p`.< +3.+4.+( +p`.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.sL.[ +o +&Y.5.+6.+} +7.+8.+9.+0.+a.+[ +PW.b.+c.+d.+e.+f.+g.+D, h.+~~ ~~ |.V.+W.+Q +[`.Q +X.+Y.+Z.+U +Q +[`.Q +`.+ ++.+++++Q +z`.@++#++$++%++W +&++*++W +P`.o +=++-++;++>++,++'++(Y.Q`.)++!++~++{++]++^++/++(++_++:++<++[++{.+].+}++|++1++2++3++4++5++6++7++8++9++P`.p`.0++a++b++o +o +P`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.a.+c++d++1 +e++f++g++h++i++j++P`.a.+b +k++l++m++n++o++P= y; <) <) ~~ ~~ *Y.:`.p++q++j.+[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.[`.", +"r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++j.+(Z.s++t++{* u++v++w++x++y++z++z++A++B++C++D++8Q.(`.r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++E++F++G++H++I++J++K++L++M++L++N++O++P++Q++R++S++T++T++N++U++V++W++X++V +Y++Z++H++PW.r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++`++ @+.@++@+@@+#@+Z++r++Z++$@+%@+Z.+$@+Z++r++H++&@+*@+=@+-@+Z++H++;@+>@+,@+;@+'@+)@+!@+~@+{@+J +]@+^@+/@+(@+_@+:@+{@+` +<@+[@+}@+|@+1@+2@+3@+4@+5@+6@+7@+8@+9@+0@+a@+b@+c@+$C d@+e@+f@+g@+h@+i@+G++G++j@+k@+l@+m@+n@+G++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++H++o@+p`.p@+q@+r@+s@+t@+u@+v@+` +PW.H++w@+x@+y@+3K.z@+A@+#+J +H++(`.H++Y++,#+'#+)#+!#+~#+{#+]#+M@+^#+/#+(#+_#+:#+<#+Z++H++[#+}#+|#+1#+2#+3#+4#+5#+6#+7#+8#+9#+9@+0#+a#+b#+$C c#+d#+e#+T. f#+g#+h#+i#+G++j#+k#+l#+m#+N++o@+e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +^#+<@+n#+o#+p#+q#+r#+s#+[ +o@+H++N++t#+u#+v#+w#+x#+y#+z#+<) ~~ ~~ ~~ /' A#+B#+#T.(`.e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +e +", +"r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++C#+r++D#+E#+F#+G#+H#+I#+J#+K#+L#+L#+M#+= N#+O#+fQ.C#+r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++o@+^#+P#+Q#+P#+R#+S#+S#+T#+Y@+U#+V#+W#+W@+X#+X@+P#+E++Y@+Z++Y#+Z#+`#+ $+.$+Z++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++Z++r++e ++$+@$+#$+$$+r++%$+&$+*$+=$+-$+$$+r++r++Z++;$+>$+,$+Y++Z++'$+)$+!$+~$+{$+]$+^$+/$+'$+Z++.$+($+_$+:$+<$+[$+M@+Z++o@+}$+|$+1$+2$+3$+4$+5$+6$+7$+8$+9$+0$+0@+a$+b$+c$+d$+e$+f$+g$+h$+i$+j$+0#+k$+l$+m$+n$+H++H++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++H++o$+a.+p@+p$+q$+r$+s$+t$+[#+i#+r++i#+u$+v$+w$+x$+y$+<) <) <) <) i.+:`.z$+CV.D#+r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++r++", +"(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.D#+!H.$e.4& A$+B$+C$+D$+E$+F$+F$+G$+D$+H$+I$+HU.j.+(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.J$+K$+L$+M$+N$+O$+P$+Q$+R$+S$+T$+C#+U$+V$+W$+X$+X$+Y$+Z$+X$+`$+ %+.%++%+@%+#%+$%+%%+(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.&%+-@+*%+=%+-%+;%+C#+%%+o@+>%+,%+'%+&$+&%+(`.%%+)%+!%+~%+{%+]%+^%+%%+/%+(%+_%+:%+<%+[%+%%+(`.C#+}%+|%+1%+2%+3%+4%+5%+&%+6%+7%+8%+9%+0%+a%+b%+c%+d%+e%+f%+g%+h%+i%+j%+k%+l%+m%+n%+o%+p%+q%+r%+s%+t%+u%+v%+w%+x%+M$+(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`.(`. %+y%+z%+A%+B%+C%+D%+E%+F%+6%+(`.M$+G%+H%+I%+J%+K%+L%+(, (, (, &+,&+'&+)&+&%+!&+~&+{&+]&+^&+&%+j.+%%+C#+%e./&+(&+_&+:&+j.+<&+[&+}&+|&+1&+Y +2&+3&+<&+4&+5&+6&+7&+8&+9&+0&+&%+6%+a&+b&+c&+d&+e&+f&+g&+h&+i&+j&+k&+l&+m&+n&+o&+p&+q&+r&+s&+t&+u&+v&+^%+w&+x&+y&+z&+L$+A&+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+%%+A&+^#+B&+C&+r@+D&+E&+F&+G&+%%+D#+]h H&+I&+J&+K&+L&+M&+<) <) /' N&+O&+ZV.D#+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+", +")&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+D#+C#+P&+Vk.D@+Q&+R&+S&+T&+U&+U&+V&+W&+X&+Y&+&R.D#+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+&%+Z&+%&+%&+`&+ *+`$+.*++*+@*+@*+#*+$*+W$+%*+&*+$&+**+=*+-*+;*+>*+-&+,*+&%+&%+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+C#+'*+)*+!*+~*+)*+:&+)&+&%+{*+]*+^*+/*+&%+&%+(*+:&+_*+:*+<*+[*+&%+)&+:&+}*+|*+1*+2*+3*+4*+5*+6*+7#+7*+8*+9*+0*+a*+(`.A&+&%+b*+c*+d*+e*+f*+g*+h*+i*+j*+k*+l*+m*+n*+o*+p*+q*+r*+s*+t*+u*+v*+&&+w*+x*+y*+z*+%%+&%+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+<&+A*+B*+C*+D*+E*+F*+G*+H*+<&+I*+J*+K*+L*+M*+N*+O*+L%+(, ~~ :`.P*+Q*+P&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+)&+", +"j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+R*+M%+KC.>Y.S*+T*+U*+V*+W*+W*+X*+U*+Y*+Z*+rX.}`.j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+`*+ =+.=++=+@=+#&+#=+$=+%=+&=+*=+==+-=+;=+>=+,=+'=+$=+)=+!=+~=+{=+]=+^=+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+D#+/=+(=+_=+:=+<=+[=+}=+j.+/=+|=+1=+2=+3=+D#+}*+4=+/=+`*+5=+6=+7=+D#+]=+[*+8=+9=+0=+a=+b=+c=+d=+e=+f=+g=+9*+h=+i=+j=+k=+(*+^=+l=+m=+n=+o=+p=+q=+r=+s=+t=+u=+v=+w=+x=+y=+z=+A=+B=+C=+D=+E=+F=+G=+H=+I=+Z&+`*+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+`*+J=+P$+B&+K=+e.+L=+M=+J$+J=+R*+(Z.N=+O=+P=+Q=+R=+S=+T=+~~ )~ U=+CV.V=+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+j.+", +"}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.P&+r++W=+X=+Y=+Z=+5( `=+ -+ -+.-+5( +-+@-+^X.P&+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.J=+J=+J=+]=+ =+#-+$-+%-+ =+&-+*-+=-+--+;-+>-+,-+'-+)-+!-+~-+{-+]-+^-+,-+]=+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.]=+/-+(-+_-+:-+<-+[-+}-+}`.|-+1-+2-+FJ 3-+4-+5-+6-+D#+7-+8-+9-+0-+a-+/=+^=+b-+c-+d-+o@+e-+/=+f-+g-+h-+i-+j-+:%+k-+l-+m-+d=+n-+o-+p-+q-+r-+s-+t-+u-+v-+w-+x-+y-+z-+A-+B-+C-+D-+E-+F-+G-+H-+I-+J-+K-+L-+M-+J=+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.#-+N-+c&+O-+P-+Q-+R-+S-+T-+Q`.W=+U-+V-+W-+X-+Y-+Z-+`-+/' (, ;+ZV.R*+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.", +"}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.D#+I*+.;++;+@;+#;+$;+%;+tL tL &;+$;+*;+I$+P`.P&+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`./=+@=+=;+-;+;;+>;+h&++=+h&+,;++=+>-+';+;;+)-+);+!-+,-+!;+~;+{-+{;+/=+^-+/=+J=+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.];+^;+/;+(;+_;+:;+}`.}`.|-+<;+[;+};+|;+1;+2;+3;+4;+5;+6;+7;+8;+a-+P&+/=+9;+0;+a;+b;+c;+d;+e;+f;+g;+h;+i;+j;+k;+l;+m;+n;+o;+p;+q;+r;+s;+t;+u;+v;+w;+n;+x;+y;+z;+A;+B;+C;+D;+E;+F;+G;+H;+I;+J;+K;+#-+L;+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.]=+L;+6%+B&+M;+N;+O;+P;+Q;+vE.R;+zF L%+S;+T;+U;+V;+W;+X;+Y;+ZV.P&+P&+}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.}`.", +"P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+I*+[`.Z;+`;+ >+.>++>+@>+@>+#>+$>+%>+&>+fQ.V=+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+*>+*>+=>+->+;>+>>+,>+'>+)>+)>+->+)>+!>+~>+{>+P&+]>+^>+/>+(>+b-+*>+_>+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+:>+<>+[>+}>+|>+1>+P&+P&+P&+_>+2>+3>+4>+5>+6>+7>+8>+9>+0>+a>+*>+P&+P&+P&+_>+m-+b>+c>+d>+e>+f>+g>+h>+i>+_*+j>+k>+l>+m>+n>+o>+p>+q>+r>+s>+t>+u>+v>+w>+x>+y>+z>+A>+B>+C>+D>+E>+F>+G>+H>+I>+J>+K>+L>+_>+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+;>+M>+N>+O>+P>+Q>+R>+S>+qH.T>+zF U>+V>+W>+X>+Y>+Z>+`>+ ,+f.+.,+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+P&+", +"I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+EY.+,+@,+#,+$,+%,+%,+&,+*,+=,+-,+ZG.;,+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+>,+,,+>,+,,+',+),+!,+',+~,+S>+S>+S>+!,+!,+{,+',+],+^,+/,+(,+1>+,,+*>+>,+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+_,+:,+<,+[,+},+|,+_,+I*+I*+I*+1>+I*+1,+2,+3,+4,+5,+6,+7,+R*+8,+9,+0,+,,+I*+a,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r,+s,+t,+u,+v,+w,+x,+y,+z,+A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L,+M,+F,+,,+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+,,+>,+#-+B&+N,+O,+P,+Q,+R,+S,+D! /' y#+T,+U,+V,+W,+X,+Y,+Z,+;,+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+", +"I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+;,+`,+ '+.'++'+@'+#'+#'+$'+%'+&'+*'+='+&%+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+*>+F,+-'+;'+>'+)>+,'+''+)'+',+~>+>'+-'+!'+~'+{'+^>+]'+^'+),+/'+F,+*>+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+('+_'+:'+<'+['+}'+1>+,,+I*+I*+R*+,,+a,+1>+|'+1'+2'+3'+4'+5'+6'+7'+8'+L>+*>+,,+9'+0'+yY.a'+b'+c'+d'+e'+a,+_>+,,+f'+g'+h'+i'+j'+F,+`*+k'+l'+m'+n'+o'+p'+q'+r'+x=+s'+t'+x=+u'+v'+w'+x'+y'+z'+A'+B'+),+,,+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+>,+F,+C'+N>+A%+D'+E'+F'+G'+H'+/' D, I'+J'+K'+L'+M'+N'+I*+P&+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+", +"I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+;,+O'+P'+Q'+R'+S'+T'+T'+U'+V'+W'+X'+Y'+tZ.Z'+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+`'+ )+.)++)+@)+ )+#)+$)+ )+%)+&)+*)+`'+=)+-)+;)+>)+.)+,)+')+))+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+!)+~)+{)+])+^)+/)+E,+E,+I*+I*+I*+I*+I*+()+_)+:)+<)+[)+})+|)+1)+2)+3)+4)+5)+')+6)+7)+8)+}X.9)+0)+a)+b)+c)+()+d)+e)+f)+g)+h)+4)+()+`'+i)+j)+k)+l)+m)+n)+o)+p)+q)+r)+s)+D>+t)+u)+v)+w)+x)+y)+z)+A)+B)+()+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+))+o)+;>+C)+D)+E)+F)+G)+H)+(< k( k( I)+J)+K)+L)+M)+N)++)+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+I*+", +"V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+O)+P)+Q)+R)+S)+T)+T)+U)+R'+V)+W)+X)+Y)+I*+;,+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+))+')+')+')+')+()++)+Z)+Z)++)+`)+ !++)+.!++!+})+@!+')+()+')+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+V=+()+#!+$!+%!+&!+/)+()+V=+V=+V=+V=+V=+V=+')+5)+*!+=!+-!+;!+>!+,!+'!+)!+!!+~!+{!+_)+]!+^!+/!+(!+_!+:!+~+,~+'~+)~+!~+~~+{~+]~+^~+*!+/~+(~+_~+:~+n-+<~+[~+}~+|~+1~+2~+3~+4~+5~+6~+7~+8~+9~+0~+_,+a~+b~+c~+q!+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+()+o)+,-+d~+e~+f~+g~+h~+i~+Vq D, j~+k~+l~+m~+n~+o~+p~+.)+o)+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+", +"q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+{!+r~+s~+t~+u~+v~+v~+w~+R)+x~+y~+_s z~+/-+Z'+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+A~+A~+B~+C~+D~+E~+F~+G~+H~+I~+J~+K~+L~+A~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+M~+N~+O~+P~+Q~+q~+q~+q~+q~+q~+q~+q~+q~+R~+S~+T~+U~+V~+W~+X~+Y~+Z~+`~+ {+.{++{+@{+#{+${+%{+&{+_e.*{+={+-'+-{+;{+>{+,{+'{+){+!{+~{+{{+]{+A~+^{+/{+({+Q;+_{+:{+<{+[{+}{+|{+1{+2{+3{+4{+V=+5{+6{+7{+8{+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+9{+0{+a{+b{+c{+d{+e{+f{+g{+k( k( (< h{+i{+j{+k{+ =+l{+^{+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+q~+", +";,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+Z'+J~+r~+m{+n{+o{+p{+p{+j{.q{+r{+y~+s{+t{+u{+D#+Z'+.,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+^{+B~+A~+v{+B~+K~+w{+x{+y{+z{+A{+B{+R~+L~+A~+B~+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+q~+6U.C{+D{+E{+F{+q~+q~+;,+;,+;,+;,+;,+A~+A~+y4.G{+H{+I{+J{+*!+K{+R~+L{+M{+N{+O{+P{+Q{+R{+S{+T{+9{+9{+9{+U{+V{+W{+X{+Y{+Z{+`{+ ]+.]++]+9{+B~+l{+@]+#]+9{+x{+x{+x{+x{+$]+$]+%]+&]+*]+=]+-]+;]+>]+V=+B~+A~+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+^{+^{+,]+i#+']+)]+!]+~]+{]+Rl k3 !~ /' ]]+^]+/]+(]+_]+:]+x{+l{+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+;,+", +"Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+<]+r~+[]+}]+|]+1]+1]+2]+1]+3]+4]+5]+0p 6]+7]+8]+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+l{+Z'+R~+9]+0]+a]+T. b]+c]+l{+8{+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+8{+d]+e]+f]+g]+h]+i]+Z'+Z'+Z'+Z'+Z'+Z'+j]+8{+k]+l]+m]+n]+o]+B)+p]+Z'+q]+r]+s]+t]+~!+<]+u]+v]+w]+x]+y]+8{+R~+z]+A]+B]+C]+D]+;S E]+F]+R~+j]+Z'+Z'+w{+8{+Z'+Z'+Z'+Z'+Z'+Z'+Z'+R~+G]+H]+I]+J]+K]+L]+M]+={+8{+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+8]+zZ.N]+O]+P]+Q]+R]+S]+T]+!i D, #{ U]+V]+W]+X]+Y]+Z]+`]+A~+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+Z'+", +" ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+.^++^+@^+#^+$^+%^+%^+&^+n{+*^+=^+-^+;^+2% >^+E,+,^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+'^+ ^+)^+!^+~^+{^+]^+^^+/^+(^+'^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+_^+:^+<^+[^+}^+|^+1^+'^+ ^+ ^+ ^+ ^+ ^+)^+2^+3^+4^+5^+6^+B~+ ^+'^+ ^+)^+7^+8^+9^+'^+'^+0^+a^+b^+c^+d^+9j.)^+7^+e^+f^+g^+h^+i^+j^+k^+l^+'^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+'^+m^+n^+o^+p^+q^+r^+s^+t^+u^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+Z'+v^+^X.w^+X;+x^+y^+z^+A^+B^+g{+C^+yr D^+YR.E^+F^+G^+H^+I^+J^+)^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+ ^+", +"j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+,^+.^++^+K^+L^+M^+N^+N^+O^+N^+P^+Q^+R^+-^+S^+BF.T^+v^+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+'^+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+2^+U^+V^+W^+X^+Y^+u^+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+2^+Z^+`^+ /+./++/+@/+_^+j]+j]+j]+j]+j]+j]+,]+_^+#/+$/+%/+&/+*/+2^+j]+'^+,]+u^+!^+,]+=/+-/+;/+T. >/+,/+'/+)/+!/+~/+{/+]/+^/+//+(/+_/+=/+'^+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+j]+'^+2^+:/+(+u^+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+", +"B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+,(+'(+)(+!(+~(+L^+L^+{(+L^+](+^(+/(+-^+_* ((+_(+/-+:(+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+<(+<(+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+[(+<(+[(+}(+|(+1(+B#+<(+[(+B#+B#+B#+B#+B#+B#+B#+B#+2(+3(+, +4(+5(+<(+6(+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+8]+7(+8(+9(+0(+a(+b(+[(+B#+B#+B#+B#+B#+B#+B#+B#+b(+c(+d(+e(+,^+[(+<(+B#+B#+B#+B#+B#+[(+<(+[(+f(+t^+g(+h(+i(+j(+k(+XW.l(+m(+n(+o(+p(+b(+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+q(+r(+s(+t(+u(+v(+w(+x(+v^+<(+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+,^+y(+tZ.z(+yr D, g{+A(+B(+C(+D(+E(+F(+G(+M!+H(+,^+[(+2(+I(+J(+K(+L(+M(+N(+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+B#+", +"8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+v^+O(+P(+Q(+R(+S(+j/+j/+T(+j/+U(+V(+W(+f% @^ X(+Y(+q~+2/+v^+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+Z(+`(+`(+`(+ _+<(+8]+8]+8]+<(+b(+b(+b(+._+._+8]++_+@_+#_+$_+%_+Z(+b(+8]+8]+8]+8]+8]+8]+8]+8]+b(+&_+*_+=_+g(+b(+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+-_+B#+;_+>_+,_+'_+-_+8]+8]+8]+8]+8]+8]+8]+8]+8]+b(+)_+!_+~_+{_+]_+b(+8]+8]+8]+8]+8]+8]+8]+b(+^_+q(+b(+q(+Z(+/_+<(+(_+__+:_+<_+[_+}_+._+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+b(+|_+1_+=]+2_+3_+4_+5_+6_+b(+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+2/+8]+7_+[8 P= k( k3 7f ~J 8_+9_+0_+a_+b_+:&+7_+8]+8]+<(+M(+c_+d_+e_+f_+2(+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+8]+", +"v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+2/+O(+P(+g_+h_+i_+!(+!(+j_+!(+k_+l_+m_+_* _* )* f% n_+o_+2/+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+Z(+`(+p_+q_+r_+s_+b(+._+._+b(+v^+t_+u_+v_+w_+x_+y_+z_+FJ A_+B_+C_+D_+E_+2/+v^+v^+v^+v^+v^+v^+2/+Z(+F_+G_+o!+H_+q(+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+b(+I_+J_+9(+nT.K_+L_+v^+v^+v^+v^+v^+v^+v^+v^+v^+2/+b(+M_+N_+O_+P_+._+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+2/+q(+Q_+R_+S_+T_+U_+V_+W_+b(+2/+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+b(+Z(+p/+X_+Y_+Z_+`_+ :+|_+q(+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+.:++:+@:+pd D, D! D! Rl X,+#:+$:+%:+&:+*:+=:+v^+v^+v^+v^+-:+;:+>:+,:+':+):+2(+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+v^+", +"H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+!:+~:+{:+$[.]:+^:+^:+/:+R(+(:+_:+::+/(+)* :* /* <:+];+[:+2/+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+&(+}:+|:+1:+2:+3:+4:+5:+6:+7:+8:+&(+9:+0:+a:+b:+c:+d:+e:+f:+g:+h:+i:+j:+k:+l:+H(+H(+H(+H(+H(+H(+l:+m:+n:+o:+p:+q:+r:+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+2/+s:+t:+u:+v:+w:+k:+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+r:+x:+y:+z:+v^+&(+l:+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+&(+l:+A:+=:+B:+C:+D:+2/+E:+l:+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+l:+F:+G:+H:+I:+J:+K:+L:+M:+F:+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+7_+j]+N:+F' E' !~ !~ !~ !~ H) z#+O:+P:+Q:+R:+H(+l:+H(+H(+H(+l:+S:+T:+d/+U:+V:+=:+l:+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+H(+", +"k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+7_+W:+~:+X:+Y:+Z:+`:+`:+ <+h_+.<++<+@<+)* }& }& }& :* #<+3)+7_+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+}:+$<+%<+&<+'!+*<+=<+-<+;<+><+,<+'<+)<+!<+~<+{<+]<+^<+/<+(<+_<+:<+<<+[<+}<+7_+k:+k:+k:+k:+k:+k:+r:+|<+1<+2<+3<+m:+r:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+:(+4<+5<+6<+7<+8<+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+r:+m:+9<+0<+a<+b<+c<+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+c<+d<+e<+f<+g<+m:+r:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+}:+h<+i<+j<+k<+l<+m<+3(+}:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+2/+n<+%(+o<+pd D, D! !~ D! D! Rl X,+p<+q<+r<+s<+t<+r:+k:+k:+k:+k:+=:+u<+v<+w<+x<+y<+=:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+k:+", +"7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+!:+~:+z<+A<+B<+C<+C<+D<+$[.E<+F<+G<+}& :* :* e& H<+Y(+2/+H(+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+I<+J<+K<+L<+M<+N<+O<+P<+Q<+R<+S<+T<+U<+V<+W<+X<+Y<+Z<+`<+ [+.[++[+@[+#[+$[+c<+H(+7_+7_+7_+7_+7_+r:+%[+&[+*[+=[+&(+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+r:+:(+-[+;[+v:+7<+8<+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+r:+>[+,[+'[+x:+c<+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+}:+)[+![+~[+{[+b<+c<+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+}:+][+^[+/[+([+_[+:[+<[+r:+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+.:+E,+[[+}[+D! !~ !~ D! D! So k( u] |[+1[+2[+3[+4[+F:+7_+7_+7_+7_+l:+5[+6[+7[+8[+9[+7_+H(+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+", +"[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+0[+a[+b[+c[+d[+e[+e[+f[+Y:+g[+h[+G<+::+:* e& e& 5$ i[+j[+o_+n<+7_+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+k[+l[+m[+n[+o[+p[+q[+r[+s[+t[+u[+v[+w[+x[+y[+z[+A[+A[+B[+C[+D[+E[+F[+G[+H[+I[+z[+J[+[:+[:+[:+[:+[:+J[+K[+L[+M[+N[+J[+k[+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+k[+=[+O[+P[+Q[+R[+S[+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+l[+T[+U[+z:+7_+V[+J[+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+J[+W[+X[+~[+Y[+Z[+l[+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+J[+`[+ }+.}++}+@}+#}+$}+%}+J[+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+7_+&}+)&+*}+=}+D, D! D! D! !~ D! #_ -}+;}+st.>}+,}+'}+V[+k[+[:+[:+[:+V[+)}+!}+~}+{}+]}+^}+)}+V[+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+[:+", +"7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+/}+(}+_}+:}+<}+[}+[}+}}+A<+|}+1}+2}+:* e& F* F* F* 5$ 3}+4}+j]+5}+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+V[+J[+6}+7}+8}+9}+0}+a}+b}+c}+d}+5(+e}+A[+f}+6}+=[+J[+J[+=[+l[+J[+g}+h}+i}+j}+k}+l}+.:+=[+7_+7_+7_+7_+J[+m}+n}+o}+K[+J[+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+=[+=[+p}+q}+r}+s}+S[+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+J[+t}+u}+v}+w}+x}+J[+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+J[+y}+z}+A}+B}+Z[+l[+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+J[+V[+F:+C}+D}+E}+F}+G}+H}+J[+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+n<+1>+I}+P= !~ !~ !~ D! D! D! k( h{+a/+o_+J}+K}+L}+M}+N}+)}+7_+7_+7_+7_+k[+O}+P}+Q}+R}+S}+T}+k[+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+7_+", +".:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+U}+a[+V}+T. W}+X}+X}+Y}+c[+Z}+1}+`}+e& F* F* 5$ 5$ V* F* |+n<+7_+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+l[+V[+f}+.|++|+@|+#|+$|+%|+&|+}_+*|+l[+l[+J[+.:+.:+.:+.:+.:+.:+.:+l[+=|+-|+;|+>|+,|+'|+l[+.:+.:+.:+=|+D[+)|+!|+~|+{|+l[+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+]|+^|+/|+(|+l[+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+g}+_|+:|+<|+l[+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+V[+I<+[|+}|+||+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+=|+1|+2|+3|+4|+K:+5|+6|+=|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+n<+q~+Y;+yr k( !~ !~ D! !~ !~ k( u] 7|+d=+8|+9|+0|+a|+b|+c|+.:+.:+.:+.:+.:+d|+e|+f|+g|+h|+e|+i|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+", +"n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+j|+k|+l|+T. m|+n|+n|+o|+:}+p|+q|+`}+F* 5$ 5$ 5$ V* V* Y& Ig KC.r|+&}+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+5}+s|+t|+u|+v|+w|+x|+y|+z|+A|+B|+C|+s|+s|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+s|+n<+t}+D|+E|+F|+G|+s|+H|+*|+I|+J|+K|+L|+M|+T[+N|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+O|+P|+Q|+XB.R|+O|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+S|+T|+U|+z:+.:+t|+s|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+s|+N[+V|+W|+X|+Y|+s|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+N|+Z|+`|+ 1+.1++1+@1+#1+N|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+$1+/-+%1+=}+!~ H) D! D! !~ D! D, =}+&1+];+*1+n<+2/+=1+-1+;1+>1+s|+s|+n<+n<+n<+,1+n<+l:+'1+k{+)1+!1+,1+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+", +".:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+O|+~1+k|+{1+T. ]1+^1+^1+/1+T. (1+_1++l 5$ 5$ V* V* i% i% Y& g% :1+<1+r|+&}+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+O|+.:+s|+t|+e}+[1+}1+|1+11+21+31+41+C|+N|+s|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+s|+51+r:+61+71+81+91+01+a1+b1+c1+d1+e1+f1+g1+I|+s|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+s|+h1+i1+j1+k1+l1+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+s|+m1+n1+o1+p1+q1+s|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+S|+K[+r1+s1+t1+N[+s|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+u1+v1+w1+x1+y1+z1+A1+B1+s|+O|+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+.:+O|+n<+n<+7_+C1+u] !~ H) H) D! D! !~ !~ D! D1+q~+E1+F1+G1+H1+I1+J1+K1+L1+O|+s|+.:+.:+O|+d|+M1+N1+g|+O1+P1+d|+O|+.:+.:+.:+.:+.:+.:+.:+.:+.:+", +"n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+j|+Q1+R1+T. S1+rb rb 4H Uc T1+U1+V1+|n i% V* i% i% Y& Y& g% Y& |+W1+O|+X1+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+S|+t|+u|+Y1+Z1+`1+ 2+.2+{|++2+@2+H|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+S|+#2+$2+%2+&2+*2+=2+-2+;2+>2+,2+'2+)2+m1+S|+X1+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+!2+~2+{2+]2+^2+/2+(2+!2+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+X1+m}+_|+_2+T|+!2+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+H|+:2+<2+[2+}2+:2+H|+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+S|+|2+12+22+32+42+52+O|+n<+X1+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+n<+62+72+82+}q k( H) D! D! H) H) k( }q 92+72+62+n<+X1+02+a2+b2+c2+%,+d2+e2+f2+n<+n<+n<+n<+g2+h2+i2+j2+k2+l2+s|+n<+n<+n<+n<+n<+n<+n<+n<+n<+", +"&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+m2+n2+o2+T. p2+|e.|e.q2+rb r2+s2+s|+-% 5$ Y& Y& Y& g% g% <* )% t2+P9.2/+E1+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+g2+u2+v2+w2+x2+y2+z2+A2+0K B2+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+@2+C2+D2+E2+F2+G2+H2+I2+l[+J2+K2+L2+M2+g2+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+E1+B2+~2+N2+O2+P2+Q2+R2+S2+E1+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+B2+T2+U2+V2+n<+u2+g2+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+g2+W2+X2+~[+Y2+T2+B2+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+g2+&}+Z2+`2+ 3+.3++3+@3+#3+g2+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+&}+E1+.:+$3+%3+EC 1g D! H) H) D! D! #{ i.+&3+7_+E1+g2+*3+=3+-3+;3+>3+,3+'3+)3+!3+&}+&}+&}+&}+~3+{3+]3+^3+/3+(3+~3+&}+&}+&}+&}+&}+&}+&}+&}+&}+", +"X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+_3+n2+:3+Uc <3+[3+[3+}3+;S |3+13+23+33+5$ h% g% g% g% <* <* )% %& O, 43+L_+53+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+B2+u2+63+73+83+93+03+A2+a3+b3+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+c3+d3+e3+f3+g3+h3+i3+j3+k3+{|+l3+X1+g2+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+m3+n3+o3+p3+q3+r3+s3+m3+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+B2+63+t3+u3+v3+63+B2+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+g2+w3+x3+y3+z3+A3+B2+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+B3+C3+D3+E3+F3+K:+G3+H3+B2+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+X1+I3+J3+K3+&a k( H) D! H) D! H) k( &a K3+72+W1+X1+g2+B2+|2+L3+M3+N3+O3+P3+Q3+R3+X1+X1+X1+X1+X1+E1+S3+T3+U3+V3+W3+g2+X1+X1+X1+X1+X1+X1+X1+X1+", +"X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+c3+Y3+Z3+hk `3+q}.q}. 4+^V .4++4+l[+L_+@4+#4+p* <* <* )% )% %& $4+%4+.& &4+O|+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+g2+*4+=4+-4+;4+>4+,4+'4+m3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+B2+)4+!4+~4+{4+]4+^4+c3+X3+/4+(4+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+m3+_4+:4+<4+[4+}4+Y|+|4+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+)4+14+24+34+44+E1+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+E1+B2+54+64+g2+E1+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+/4+74+84+94+04+a4+b4+c4+/4+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+62+k:+&3+3| E' D! D! H) H) H) !~ )~ d4+I3+X1+X3+X3+X3+B3+e4+f4+g4+h4+i4+j4+k4+l4+X3+X3+X3+X3+X3+m4+n4+o4+p4+q4+r4+B3+X3+X3+X3+X3+X3+X3+X3+X3+", +"$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+s4+t4+u4+;S v4+w4+w4+x4+2# y4+z4+J[+53+53+A4+B4+)% )% )% %& %& -- _; ^b P9..:+53+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+k3+k3+C4+D4+E4+F4+G4+H4+I4+J4+53+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+K4+k3+63+1H.L4+M4+k3+K4+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+k3+N4+O4+P4+Q4+J4+K4+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+J4+R4+S4+T4+U4+V4+k3+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+53+k3+W4+X4+Y4+Z4+*4+k3+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+`4+ 5+.5++5+@5+#5+$5+%5+&5+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+$1+53+W1+o_+*5+pd k( H) H) H) D! H) }[+#: 82+1>+=5+E1+$1+$1+K4+`4+-5+;5+>5+,5+'5+)5+!5+~5+$1+$1+$1+$1+$1+`4+{5+]5+^5+/5+(5+~5+$1+$1+$1+$1+$1+$1+$1+", +"X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+c3+_5+:5+<5+[5+}5+}5+|5+15+25+35+c<+I3+S[+&3+<* )% %& %& -- -- _; _; r* %4+45+8<+W1+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+J4+J4+55+65+75+85+95+05+a5+J4+J4+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+J4+J4+b5+c5+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+d5+e5+f5+g5+|4+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+h5+i5+j5+T. k5+l5+m5+c5+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+n5+o5+p5+q5+r5+s5+J4+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+J4+t5+u5+v5+w5+x5+y5+z5+b5+k3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+X3+A5+B5+o<+C5+k( H) H) D! H) H) !~ yr D5+L_+W1+53+X3+X3+X3+X3+b5+&5+E5+F5+G5+H5+I5+J5+&5+X3+X3+X3+X3+X3+k3+K5+L5+M5+N5+{3+`4+X3+X3+X3+X3+X3+X3+X3+", +"53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+62+h5+O5+P5+Q5+R5+S5+S5+T5+U5+V5+13+l[+W5+W1+8<+X5+B4+u- -- -- _; _; y- !% I; @* Y5+X1+W1+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+62+J4+a5+Z5+`5+ 6+.6++6+@6+J4+62+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+62+62+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+62+62+#6+$6+%6+&6+J4+53+53+53+53+53+53+53+53+53+53+53+53+53+62+*6+=6+-6+;6+>6+,6+'6+J4+62+53+53+53+53+53+53+53+53+53+53+53+c5+)6+!6+~6+{6+]6+c5+53+53+53+53+53+53+53+53+53+53+53+53+53+62+62+^6+/6+(6+_6+:6+u5+<6+62+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+53+62+53+&4+B5+[6+yr !~ D! H) H) H) D! D! 1g )~ }6+r|+=5+53+53+53+53+53+53+53+W5+|6+16+26+36+M}+46+`4+53+53+53+53+53+56+66+76+86+96+06+`4+53+53+53+53+53+53+", +"W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+a6+b6+c6+FJ d6+e6+e6+f6+g6+h6+i6+l[+I3+W1+W1+E1+Kc <* _; _; y- y- !% !% W* j6+k6+X3+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W5+l6+m6+n6+o6+p6+q6+r6+s6+62+W5+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+62+t6+u6+%6+v6+w6+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+x6+y6+z6+A6+B6+C6+55+D6+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+l6+E6+F6+G6+H6+)6+l6+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+D6+I6+J6+K6+L6+M6+N6+O6+l6+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+W1+62+&4+3)+}6+:`.E' D! H) D! D! H) H) k( =}+P6+o_+&4+W1+W1+W1+W1+W1+W1+W1+W1+W1+56+Q6+R6+S6+T6+g1+U6+W5+W1+W1+W1+W1+W5+V6+W6+X6+Y6+Z6+W1+W5+W1+W1+W1+W1+W1+", +"w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+`6+ 7+.7+!1.+7+@7+@7+#7+$7+%7+&7+l1+I3+w6+I3+S2+*7+y- _; y- y- !% !% W* W* X& j6+=7+-7+I3+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+l6+l6+;7+>7+,7+'7+)7+!7+~7+{7+l6+62+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+]7+u6+f5+^7+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+l6+;5+/7+(7+_7+:7+<7+[7+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+l6+}7+|7+17+27+37+l6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+a6+47+57+94+67+77+87+97+a6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+w6+62+A5+8<+07+a7+P= !~ H) D! H) H) D! D! H) H) b7+=[+A5+w6+w6+w6+w6+w6+w6+w6+w6+w6+l6+l6+W3+c7+d7+e7+f7+*6+w6+w6+w6+w6+w6+|6+g7+h7+i7+j7+k7+56+w6+w6+w6+w6+w6+", +"I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+l7+m7+n7+o7+p7+q7+q7+r7+s7+t7+u7+S|+=5+I3+W1+=5+O|+v7+%4+!% !% W* W* @* @* X& X& :; w7+X3+=5+W1+I3+I3+I3+I3+I3+I3+I3+I3+I3+W1+I3+l6+;7+x7+y7+z7+A7+B7+C7+D7+I3+W1+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+E7+u6+f5+v6+l6+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+W1+I3+F7+G7+H7+I7+J7+x6+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+W1+D7+K7+L7+M7+F7+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+D6+gU.N7+O7+P7+Q7+R7+97+x6+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+W1+A5+X1+S7+T7+zF }[+H) D! H) H) D! H) k( }q U7+V7+W7+W1+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+X7+Y7+Z7+`7+ 8+.8++8+D6+I3+I3+I3+I3+|6+@8+#8+$8+%8+&8+*8+=8+I3+I3+I3+I3+", +"=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+-8+;8+>8+,8+'8+)8+)8+!8+~8+{8+]8+!2+A5+=5+=5+=5+A5+X3+^8+/8+1% W* @* @* X& X& [= (8+k6+I3+I3+A5+=5+=5+=5+=5+=5+=5+=5+=5+=5+_8+_8+:8+<8+[8+}8+|8+18+28+F7+_8+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+38+48+u6+58+68+38+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+78+-8+88+98+08+a8+b8+_8+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+_8+c8+d8+e8+f8+g8+_8+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+_8+h8+i8+j8+k8+0I l8+m8+_8+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+&4+W1+X3+n8+yr k( H) D! H) H) D! H) #_ &a &1+-_+&4+A5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+=5+o8+p8+(5+q8+r8+s8+t8+A5+o8+=5+=5+=5+=5+u8+v8+w8+x8+y8+z8+f7+_8+78+=5+=5+", +"I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+A8+B8+C8+D8+E8+A6+A6+F8+G8+H8+]8+!2+A5+I3+I3+I3+A5+w6+I8+[= !% @* @* X& X& :; j% [& (8+J8+S2+A5+I3+I3+I3+I3+I3+I3+I3+I3+_8+_8+K8+L8+M8+N8+O8+P8+Q8+s6+R8+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+38+38+48+S8+58+T8+38+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+_8+g8+U8+V8+W8+X8+R8+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+Y8+Z8+`8+ 9+.9++9+Y8+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+38+_8+gU.@9+#9+$9+%9+&9+h8+_8+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+A5+A5+L_+*9+u[ k( H) D! H) H) D! H) k( #: X/+I3+62+A5+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+I3+=8+=9+-9+;9+>9+,9+'9+)9+I3+I3+I3+I3+o8+!9+~9+{9+]9+^9+/9+(9+p8+I3+I3+", +"A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+_9+:9+<9+)8+[9+}9+}9+|9+19+29+39+B2+W7+A5+A5+A5+A5+W7+X3+43+I; X& X& :; :; j% j% [& H; [& 49+62+&4+A5+A5+A5+A5+A5+A5+A5+_8+59+69+79+89+99+09+a9+b9+c9+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+d9+e9+f9+g9+R8+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+s6+h9+i9+j9+c9+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+c9+k9+l9+m9+n9+Z8+c9+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+c9+o9+p9+q9+r9+s9+t9+u.+c9+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+I8+r|+u9+&a k( H) D! H) H) D! H) }[+zF v9+w9+X1+x9+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+y9+z9+A9+B9+C9+D9+E9+y9+A5+A5+A5+F9+Y7+G9+H9+I9+J9+K9+L9+M9+p8+A5+", +"W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+28+N9+O9+A6+P9+S^ S^ Q9+]( R9+S9+m3+W7+W7+W7+W7+W7+W7+W7+|4+^K..8 j% :; j% j% [& H; }> K> T9+W7+A5+W7+W7+W7+W7+W7+W7+U9+k9+V9+W9+X9+Y9+Z9+`9+ 0+U9+.0+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7++0+@0+e9+f9+#0++0+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+U9+$0+%0+&0+*0+=0+-0+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+-0+;0+>0+,0+'0+)0+-0+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+!0+~0+{0+]0+^0+77+/0+(0+!0+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+A5+S7+V7+_0+pd !~ D! H) D! H) D! H) !~ #{ C^+:0+O|+<0+A5+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+[0+}0+|0+10+20+30+'9+40+W7+W7+W7+50+60+70+k +80+90+00+a0+b0+50+W7+", +"A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5++0+c0+N9+d0+e0+f0+g0+g0+h0+i0+j0+39+m3+W7+A5+A5+A5+A5+A5+W7+A5+W7+o* X& m* [& [& H; H; }> u* K> k0+62+W7+W7+A5+A5+A5+l0+m0+n0+o0+p0+q0+r0+s0+ 0+t0+.0++0+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5++0++0+u0+S8+v0+#0++0+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+-0+w0+x0+y0+z0+A0+t0+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+-0+.0+c0+B0+C0+c9+.0+-0+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+-0+D0+E0+F0+G0+H0+-~+I0+l0+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5++0+A5+<0+J0+K0+:] H) D! H) D! H) D! H) 1g E' H) L0+8<+<0+A5++0+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+A5+y9+-0+*8+M0+N0+O0+P0+Q0+[0+A5+A5+-0+R0+S0+T0+U0+V0+W0+X0+Y0+y9++0+", +"W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+28+Z0+`0+ a+.a+#s #s +a+#s @a+#a+n5+I8+W7+W7+W7+W7+W7+W7+I8+38+$a+:; [& [& H; H; }> u* u* f& %a+&a+38+W7+*a+W7+=a+-a+;a+>a+,a+'a+54+)a+!a+=a+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+*a+W7+I8+~a+{a+]a+*a+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+*a+;0+^a+/a+(a+_a+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+W7+*a+:a+ H; }> u* u* f& f& a$ va+wa+38+W7+xa+ya+za+Aa+Ba+Ca+Da+Ea+(a+Fa+|a+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+_a+Ga+Ha+Ia+Ja+Ka+x9+_a+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+La+Ma+Na+Oa+Pa+Qa+_a+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+La+(a+Ra+Sa+Ta+Ua+_a+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+Va+Wa+Xa+Ya+Za+`a+!0+|a+_a+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+W7+<0+I3+ b+.b+)~ #_ D! D! H) D! D! D! k( }q +b+J0+aa+W7+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+x9+@b+I8+R0+#b+$b+%b+&b+*b+=b+x9+x9+|a+Va+-b+;b+>b+,b+'b+)b+!b+50+", +"*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+a9+~b+{b+]b+^b+/b+/b+(b+/b+_b+:b+n5+Ka+*a+*a+*a+*a+*a+*a+*a+I8+I8++0+ Q& 52 wa+28+}b+za+|b+1b+2b+3b+4b+(a+5b+6b+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+7b+8b+Ia+9b+Ka+6b+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+La+0b+ab+bb+cb+db+=a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+=a+eb+fb+gb+hb+eb+=a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+Fa+ib+jb+O7+kb+lb+mb+nb+_a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+Ka+W7+38+ob+h{+D, D! !~ !~ D! H) H) #_ &a pb+L_+qb+I8+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+*a+=b+rb+ca+sb+tb+ub+vb+wb+_a+*a+*a+6b+Va+xb+yb+zb+Ab+Bb+Cb+Db+", +"Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Eb+Fb+Gb+Hb+Ib+Jb+Jb+Kb+Lb+Mb+Nb+[7+<0+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+<0++0+&3+}> u* f& f& Y= Y= [> [> Q& E* Ob+Pb+Qb+Rb+Sb+Tb+Ub+Vb+Wb+Xb+I8+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Yb+Zb+`b+9b+ c+I8+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+0b+.c++c+@c+#c+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Xb+$c+%c+&c+*c+=c+Xb+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Xb+-c+;c+>c+,c+'c+)c+!c+Xb+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+<0+<0+7a+~c+yr D, D! !~ D! D! !~ D! k( pd {c+w6+I8+<0+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+#c+]c+^c+/c+(c+_c+:c+ Y= Y= Y= [> Q& Q& B* dc+ec+fc+gc+hc+ic+jc+kc+lc+mc+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+#c+nc+Zb+oc+9b+<0+3c+#c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+ c+pc+qc+rc+sc+tc+#c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+#c+uc+vc+wc+xc+Yb+<0+#c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+#c+!c+yc+zc+Ac+Bc+Cc+Dc+Ec+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+<0+aa+8<+Fc+Tt #_ D! !~ D! D! !~ D! D, zF U]+Gc+A5+aa+I8+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+3c+Hc+Ic+Jc+Kc+Lc+Mc+Nc+Oc+Hc+3c+3c+3c+3c+Pc+Qc+Rc+Sc+1c+Tc+", +"Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Eb+Uc+Vc+v0 Wc+Xc+Xc+Yc+Zc+`c+ d+.d+qb+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+qb++d+@d+#d+[> [> Q& Q& B* dc+$d+%d+&d+*d+=d+-d+;d+>d+,d+'d+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+)d+3c+!d+`b+9b+qb+'d+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+ c+~d+{d+rc+]d+^d+/d+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+Ka+ c+'d+(d+_d+:d+e+,e+'e+)e+!e+~e+{e+]e+^e+Ka+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+qb+/e+xd+(e+_e+ad+aa+zd+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+aa+:e+f+,f+=f+qb+ad+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+te+:e+'f+)f+!f+= ~f+{f+]f+^f+Oc+6e+te+:e+te+te+'f+zd+ad+/f+", +"ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+ad+(f+_f+:f+xe+g+%g+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+%g+,g+'g+)g+!g+&g+Rf+%g+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+Gc+~g+{g+]g+^g+/g+(g+_g+:g+h+,h+'h+)h+!h+~h+{h+>h+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+]h+^h+/h+(h+_h+:h+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+]h+h+Oh+Ph+Qh+Rh+Sh+]h+=f+=f+=f+=f+=f+=f+=f+=f+=f+Nh+Th+Uh+Vh+Wh+Sh+Nh+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+:h+Xh+Yh+Zh+`h+ i+.i++i+@i+]h+=f+=f+6d+=f+#i+-f+$i+N&+EC (, D, k( k( !~ !~ k( !~ k( #{ i.+%i+*a+#i+6d+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+&i+*i+=i+-i+;i+>i+,i+&i+]h+=f+=f+=f+=f+", +"6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+=f+Tg+'i+)i+<'+!i+~i+~i+{i+]i+^i+/i+(i+=f+6d+6d+6d+6d+kh+:h+]h+_i+:i+h+6d+6d+6d+6d+6d+6d+6d+6d+6d+]h+ni+oi+pi+qi+ri+si+:h+]h+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+th+ti+ui+vi+Gg+wi+xi+yi+th+=f+6d+#i+ad+0d+zi+L{ !~ (, k( D, D, k( k( !~ !~ /' E' H) Ai+9h+Bi+6d+=f+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+6d+:h+kh+Ci+Di+Ei+Fi+Gi+Hi+Ii+ch+:h+6d+6d+6d+", +"=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+si+Ji+Ki+]i+Li+Mi+Mi+Ni+Oi+Pi+Qi+Ri+#i+=f+=f+=f+=f+=f+Si+Ti+Ui+Vi+Wi+Xi+Yi+Zi+`i+ j+.j++j+@j+#j+$j+de+Bh+%j+&j+`f+q$ S& S& M& $& $& n* G* z* *j+wr.Bh+de+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+Si+=j+-j+;j+>j+,j+'j+)j+ug+$j+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+=f+Si+Sh+!j+~j+Bg+{j+4i+=f+=f+=f+=f+=f+=f+=f+=f+]j+^j+/j+(j+_j+:j+k+,k+{j+de+de+", +"4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+4i+#i+'k+)k+!k+mj+~k+{k+{k+]k+^k+/k+oj+Ri+(k+4i+4i+4i+Si+Ti+Vi+_k+T. :k+:k+:k+T. l+,l+'l+=l+)l+L{ (, <) /' (, (, /' D, D, D, 3| L{ k( !l+0d+#i+5j+#i+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+(k+~l+{l+]l+^l+/l+(l+_l+:l+(k+(k+", +"8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+8h+m+,m+Wk+Bi+Bi+Bi+Bi+Bi+Bi+Bi+'m+)m+!m+~m+{m+]m+^m+/m+Wk+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Bi+Mk+(m+_m+:m+n+,n+'n+)n+!n+~n+{n+]n+^n+/n+2g+tm+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+5j+Sl+Sl+(n+#m+m% y* m% 7! m% T= T= h{ T= h{ l- *j+*j+_n+5j+*m+5j+5j+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+xm+ym+:n+Am+Bm+xm+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+)m++(, (, <) ~~ :`.dn+en+fn+tm+=n+Sl+5j+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+Sl+gn+hn+in+jn+kn+ln+mn+nn+", +"=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+on+pn+qn+rn+sn+&n+&n+tn+un+vn+wn+Dj+=n+=n+=n+gn+xn+yn+zn+An+Bn+Cn+Dn+En+Fn+Gn+Hn+In+Jn+2g+5m+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+Kn+fl+Ln+y* 7! m% T= T= T= T= h{ h{ z* O& G* Mn+Nn+On+Sl+Sl+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+Cm+Pn+Qn+Rn+Sn+Bm+Pn+Kn+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+Cm+Tn+Un+;m+Vn+o+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+.k+=n+,o+'o+)o+!o+~o+", +"5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+5j+bh+{o+]o+^o+/o+(o+un+un+_o+:o++o+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+tm+tm+%p+wm+2s 2k+T= W= T= h{ h{ z* G* G* G* n* n* n* Ok+$& 43+=n+=n+tm+tm+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+%p+&p+*p+=p+-p+;p+%p+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+=n+>p+,p+'p+)p+!p+~p+>p+=n+=n+=n+=n+=n+=n+=n+}o+eo+{p+]p+^p+/p+,p+>p+=n+=n+=n+=n+=n+=n+tm+>o+5m+(p+Rl+_p+{c+Ro o+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+%p+%p+d +T= #m+h{ l- z* G* G* G* G* n* n* $& Z= M& wp+GB xp+Kn+tm+5m+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+5m+%p+yp+zp+Ap+Bp+Cp+%p+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+tm+eo+Dp+Ep+Fp+Gp+Hp+eo+5m+tm+tm+tm+tm+tm+tm+tm+Ip+,p+Jp+Kp+Lp+,p+eo+5m+tm+5m+tm+5m+>o+5m+Mp+Sl+en+Np+Uk.,o./, y; q+,q+'q+)q+!q+~q+{q+]q+]q+^q+/q+(q+(k+6j+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+6j+6j+5m+Bo+um+Cj+Cj+z* z* G* n* n* $& $& $& $& M& M& wp+q$ _q+5m+%p+6j+6j+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+5m+:q+o+sq+tq+uq+vq+wq+xq+yq+zq+Ro+Aq+Bq+Cq+Cq+Bq+Aq+4i+>o+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+6j+|q+|q+Dq+l- *j+G* <& G* n* n* $& M& M& S& S& S& q$ `f+Eq+Fq+%p+5m+>o+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+Gq+o+(p+=n+Wq+ah+Uk.~~ Xq+v- /, F' y; y; y; Yq+Zq+`q+ r+.r++r+@r+#r+$r+%r+5m+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+|q+&r+gq+*r+=r+", +"6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+>o+-r+;r+>r+,r+'r+qq+qq+)r+!r+~r+{r+*m+]r+^r+/r+(r+_r+:r+o+>o+>o+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+>o+1q+:q+o+>o+6j+6j+6j+6j+6j+6j+6j+1q+9r+0r+ar+br+cr+gp+(p+=n+dr+X/+^j.o+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+6j+>o+Om+", +"Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+mr+nr+or+pr+qr+!r+!r+rr+T0.sr+tr+Kn+%r+ur+vr+wr+wq+xr+yr+kr+zr+Ar+3m+Vq+Vq+Vq+Vq+3m+>o+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+>o+Br+Cr+Dr+Er+el+$& $& M& S& S& q$ q$ q$ |% |% |% L! R& 45+>o+|q+>o+Vq+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+-q+Br+Fr+Gr+Hr+Ir+Jr+Br+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Kr+Lr+Mr+Nr+Or+Pr+]r+Xp+Xp+Xp+Xp+Xp+Xp+Xp+lr+Qr+Rr+Sr+Tr+Yh+Ur+Vr+Wr+LX *~._, DI.J= v- /, /, /, /, F' y; *~.F' N' Xr+Yr+Zr+`r+ s+.s+Om+Xp+-q+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+Xp+-q+Xp+", +">o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+Br+mr+nr++s+@s+#s+$s+$s+%s+&s+*s+tr+=s+kr+-s+;s+>s+,s+'s+)s+!s+]r+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+Xp+Xp+Br+Br+~s+8$ Ok+Z= M& S& S& S& q$ |% |% #* #* #* h- G_ {s+]s+3m+|q+|q+Br+Vq+Vq+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+Br+Br+^s+/s+(s+_s+:s+Uq+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+lr+o+>o+>o+>o+>o+>o+>o+]r+2s+3s+4s+5s+6s+7s+j).wu f= ow.*- J= v- v- v- v- /, F' /, /, /, Uk.Ro 8s+9s+0s+as+bs+cs+ds+es+]r+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+>o+-q+", +"Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+fs+gs+hs+Q1.is+js+js+ks+,9.ls+ms+ns+os+ps+qs+>s+ET rs+ss+%r+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Br+3m+,(.-h+-h+S& D* q$ |% |% |% |% #* #* h- h- G_ ts+k- uR.:0+Br+|q+>o+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+]r+^s+/s+us+vs+ws+xs+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+]r+^s+ys+6r+zs+As+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Bs+>o+Cs+Ds+Es+Fs+Gs+Hs+Is+vr._, *- J= J= J= J= v- /, /, v- v- fs ,o.-o+Js+Ks+Ls+Ms+Ns+Os+Ps+jr+Qs+%r+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+", +"Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Ss+Ts+Us+Vs+Ws+Xs+Xs+Ys+Zs+`s+ t+.t++t+@t+#t+$t+%t+&t+Vq+*t+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+=t+=t+-t+;t+U{ S& q$ q$ |% #* #* h- h- h- o$ k- W& >t+g} g} ,t+'t+:0+Br+)t+Vq+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+*t+=t+!t+~t+us+{t+]t+^t+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+/t+(t+Mr+_t+:t+ z1 B* rt+$(+st+|q+Br+Vq+Rs+Rs+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+=t+=t+tt+~t+ut+{t+vt+Kr+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+%r+wt+xt+yt+zt+wt+/t+[t+[t+|q+Dj+At+Bt+c +Ct+Dt+Et+Ft+Gt+Ht+_, It+*- _, *- J= J= *- *- LX fs Jt+8t+5m+Dj+Rs+[t+Vq+*t+es+Kt+Lt+Mt+Nt+Ot+Pt+*t+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+Vq+", +"Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Qt+Rt+St+95.Tt+X8.X8.Ut+,d.Vt+Wt+Xt+Yt+Zt+`t+ u+.u++u+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+xs+:0+@u+`f+#* #* h- h- o$ o$ o$ W& 2$ k% P, l% l% J> B* #u+52 :$ j[+$u+[t+)t+Br+Rs+%u+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+*t+!t+~t+&u+*u+S9+=u+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+Rs+/t+-u+;u+>u+,u+'u+Uq+)u+!u+At+u9+Z9.#:.f= ~u+{u+]u+^u+/u+(u+_u+:u+_, *- *- _, _, j).^j.Wr+8t+|q+Ro+%u+ B* Q& Q& [> f& hu+%a+iu+ju+ku+Rs+Br+Rs+[t+[t+[t+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+gu+%u+lu+mu+&u+nu+ou+/t+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+[t+[t+pu+qu+ru+su+tu+uu+vu+wu+xu+~>.^; w- s~ R* R* w- yu+zu+Au+Bu+Cu+7t+_, f= f= *~.LX a/+8t+>o+Ro+[t+pu+[t+Bs+Bs+Bs+Bs+gu+Du+Eu+Fu+Gu+Hu+Iu+Ju+Ku+gu+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+Bs+", +"%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+Lu+3u+Mu+Nu+Ou+Pu+Pu+Qu+jb.Ru+Su+Tu+Uu+Vu+Wu+Xu+Yu+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+[t+%u+=u+Zu+`u+L! o$ Y% o$ W& 2$ k% P, l% l% J> B* Q& [> Y= N= f& u* H; v+j% .v++v+@v+=t+Br+Rs+[t+[t+[t+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+lu+#v+=p+$v+%v+&v+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+%u+[t+[t+pu+pu+Rs+%p+*v+=v+-v+;v+>v+,v+'v+)v+!v+R* S* Q* R* R* w- ~v+{v+]v+^v+/v+(v+S,+f= *~.j)._v+:v+Br+*v+[t+pu+[t+%u+%u+%u+%u+%u+%u+%u+ B* Q& Q& [> Y= f& u* }> 2= H; [& ua+kv+x* lv+mv+Ds+xs+=t+t+&w+P, P, l% J> B* Q& [> Y= Y= f& u* }> H; [& j% j% :; @* I; j6+%% w+,w+'w+!* uh.)8.)w+!w+L<+~w+{w+]w+^w+/w+!J Q* R* Q* R* R* (w+_w+:w+ Y= f& u* }> }> H; [& j% :; X& @* @* W* y- ow+ow+T6 pw+qw+rw+sw+Kv+%u+xs+xs+xs+=u+%u+ &x+#u+[> Y= f& u* }> H; [& [& j% :; X& @* W* !% r* y- _; %4+*x+O, O, p* =x+Y(+-x+;x+>x+(q+,x+fv+=u+xs+xs+=t+%u+% /x+z{.x- 2& 3& |o.V& x- (x+T* _x+:x+ H; [& j% :; :; X& @* W* !% y- _; -- -- %& )% <* g% i% :1+3}+Ig Ig 3}+=& vx+wx+xx+yx+zx+(q+Ax+% =- >% 1& 3& 2& V& V& x- x- T* ^> Jx+Kx+Lx+Mx+Nx+Ox+E> J2.S* s~ p4.Y9.Px+Qx+Rx+Sx+Tx+Ux+Vx+Wx+Xx+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Xx+Yx+Zx+`x+ y+.y++y+@y+#y+Xx+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+", +"$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+fx+%y+&y+*y+=y+ x+ x+-y+;y+>y+,y+'y+)y+{x+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+tv+tv+fv+!y+fv+;o++v+Ut %a+[b+[& [& j% :; X& @* W* W* !% y- _; -- %& )% <* <* g% Y& Y& i% V* 5$ F* Ig ~y+i[+G; {y+(* 2% ]y+2B.^y+/y+Ai+;w+At+tv+hv+xs+xs+hv+c =- >% 1& 1& 3& 3& 2& 2& V& x- x- T* T* 0y+ay+by+cy+dy+ay+QA Q* p4.hc.Px+ey+)t+)t+fy+gy+hy+iy+jy+ky+ex+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+{x+ly+my+ny+oy+py+qy+ry+ex+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+$y+", +"Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+tv+sy+ty+uy+vy+wy+xy+xy+yy+zy+Ay+By+Cy+Dy+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+tv+tv+tv+fv+!y+tv+wf+Ey+V= v+ua+:; x* @* W* !% y- y- _; -- %& )% <* <* g% Y& i% V* 5$ 5$ F* e& e& :* }& `8 _* f% /* +* Fy+Gy+S^+t{+Hy+Iy+Jy+Ky+Ly+My+Iy+Iy+&Q.Ny+2, Oy+Py+Qy+Ry+Sy+Ty+e` t++Uy+0% &T.Vy+Wy+Wy+/; /; 7% /; 7% 9% 9% 7% 5% 6% =- =- >% >% 1& 3& 3& 2& 2& V& V& x- x- T* Xy+Yy+zw+Zy+`y+ z+.z++z+@z+_p+)t+Br+#z+#z+{x+$z+%z+&z+*z+=z+-z+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+-z+;z+>z+Ov+,z+'z+)z+!z+~z+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+Kv+", +"Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+{z+]z+^z+/z+(z+_z+_z+:z+% >% 1& 1& 3& 2& 2& 2& =; =; Tk.!* cz+dz+ez+fz+gz+hz+iz+jz+xs+xs+Ax+Ax+Bx+Bx+~z+kz+lz+mz+nz+tv+Bx+8x+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Dy+oz+pz+`x+ y+qz+rz+sz+fy+Dy+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+Bx+", +"tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tz+{z+]z+uz+vz+wz+xz+xz+yz+vz+zz+Az+hv+#z+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tz+#z+#z+tv+!y+$y+Bz+Cz+Dz+!% /8+_; Ez+_; $4+%& )% <* g% Y& i% i% V* 5$ F* F* e& :* }& )* )* _* f% (* /* /* ^* +* ]* d& d& c& >; a& e% 0& 9& 8& 7& 7& Fz+Gz+Hz+Iz+Jz+Kz+bz+~* ~* c% b% 4& 4& U* a% 4% 4% 8% 9% 9% 7% 5% 5% 6% 6% =- >% >% 1& 1& 1& 1& 3& V& z{.cz+Q9.Kf.Lz+Mz+Nz+Oz+Pz+Qz+Rz+$y+Sz+Ax+tz+tv+tv+tv+Dy+Tz+Uz+Vz+Wz+Xz+oz+Dy+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tz+Dy+Yz+Zz+`z+ A+.A++A+@A+~z+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+tv+", +"#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#A+$A+%A+&A+*A+=A+-A+;A+&A+>A+,A+hv+Ax+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+Ax+Ax+tv+!y+tv+(q+D^+T6 ow+^b )% )% )% <* r~ h% Y& i% V* 5$ F* e& e& :* }& )* _* _* f% (* /* ^* ^* +* ]* d& c& c& a& e% 0& 9& 9& 8& 7& 3% 'A+)A+Hz+Iz+Jz+Kz+N, !A+~* c% b% 4& 4& U* a% 4% 4% 8% 9% 9% 7% 5% 5% 6% 6% =- =- =- =- 3& Rz.d^.z{.Kf.~A+U7+{A+]A+% Lz+kA+lA+mA+tv+xs+=u+tv+Sz+_y+nA+oA+pA+qA+rA+oA+sA+Sz+Sz+Sz+Sz+Sz+Sz+tA+uA+vA+wA+xA+uA+tA+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+tA+yA+zA+AA+BA+CA+DA+EA+FA+tA+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+", +"#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+GA+HA+IA+JA+KA+LA+MA+NA+OA+PA+QA+$y+Sz+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+Sz+Sz+#z+$y+$y+,x+Gx+RA+SA+fA+TA+z~+h% 5$ Ig UA+~y+~y+}& }& `8 )* _* f% (* /* ^* +* +* ]* d& c& a& a& e% 0& 9& 9& 8& 7& 3% mh.VA+WA+XA+YA+ZA+N, 5& ~* c% b% b% 4& U* U* a% 4% 4% 4-.8% uL.7% =- ]y. &.6% 'y.U7+`A+ B+tv+xs+=u+fv+Sz+_y+,x+Sz+.B+#z+tA++B+@B+#B+$B+%B+tA+.B+#z+#z+#z+#z+#z+1A+uA+&B+iy+*B+=B+:A+tA+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+tA+-B+;B+>B+,B+'B+)B+3A+1A+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+#z+", +"Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+!B+FA+~B+{B+]B+^B+/B+(B+_B+_B+{s+.B+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+Sz+_y+_y+Sz+.B+tz+$y+$y+tz+Sz+:B+RA+SA+w+VB+WB+hv+hv+tv+Sz+XB+XB+_y+_y+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+YB+ZB+pA+`B+ C+ZB+lB+,x+,x+,x+,x+,x+.C+_y++C+@C+#C+$C+%C+lB+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+.C+&C+*C+AA+=C+-C+DA+;C+>C+.C+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+,x+", +"!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+nA+uA+,C+'C+)C+!C+~C+{C+]C+tB+_y+_y+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+_y+_y+_y+_y+_y+_y+_y+Sz+.B+^C+$y+$y+tz+XB+]A+/C+(C+_C+:C+; [C+>; /H.&Q.}C+|C+1C+2C+Zg+3C+4C+:o+5C+6C+7C+8j+8C+9C+0C+aC+XB+!B+_y+.B+!y+bC+hv+$y+Sz+XB+XB+_y+_y+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+nA+cC+dC+#B+eC+fC+.C+!B+!B+!B+!B+!B+!B+YB+gC+hC+iC+jC+fC+.C+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+.C+kC+lC+>B+mC+nC+oC+pC+YB+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+!B+", +"qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+rC+sC+tC+uC+vC+wC+xC+fB+yC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+XB+XB+XB+XB+XB+_y+!B+zC+^C+^C+tz+_y+AC+BC+uv+0C+AC+CC+AC+Sz+DC+EC+FC+GC+HC+IC+JC+un+KC+LC+MC+$y+^C+.B+.B+.B+_y+qC+_y+qC+XB+XB+NC+XB+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+OC+YB+^A+PC+QC+RC+qC+qC+qC+qC+qC+qC+SC+TC+UC+VC+WC+XC+YC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+SC+ZC+`C+oB+ D+.D++D+@D+SC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+", +"(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+#D+$D+%D+&D+*D+=D+-D+;D+$D+#D+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+XB+XB+XB+XB+WB+XB+(y+_y+.B+#z+Sz+_y+!B+_y+XB+>D+,D+'D+<'+)D+!D+~D+ei+{D+]D+^D+/D+XB+XB+XB+XB+XB+XB+XB+XB+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+(y+SC+(D+_D+`B+ C+(D+SC+(y+(y+(y+(y+(y+yC+:D+D+&C+9D+0D+aD+bD+cD+dD+eD+qC+yC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+XB+XB+NC+NC+NC+XB+XB+XB+qC+>D+8D+fD+gD+hD+iD+jD+kD+lD+mD+nD+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+>D+oD+pD+qD+rD+YC+>D+qC+qC+qC+qC+qC+qC+>D+RC+sD+#C+tD+uD+vD+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+>D+wD+xD+yD+zD+nC+AD+ZC+vD+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+qC+", +"XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+NC+XB+^D+BD+CD+DD+bD+ED+FD+GD+HD+^D+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+nD+]D+ID+JD+KD+LD+MD+ND+>D+NC+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+NC+OD+SC+PD+QD+RD+SD+NC+XB+XB+XB+XB+XB+TD+UD+VD+WD+XD+yC+XB+NC+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+TD+YD+ZD+Ov+`D+ E+.E++E+@E+NC+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+XB+", +"#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+$E+TC+%E+&E+*E+!C+=E+-E+uD+^D+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+nD+;E+>E+,E+'E+)E+!E+~E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+#E+^D+{E+_D+]E+^E+/E+^D+#E+#E+#E+#E+#E+@E+(E+_E+:E+F+,F+'F+)F+!F+>F+;F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F++F+yE+~F+{F+]F+^F+~F+yE++F++F++F++F++F+yE+/F+(F+_F+:F+F+eF+)F+fF+gF+>F+;F+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+@F+hF+iF+jF+kF+lF+@F+mF+7E+7E+7E+7E+@F+nF+oF+pF+qF+rF+sF+@F+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+@F+@F+tF+uF+vF+WD wF+xF+WE+yE+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+7E+", +"yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+zF+AF+BF+CF+DF+EF+FF+GF+HF+zF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+IF+fp+JF+KF+LF+MF+fp+IF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+NF+yE+NE+OF+PF+QF+yF+yF+yF+yF+yF+yF+-F+RF+SF+TF+UF+VF+zF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+WF+XF+YF+oB+ZF+`F+ G+}F+.G+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+yF+", +"+G++G++G++G++G++G++G++G++G++G++G+@G+-F+#G+$G+%G+&G+*G+=G+-G+nF+@G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G+;G+>G+,G+JE+'G+)G+!G+IF++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G+zF+~G+{G+]G+^G+~G+zF++G++G++G++G++G+@G+/G+(G+UE+_G+:G+@G+@G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G++G+@G+